Bug#963338: sagemath: FTBFS: RuntimeError: Aborted

Lucas Nussbaum lucas at debian.org
Sun Jun 21 21:06:16 BST 2020


Source: sagemath
Version: 9.0-4
Severity: serious
Justification: FTBFS on amd64
Tags: bullseye sid ftbfs
Usertags: ftbfs-20200620 ftbfs-bullseye

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

Relevant part (hopefully):
> make[3]: Entering directory '/<<PKGBUILDDIR>>'
> cd sage && ./sage -t -p 4 --logfile=logs/ptestlong-arch.log --optional=sage,python3,memlimit --long src/sage; cd "/<<PKGBUILDDIR>>" && if debian/rules -s LOGFILE=sage/logs/ptestlong-arch.log MAX_TEST_FAILURES=200 had-few-failures; then :; else debian/rules -s LOGFILE=sage/logs/ptestlong-arch.log MAX_TEST_FAILURES=200 had-not-too-many-failures && mv sage/logs/ptestlong-arch.log sage/logs/ptestlong-arch.log.1 && { cd sage && ./sage -t -p 4 --logfile=logs/ptestlong-arch.log --optional=sage,python3,memlimit --long src/sage -p 1 -f; cd "/<<PKGBUILDDIR>>" && debian/rules -s LOGFILE=sage/logs/ptestlong-arch.log MAX_TEST_FAILURES=200 had-few-failures; }; fi
> no stored timings available
> Running doctests with ID 2020-06-21-07-54-49-8731e125.
> Using --optional=memlimit,python3,sage
> Sorting sources by runtime so that slower doctests are run first....
> Doctesting 3244 files using 4 threads.
> sage -t --long src/sage/__init__.py
>     [11 tests, 0.01 s]
> sage -t --long src/sage/algebras/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/algebra.py
>     [3 tests, 0.02 s]
> sage -t --long src/sage/algebras/catalog.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/associated_graded.py
>     [46 tests, 0.14 s]
> sage -t --long src/sage/algebras/cellular_basis.py
>     [51 tests, 0.58 s]
> sage -t --long src/sage/algebras/affine_nil_temperley_lieb.py
>     [53 tests, 1.11 s]
> sage -t --long src/sage/algebras/clifford_algebra.py
>     [533 tests, 1.25 s]
> sage -t --long src/sage/algebras/finite_dimensional_algebras/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/finite_dimensional_algebras/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra.py
>     [162 tests, 0.53 s]
> sage -t --long src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_element.pyx
>     [98 tests, 0.16 s]
> sage -t --long src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_ideal.py
>     [36 tests, 0.08 s]
> sage -t --long src/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_morphism.py
>     [56 tests, 0.10 s]
> sage -t --long src/sage/algebras/askey_wilson.py
>     [157 tests, 5.20 s]
> sage -t --long src/sage/algebras/free_algebra_element.py
>     [42 tests, 0.12 s]
> sage -t --long src/sage/algebras/free_algebra_quotient.py
>     [74 tests, 0.15 s]
> sage -t --long src/sage/algebras/free_algebra_quotient_element.py
>     [39 tests, 0.13 s]
> sage -t --long src/sage/algebras/free_zinbiel_algebra.py
>     [118 tests, 0.37 s]
> sage -t --long src/sage/algebras/free_algebra.py
>     [320 tests, 3.36 s]
> sage -t --long src/sage/algebras/group_algebra.py
>     [38 tests, 0.65 s]
> sage -t --long src/sage/algebras/hall_algebra.py
>     [184 tests, 2.15 s]
> sage -t --long src/sage/algebras/jordan_algebra.py
>     [242 tests, 0.42 s]
> sage -t --long src/sage/algebras/letterplace/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/letterplace/free_algebra_element_letterplace.pyx
>     [119 tests, 0.39 s]
> sage -t --long src/sage/algebras/letterplace/free_algebra_element_letterplace.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/letterplace/free_algebra_letterplace.pyx
>     [134 tests, 0.44 s]
> sage -t --long src/sage/algebras/letterplace/free_algebra_letterplace.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/letterplace/letterplace_ideal.pyx
>     [54 tests, 1.16 s]
> sage -t --long src/sage/algebras/lie_algebras/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/lie_algebras/abelian.py
>     [25 tests, 0.11 s]
> sage -t --long src/sage/algebras/cluster_algebra.py
>     [432 tests, 10.66 s]
> sage -t --long src/sage/algebras/lie_algebras/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/lie_algebras/bch.py
>     [31 tests, 0.36 s]
> sage -t --long src/sage/algebras/lie_algebras/affine_lie_algebra.py
>     [78 tests, 0.73 s]
> sage -t --long src/sage/algebras/lie_algebras/examples.py
>     [100 tests, 0.66 s]
> sage -t --long src/sage/algebras/lie_algebras/free_lie_algebra.py
>     [141 tests, 0.60 s]
> sage -t --long src/sage/algebras/lie_algebras/heisenberg.py
>     [119 tests, 0.43 s]
> sage -t --long src/sage/algebras/iwahori_hecke_algebra.py
>     [660 tests, 8.06 s]
> sage -t --long src/sage/algebras/lie_algebras/lie_algebra.py
>     [269 tests, 1.14 s]
> sage -t --long src/sage/algebras/lie_algebras/lie_algebra_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/lie_algebras/lie_algebra_element.pyx
>     [447 tests, 1.39 s]
> sage -t --long src/sage/algebras/lie_algebras/morphism.py
>     [145 tests, 2.06 s]
> sage -t --long src/sage/algebras/commutative_dga.py
>     [616 tests, 17.08 s]
> sage -t --long src/sage/algebras/lie_algebras/poincare_birkhoff_witt.py
>     [119 tests, 0.86 s]
> sage -t --long src/sage/algebras/lie_algebras/onsager.py
>     [148 tests, 1.95 s]
> sage -t --long src/sage/algebras/lie_algebras/rank_two_heisenberg_virasoro.py
>     [56 tests, 0.33 s]
> sage -t --long src/sage/algebras/lie_algebras/quotient.py
>     [96 tests, 2.26 s]
> sage -t --long src/sage/algebras/lie_algebras/structure_coefficients.py
>     [52 tests, 1.79 s]
> sage -t --long src/sage/algebras/lie_algebras/verma_module.py
>     [369 tests, 4.39 s]
> sage -t --long src/sage/algebras/lie_algebras/subalgebra.py
>     [213 tests, 4.82 s]
> sage -t --long src/sage/algebras/lie_algebras/virasoro.py
>     [181 tests, 2.07 s]
> sage -t --long src/sage/algebras/orlik_solomon.py
>     [101 tests, 0.46 s]
> sage -t --long src/sage/algebras/nil_coxeter_algebra.py
>     [31 tests, 3.23 s]
> sage -t --long src/sage/algebras/q_system.py
>     [95 tests, 0.19 s]
> sage -t --long src/sage/algebras/quantum_groups/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/quantum_groups/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/lie_algebras/nilpotent_lie_algebra.py
>     [89 tests, 15.14 s]
> sage -t --long src/sage/algebras/quantum_groups/q_numbers.py
>     [23 tests, 0.03 s]
> sage -t --long src/sage/algebras/quantum_groups/quantum_group_gap.py
>     [8 tests, 0.02 s]
> sage -t --long src/sage/algebras/orlik_terao.py
>     [128 tests, 3.58 s]
> sage -t --long src/sage/algebras/quantum_groups/representations.py
>     [149 tests, 1.68 s]
> sage -t --long src/sage/algebras/quatalg/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/quatalg/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/quantum_groups/fock_space.py
>     [450 tests, 8.41 s]
> sage -t --long src/sage/algebras/quatalg/quaternion_algebra_cython.pyx
>     [10 tests, 0.03 s]
> sage -t --long src/sage/algebras/quantum_matrix_coordinate_algebra.py
>     [158 tests, 6.69 s]
> sage -t --long src/sage/algebras/quatalg/quaternion_algebra_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/quaternion_algebra.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/algebras/quaternion_algebra_element.py
>     [15 tests, 1.55 s]
> sage -t --long src/sage/algebras/quatalg/quaternion_algebra_element.pyx
>     [286 tests, 2.28 s]
> sage -t --long src/sage/algebras/schur_algebra.py
>     [73 tests, 1.61 s]
> sage -t --long src/sage/algebras/quatalg/quaternion_algebra.py
>     [392 tests, 9.44 s]
> sage -t --long src/sage/algebras/steenrod/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/steenrod/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/shuffle_algebra.py
>     [190 tests, 3.39 s]
> sage -t --long src/sage/algebras/rational_cherednik_algebra.py
>     [42 tests, 7.06 s]
> sage -t --long src/sage/algebras/steenrod/steenrod_algebra_misc.py
>     [100 tests, 0.05 s]
> sage -t --long src/sage/algebras/steenrod/steenrod_algebra_mult.py
>     [52 tests, 0.40 s]
> sage -t --long src/sage/algebras/tensor_algebra.py
>     [152 tests, 0.71 s]
> sage -t --long src/sage/algebras/weyl_algebra.py
>     [196 tests, 0.49 s]
> sage -t --long src/sage/algebras/steenrod/steenrod_algebra_bases.py
>     [88 tests, 8.82 s]
> sage -t --long src/sage/algebras/yokonuma_hecke_algebra.py
>     [63 tests, 0.86 s]
> sage -t --long src/sage/all.py
>     [15 tests, 0.91 s]
> sage -t --long src/sage/all_cmdline.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/all_notebook.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/constants.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/functions.pyx
>     [43 tests, 0.04 s]
> sage -t --long src/sage/arith/functions.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/algebras/yangian.py
>     [185 tests, 9.56 s]
> sage -t --long src/sage/arith/long.pxd
>     [24 tests, 3.69 s]
> sage -t --long src/sage/arith/multi_modular.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/multi_modular.pyx
>     [126 tests, 0.15 s]
> sage -t --long src/sage/arith/numerical_approx.pyx
>     [4 tests, 0.01 s]
> sage -t --long src/sage/arith/numerical_approx.pxd
>     [5 tests, 0.01 s]
> sage -t --long src/sage/arith/power.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/power.pyx
>     [16 tests, 0.02 s]
> sage -t --long src/sage/arith/rational_reconstruction.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/rational_reconstruction.pyx
>     [2 tests, 1.51 s]
> sage -t --long src/sage/arith/srange.pyx
>     [77 tests, 0.13 s]
> sage -t --long src/sage/calculus/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/calculus/all.py
>     [21 tests, 0.06 s]
> sage -t --long src/sage/algebras/lie_algebras/classical_lie_algebra.py
>     [210 tests, 62.18 s]
> sage -t --long src/sage/calculus/calculus.py
>     [418 tests, 16.06 s]
> sage -t --long src/sage/calculus/desolvers.py
>     [233 tests, 10.21 s]
> sage -t --long src/sage/calculus/functions.py
>     [15 tests, 1.36 s]
> sage -t --long src/sage/calculus/integration.pyx
>     [50 tests, 2.61 s]
> sage -t --long src/sage/calculus/interpolation.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/calculus/interpolation.pyx
>     [67 tests, 0.34 s]
> sage -t --long src/sage/algebras/steenrod/steenrod_algebra.py
>     [707 tests, 47.52 s]
> sage -t --long src/sage/calculus/interpolators.pyx
>     [52 tests, 2.69 s]
> sage -t --long src/sage/calculus/ode.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/calculus/predefined.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/arith/misc.py
>     [1056 tests, 33.98 s]
> sage -t --long src/sage/calculus/ode.pyx
>     [42 tests, 3.75 s]
> sage -t --long src/sage/calculus/test_sympy.py
> **********************************************************************
> File "src/sage/calculus/test_sympy.py", line 112, in sage.calculus.test_sympy
> Failed example:
>     f = e.series(x, 0, 10); f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.calculus.test_sympy[41]>", line 1, in <module>
>         f = e.series(x, Integer(0), Integer(10)); f
>       File "/usr/lib/python3/dist-packages/sympy/core/expr.py", line 2871, in series
>         rv = self.subs(x, xpos).series(xpos, x0, n, dir, logx=logx)
>       File "/usr/lib/python3/dist-packages/sympy/core/expr.py", line 2878, in series
>         s1 = self._eval_nseries(x, n=n, logx=logx)
>       File "/usr/lib/python3/dist-packages/sympy/core/power.py", line 1525, in _eval_nseries
>         denominator = (b**(-e))._eval_nseries(x, n=nuse, logx=logx)
>       File "/usr/lib/python3/dist-packages/sympy/core/power.py", line 1444, in _eval_nseries
>         return expand_multinomial(self.func(b._eval_nseries(x, n=n,
>       File "/usr/lib/python3/dist-packages/sympy/core/function.py", line 726, in _eval_nseries
>         nterms = (n/cf).ceiling()
>       File "sage/structure/element.pyx", line 487, in sage.structure.element.Element.__getattr__ (build/cythonized/sage/structure/element.c:4607)
>         return self.getattr_from_category(name)
>       File "sage/structure/element.pyx", line 500, in sage.structure.element.Element.getattr_from_category (build/cythonized/sage/structure/element.c:4716)
>         return getattr_from_other_class(self, cls, name)
>       File "sage/cpython/getattr.pyx", line 394, in sage.cpython.getattr.getattr_from_other_class (build/cythonized/sage/cpython/getattr.c:2613)
>         raise AttributeError(dummy_error_message)
>     AttributeError: 'sage.rings.rational.Rational' object has no attribute 'ceiling'
> **********************************************************************
> File "src/sage/calculus/test_sympy.py", line 126, in sage.calculus.test_sympy
> Failed example:
>     pprint(f)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.calculus.test_sympy[45]>", line 1, in <module>
>         pprint(f)
>     NameError: name 'f' is not defined
> **********************************************************************
> File "src/sage/calculus/test_sympy.py", line 140, in sage.calculus.test_sympy
> Failed example:
>     f._sage_()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.calculus.test_sympy[49]>", line 1, in <module>
>         f._sage_()
>     NameError: name 'f' is not defined
> **********************************************************************
> 1 item had failures:
>    3 of  79 in sage.calculus.test_sympy
>     [78 tests, 3 failures, 2.28 s]
> sage -t --long src/sage/calculus/transforms/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/calculus/transforms/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/calculus/transforms/dft.py
>     [125 tests, 0.54 s]
> sage -t --long src/sage/calculus/functional.py
>     [112 tests, 21.88 s]
> sage -t --long src/sage/calculus/transforms/dwt.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/calculus/transforms/fft.pyx
>     [87 tests, 8.91 s]
> sage -t --long src/sage/calculus/transforms/fft.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/calculus/var.pyx
>     [98 tests, 1.45 s]
> sage -t --long src/sage/calculus/wester.py
>     [202 tests, 2.63 s]
> sage -t --long src/sage/categories/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/action.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/action.pyx
>     [92 tests, 0.71 s]
> sage -t --long src/sage/categories/additive_groups.py
>     [9 tests, 0.01 s]
> sage -t --long src/sage/categories/additive_magmas.py
>     [160 tests, 0.55 s]
> sage -t --long src/sage/categories/additive_monoids.py
>     [16 tests, 0.03 s]
> sage -t --long src/sage/categories/additive_semigroups.py
>     [28 tests, 0.04 s]
> sage -t --long src/sage/categories/affine_weyl_groups.py
>     [30 tests, 0.32 s]
> sage -t --long src/sage/categories/algebra_functor.py
>     [167 tests, 2.39 s]
> sage -t --long src/sage/categories/algebra_ideals.py
>     [8 tests, 0.04 s]
> sage -t --long src/sage/categories/algebra_modules.py
>     [9 tests, 0.04 s]
> sage -t --long src/sage/categories/algebras.py
>     [28 tests, 0.32 s]
> sage -t --long src/sage/categories/algebras_with_basis.py
>     [60 tests, 0.45 s]
> sage -t --long src/sage/categories/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/aperiodic_semigroups.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/categories/associative_algebras.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/categories/basic.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/bialgebras.py
>     [5 tests, 0.02 s]
> sage -t --long src/sage/categories/bialgebras_with_basis.py
>     [72 tests, 0.69 s]
> sage -t --long src/sage/categories/bimodules.py
>     [15 tests, 0.02 s]
> sage -t --long src/sage/categories/cartesian_product.py
>     [39 tests, 0.05 s]
> sage -t --long src/sage/categories/category.py
>     [436 tests, 4.24 s]
> sage -t --long src/sage/categories/category_cy_helper.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/category_cy_helper.pyx
>     [27 tests, 0.03 s]
> sage -t --long src/sage/categories/category_singleton.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/category_singleton.pyx
>     [59 tests, 0.03 s]
> sage -t --long src/sage/categories/category_types.py
>     [97 tests, 0.41 s]
> sage -t --long src/sage/categories/category_with_axiom.py
>     [327 tests, 0.40 s]
> sage -t --long src/sage/categories/classical_crystals.py
>     [75 tests, 1.45 s]
> sage -t --long src/sage/categories/coalgebras.py
>     [70 tests, 0.72 s]
> sage -t --long src/sage/categories/coalgebras_with_basis.py
>     [31 tests, 0.59 s]
> sage -t --long src/sage/categories/coercion_methods.pyx
>     [6 tests, 0.01 s]
> sage -t --long src/sage/categories/commutative_additive_groups.py
>     [21 tests, 0.26 s]
> sage -t --long src/sage/categories/commutative_additive_monoids.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/categories/commutative_additive_semigroups.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/categories/commutative_algebra_ideals.py
>     [9 tests, 0.04 s]
> sage -t --long src/sage/categories/commutative_algebras.py
>     [9 tests, 0.05 s]
> sage -t --long src/sage/calculus/tests.py
>     [82 tests, 35.34 s]
> sage -t --long src/sage/categories/commutative_ring_ideals.py
>     [7 tests, 0.02 s]
> sage -t --long src/sage/categories/complete_discrete_valuation.py
>     [61 tests, 0.07 s]
> sage -t --long src/sage/categories/complex_reflection_groups.py
>     [16 tests, 0.06 s]
> sage -t --long src/sage/calculus/transforms/dwt.pyx
>     [20 tests, 33.81 s]
> sage -t --long src/sage/categories/covariant_functorial_construction.py
>     [61 tests, 0.10 s]
> sage -t --long src/sage/categories/commutative_rings.py
>     [36 tests, 0.51 s]
> sage -t --long src/sage/categories/complex_reflection_or_generalized_coxeter_groups.py
>     [164 tests, 0.83 s]
> sage -t --long src/sage/categories/coxeter_group_algebras.py
>     [39 tests, 0.90 s]
> sage -t --long src/sage/categories/cw_complexes.py
>     [36 tests, 0.03 s]
> sage -t --long src/sage/categories/discrete_valuation.py
>     [31 tests, 0.08 s]
> sage -t --long src/sage/categories/distributive_magmas_and_additive_magmas.py
>     [13 tests, 0.02 s]
> sage -t --long src/sage/categories/division_rings.py
>     [11 tests, 0.02 s]
> sage -t --long src/sage/categories/domains.py
>     [13 tests, 0.02 s]
> sage -t --long src/sage/categories/dual.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/categories/enumerated_sets.py
>     [147 tests, 0.16 s]
> sage -t --long src/sage/categories/euclidean_domains.py
>     [22 tests, 0.04 s]
> sage -t --long src/sage/categories/crystals.py
>     [499 tests, 0.85 s]
> sage -t --long src/sage/categories/examples/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/examples/commutative_additive_monoids.py
>     [14 tests, 0.02 s]
> sage -t --long src/sage/categories/examples/algebras_with_basis.py
>     [13 tests, 0.06 s]
> sage -t --long src/sage/categories/examples/coxeter_groups.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/examples/commutative_additive_semigroups.py
>     [28 tests, 0.03 s]
> sage -t --long src/sage/categories/examples/cw_complexes.py
>     [33 tests, 0.03 s]
> sage -t --long src/sage/categories/examples/crystals.py
>     [27 tests, 0.05 s]
> sage -t --long src/sage/categories/examples/facade_sets.py
>     [21 tests, 0.03 s]
> sage -t --long src/sage/categories/examples/filtered_algebras_with_basis.py
>     [25 tests, 0.09 s]
> sage -t --long src/sage/categories/examples/filtered_modules_with_basis.py
>     [16 tests, 0.04 s]
> sage -t --long src/sage/categories/examples/finite_dimensional_algebras_with_basis.py
>     [17 tests, 0.07 s]
> sage -t --long src/sage/categories/examples/finite_coxeter_groups.py
>     [36 tests, 0.08 s]
> sage -t --long src/sage/categories/examples/finite_enumerated_sets.py
>     [29 tests, 0.06 s]
> sage -t --long src/sage/categories/examples/finite_monoids.py
>     [15 tests, 0.05 s]
> sage -t --long src/sage/categories/examples/finite_dimensional_lie_algebras_with_basis.py
>     [79 tests, 0.36 s]
> sage -t --long src/sage/categories/examples/finite_semigroups.py
>     [27 tests, 0.26 s]
> sage -t --long src/sage/categories/examples/finite_weyl_groups.py
>     [25 tests, 0.52 s]
> sage -t --long src/sage/categories/examples/graded_modules_with_basis.py
>     [18 tests, 0.04 s]
> sage -t --long src/sage/categories/examples/graphs.py
>     [24 tests, 0.02 s]
> sage -t --long src/sage/categories/examples/graded_connected_hopf_algebras_with_basis.py
>     [14 tests, 0.68 s]
> sage -t --long src/sage/categories/examples/infinite_enumerated_sets.py
>     [35 tests, 0.08 s]
> sage -t --long src/sage/categories/examples/hopf_algebras_with_basis.py
>     [23 tests, 0.34 s]
> sage -t --long src/sage/categories/examples/lie_algebras_with_basis.py
>     [28 tests, 0.06 s]
> sage -t --long src/sage/categories/examples/manifolds.py
>     [15 tests, 0.02 s]
> sage -t --long src/sage/categories/examples/lie_algebras.py
>     [68 tests, 0.31 s]
> sage -t --long src/sage/categories/examples/monoids.py
>     [16 tests, 0.03 s]
> sage -t --long src/sage/categories/examples/posets.py
>     [29 tests, 0.04 s]
> sage -t --long src/sage/categories/examples/semigroups_cython.pyx
>     [47 tests, 0.03 s]
> sage -t --long src/sage/categories/examples/semigroups.py
>     [83 tests, 0.18 s]
> sage -t --long src/sage/categories/examples/sets_cat.py
>     [155 tests, 0.10 s]
> sage -t --long src/sage/categories/examples/sets_with_grading.py
>     [14 tests, 0.03 s]
> sage -t --long src/sage/categories/facade_sets.py
>     [27 tests, 0.03 s]
> sage -t --long src/sage/categories/examples/with_realizations.py
>     [90 tests, 1.04 s]
> sage -t --long src/sage/categories/filtered_algebras.py
>     [5 tests, 0.06 s]
> sage -t --long src/sage/categories/fields.py
>     [135 tests, 1.48 s]
> sage -t --long src/sage/categories/filtered_algebras_with_basis.py
>     [112 tests, 0.48 s]
> sage -t --long src/sage/categories/filtered_modules.py
>     [18 tests, 0.05 s]
> sage -t --long src/sage/categories/filtered_hopf_algebras_with_basis.py
>     [17 tests, 0.17 s]
> sage -t --long src/sage/categories/filtered_modules_with_basis.py
>     [214 tests, 0.55 s]
> sage -t --long src/sage/categories/finite_complex_reflection_groups.py
>     [133 tests, 1.50 s]
> sage -t --long src/sage/categories/finite_crystals.py
>     [10 tests, 0.06 s]
> sage -t --long src/sage/categories/coxeter_groups.py
>     [472 tests, 9.41 s]
> sage -t --long src/sage/categories/finite_dimensional_bialgebras_with_basis.py
>     [4 tests, 0.04 s]
> sage -t --long src/sage/categories/finite_dimensional_coalgebras_with_basis.py
>     [4 tests, 0.02 s]
> sage -t --long src/sage/categories/finite_dimensional_graded_lie_algebras_with_basis.py
>     [37 tests, 0.42 s]
> sage -t --long src/sage/categories/finite_dimensional_hopf_algebras_with_basis.py
>     [3 tests, 0.05 s]
> sage -t --long src/sage/categories/finite_coxeter_groups.py
>     [151 tests, 6.06 s]
> sage -t --long src/sage/categories/finite_dimensional_modules_with_basis.py
>     [113 tests, 0.51 s]
> sage -t --long src/sage/categories/finite_dimensional_algebras_with_basis.py
>     [209 tests, 6.07 s]
> sage -t --long src/sage/categories/finite_dimensional_lie_algebras_with_basis.py
>     [208 tests, 3.98 s]
> sage -t --long src/sage/categories/finite_enumerated_sets.py
>     [127 tests, 0.14 s]
> sage -t --long src/sage/categories/finite_fields.py
>     [14 tests, 0.21 s]
> sage -t --long src/sage/categories/finite_dimensional_semisimple_algebras_with_basis.py
>     [24 tests, 1.04 s]
> sage -t --long src/sage/categories/finite_lattice_posets.py
>     [34 tests, 0.08 s]
> sage -t --long src/sage/categories/finite_dimensional_nilpotent_lie_algebras_with_basis.py
>     [33 tests, 1.94 s]
> sage -t --long src/sage/categories/finite_groups.py
>     [39 tests, 0.80 s]
> sage -t --long src/sage/categories/finite_permutation_groups.py
>     [44 tests, 0.72 s]
> sage -t --long src/sage/categories/finite_semigroups.py
>     [14 tests, 0.03 s]
> sage -t --long src/sage/categories/finite_sets.py
>     [14 tests, 0.04 s]
> sage -t --long src/sage/categories/finite_weyl_groups.py
>     [6 tests, 0.06 s]
> sage -t --long src/sage/categories/finitely_generated_magmas.py
>     [6 tests, 0.02 s]
> sage -t --long src/sage/categories/finitely_generated_semigroups.py
>     [27 tests, 0.03 s]
> sage -t --long src/sage/categories/function_fields.py
>     [11 tests, 0.10 s]
> sage -t --long src/sage/categories/functor.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/functor.pyx
>     [137 tests, 0.32 s]
> sage -t --long src/sage/categories/g_sets.py
>     [7 tests, 0.03 s]
> sage -t --long src/sage/categories/gcd_domains.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/categories/generalized_coxeter_groups.py
>     [12 tests, 0.02 s]
> sage -t --long src/sage/categories/graded_algebras.py
>     [8 tests, 0.31 s]
> sage -t --long src/sage/categories/finite_posets.py
>     [329 tests, 1.79 s]
> sage -t --long src/sage/categories/graded_bialgebras.py
>     [3 tests, 0.04 s]
> sage -t --long src/sage/categories/graded_bialgebras_with_basis.py
>     [3 tests, 0.09 s]
> sage -t --long src/sage/categories/graded_coalgebras.py
>     [6 tests, 0.03 s]
> sage -t --long src/sage/categories/graded_coalgebras_with_basis.py
>     [6 tests, 0.04 s]
> sage -t --long src/sage/categories/graded_hopf_algebras.py
>     [3 tests, 0.04 s]
> sage -t --long src/sage/categories/graded_algebras_with_basis.py
>     [27 tests, 0.49 s]
> sage -t --long src/sage/categories/graded_lie_algebras.py
>     [12 tests, 0.03 s]
> sage -t --long src/sage/categories/graded_lie_algebras_with_basis.py
>     [5 tests, 0.03 s]
> sage -t --long src/sage/categories/graded_modules.py
>     [16 tests, 0.06 s]
> sage -t --long src/sage/categories/graded_hopf_algebras_with_basis.py
>     [17 tests, 0.35 s]
> sage -t --long src/sage/categories/graphs.py
>     [20 tests, 0.02 s]
> sage -t --long src/sage/categories/graded_modules_with_basis.py
>     [18 tests, 0.13 s]
> sage -t --long src/sage/categories/groupoid.py
>     [9 tests, 0.25 s]
> sage -t --long src/sage/categories/group_algebras.py
>     [61 tests, 0.67 s]
> sage -t --long src/sage/categories/h_trivial_semigroups.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/categories/hecke_modules.py
>     [20 tests, 0.07 s]
> sage -t --long src/sage/categories/groups.py
>     [92 tests, 0.65 s]
> sage -t --long src/sage/categories/homset.py
> **********************************************************************
> File "src/sage/categories/homset.py", line 597, in sage.categories.homset.Homset.__init__
> Failed example:
>     TestSuite(H).run()
> Expected nothing
> Got:
>       Failure in _test_pickling:
>       Traceback (most recent call last):
>         File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>           test_method(tester=tester)
>         File "sage/structure/sage_object.pyx", line 630, in sage.structure.sage_object.SageObject._test_pickling (build/cythonized/sage/structure/sage_object.c:4824)
>           tester.assertEqual(loads(dumps(self)), self)
>         File "/usr/lib/python3.8/unittest/case.py", line 912, in assertEqual
>           assertion_func(first, second, msg=msg)
>         File "/usr/lib/python3.8/unittest/case.py", line 905, in _baseAssertEqual
>           raise self.failureException(msg)
>       AssertionError: Generic morphism:
>         From: X
>         To:   Y != Generic morphism:
>         From: X
>         To:   Y
>       ------------------------------------------------------------
>       The following tests failed: _test_pickling
>     Failure in _test_elements
>     The following tests failed: _test_elements
> **********************************************************************
> File "src/sage/categories/homset.py", line 606, in sage.categories.homset.Homset.__init__
> Failed example:
>     TestSuite(H).run()
> Expected nothing
> Got:
>       Failure in _test_pickling:
>       Traceback (most recent call last):
>         File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>           test_method(tester=tester)
>         File "sage/structure/sage_object.pyx", line 630, in sage.structure.sage_object.SageObject._test_pickling (build/cythonized/sage/structure/sage_object.c:4824)
>           tester.assertEqual(loads(dumps(self)), self)
>         File "/usr/lib/python3.8/unittest/case.py", line 912, in assertEqual
>           assertion_func(first, second, msg=msg)
>         File "/usr/lib/python3.8/unittest/case.py", line 905, in _baseAssertEqual
>           raise self.failureException(msg)
>       AssertionError: Generic morphism:
>         From: X
>         To:   Y != Generic morphism:
>         From: X
>         To:   Y
>       ------------------------------------------------------------
>       The following tests failed: _test_pickling
>     Failure in _test_elements
>     The following tests failed: _test_elements
> **********************************************************************
> File "src/sage/categories/homset.py", line 1252, in sage.categories.homset.HomsetWithBase.__init__
> Failed example:
>     TestSuite(H).run()
> Expected nothing
> Got:
>       Failure in _test_pickling:
>       Traceback (most recent call last):
>         File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>           test_method(tester=tester)
>         File "sage/structure/sage_object.pyx", line 630, in sage.structure.sage_object.SageObject._test_pickling (build/cythonized/sage/structure/sage_object.c:4824)
>           tester.assertEqual(loads(dumps(self)), self)
>         File "/usr/lib/python3.8/unittest/case.py", line 912, in assertEqual
>           assertion_func(first, second, msg=msg)
>         File "/usr/lib/python3.8/unittest/case.py", line 905, in _baseAssertEqual
>           raise self.failureException(msg)
>       AssertionError: Generic morphism:
>         From: X
>         To:   Y != Generic morphism:
>         From: X
>         To:   Y
>       ------------------------------------------------------------
>       The following tests failed: _test_pickling
>     Failure in _test_elements
>     The following tests failed: _test_elements
> **********************************************************************
> 2 items had failures:
>    2 of  22 in sage.categories.homset.Homset.__init__
>    1 of   9 in sage.categories.homset.HomsetWithBase.__init__
>     [272 tests, 3 failures, 1.38 s]
> sage -t --long src/sage/categories/homsets.py
>     [56 tests, 0.05 s]
> sage -t --long src/sage/categories/hopf_algebras.py
>     [23 tests, 1.00 s]
> sage -t --long src/sage/categories/highest_weight_crystals.py
>     [172 tests, 3.41 s]
> sage -t --long src/sage/categories/infinite_enumerated_sets.py
>     [11 tests, 0.01 s]
> sage -t --long src/sage/categories/hopf_algebras_with_basis.py
>     [43 tests, 0.73 s]
> sage -t --long src/sage/categories/isomorphic_objects.py
>     [2 tests, 0.02 s]
> sage -t --long src/sage/categories/j_trivial_semigroups.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/categories/integral_domains.py
>     [19 tests, 0.23 s]
> sage -t --long src/sage/categories/l_trivial_semigroups.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/categories/lattice_posets.py
>     [10 tests, 0.02 s]
> sage -t --long src/sage/categories/left_modules.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/categories/kac_moody_algebras.py
>     [9 tests, 0.51 s]
> sage -t --long src/sage/categories/lie_algebras_with_basis.py
>     [31 tests, 0.61 s]
> sage -t --long src/sage/categories/lie_groups.py
>     [9 tests, 0.02 s]
> sage -t --long src/sage/categories/lie_algebras.py
>     [154 tests, 2.23 s]
> sage -t --long src/sage/categories/magmas.py
>     [172 tests, 0.84 s]
> sage -t --long src/sage/categories/magmas_and_additive_magmas.py
>     [21 tests, 0.02 s]
> sage -t --long src/sage/categories/magmatic_algebras.py
>     [38 tests, 0.41 s]
> sage -t --long src/sage/categories/manifolds.py
>     [55 tests, 0.05 s]
> sage -t --long src/sage/categories/map.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/map.pyx
>     [421 tests, 2.89 s]
> sage -t --long src/sage/categories/matrix_algebras.py
>     [3 tests, 0.02 s]
> sage -t --long src/sage/categories/metric_spaces.py
>     [41 tests, 0.09 s]
> sage -t --long src/sage/categories/modular_abelian_varieties.py
>     [8 tests, 0.02 s]
> sage -t --long src/sage/categories/modules.py
>     [104 tests, 0.68 s]
> sage -t --long src/sage/categories/finite_monoids.py
>     [52 tests, 16.78 s]
> sage -t --long src/sage/categories/monoid_algebras.py
>     [4 tests, 0.04 s]
> sage -t --long src/sage/calculus/riemann.pyx
>     [174 tests, 71.20 s]
> sage -t --long src/sage/categories/morphism.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/morphism.pyx
>     [121 tests, 0.33 s]
> sage -t --long src/sage/categories/monoids.py
>     [77 tests, 0.56 s]
> sage -t --long src/sage/categories/number_fields.py
>     [21 tests, 0.06 s]
> sage -t --long src/sage/categories/partially_ordered_monoids.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/categories/objects.py
>     [12 tests, 0.03 s]
> sage -t --long src/sage/categories/pointed_sets.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/categories/permutation_groups.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/categories/polyhedra.py
>     [8 tests, 0.03 s]
> sage -t --long src/sage/categories/poor_man_map.py
>     [56 tests, 0.02 s]
> sage -t --long src/sage/categories/modules_with_basis.py
>     [510 tests, 1.95 s]
> sage -t --long src/sage/categories/posets.py
>     [145 tests, 0.45 s]
> sage -t --long src/sage/categories/loop_crystals.py
>     [225 tests, 9.25 s]
> sage -t --long src/sage/categories/principal_ideal_domains.py
>     [18 tests, 0.80 s]
> sage -t --long src/sage/categories/quantum_group_representations.py
>     [108 tests, 0.62 s]
> sage -t --long src/sage/categories/quotients.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/categories/r_trivial_semigroups.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/categories/realizations.py
>     [27 tests, 0.38 s]
> sage -t --long src/sage/categories/regular_crystals.py
>     [127 tests, 0.39 s]
> sage -t --long src/sage/categories/primer.py
>     [181 tests, 2.83 s]
> sage -t --long src/sage/categories/right_modules.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/categories/ring_ideals.py
>     [9 tests, 0.02 s]
> sage -t --long src/sage/categories/quotient_fields.py
>     [158 tests, 1.95 s]
> sage -t --long src/sage/categories/rngs.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/categories/schemes.py
>     [23 tests, 0.02 s]
> sage -t --long src/sage/categories/regular_supercrystals.py
>     [87 tests, 2.21 s]
> sage -t --long src/sage/categories/semirings.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/categories/semisimple_algebras.py
>     [15 tests, 0.56 s]
> sage -t --long src/sage/categories/sets_cat.py
>     [454 tests, 1.46 s]
> sage -t --long src/sage/categories/sets_with_grading.py
>     [22 tests, 0.03 s]
> sage -t --long src/sage/categories/sets_with_partial_maps.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/categories/shephard_groups.py
>     [5 tests, 0.02 s]
> sage -t --long src/sage/categories/signed_tensor.py
>     [10 tests, 0.13 s]
> sage -t --long src/sage/categories/rings.py
>     [171 tests, 4.37 s]
> sage -t --long src/sage/categories/simplicial_complexes.py
>     [11 tests, 0.01 s]
> sage -t --long src/sage/categories/subobjects.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/categories/subquotients.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/super_algebras.py
>     [12 tests, 0.13 s]
> sage -t --long src/sage/categories/semigroups.py
>     [133 tests, 4.32 s]
> sage -t --long src/sage/categories/super_algebras_with_basis.py
>     [8 tests, 0.11 s]
> sage -t --long src/sage/categories/super_modules.py
>     [33 tests, 0.12 s]
> sage -t --long src/sage/categories/super_modules_with_basis.py
>     [42 tests, 0.13 s]
> sage -t --long src/sage/categories/supercommutative_algebras.py
>     [8 tests, 0.29 s]
> sage -t --long src/sage/categories/simplicial_sets.py
>     [120 tests, 1.06 s]
> sage -t --long src/sage/categories/tensor.py
>     [9 tests, 0.02 s]
> sage -t --long src/sage/categories/topological_spaces.py
>     [12 tests, 0.02 s]
> sage -t --long src/sage/categories/tutorial.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/categories/unique_factorization_domains.py
>     [42 tests, 0.27 s]
> sage -t --long src/sage/categories/unital_algebras.py
>     [42 tests, 0.05 s]
> sage -t --long src/sage/categories/triangular_kac_moody_algebras.py
>     [34 tests, 0.56 s]
> sage -t --long src/sage/categories/vector_spaces.py
>     [32 tests, 0.13 s]
> sage -t --long src/sage/categories/vector_bundles.py
>     [28 tests, 0.34 s]
> sage -t --long src/sage/categories/with_realizations.py
>     [32 tests, 0.41 s]
> sage -t --long src/sage/coding/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/coding/abstract_code.py
>     [136 tests, 0.37 s]
> sage -t --long src/sage/coding/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/pushout.py
>     [876 tests, 11.52 s]
> sage -t --long src/sage/coding/binary_code.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/categories/weyl_groups.py
>     [120 tests, 5.25 s]
> sage -t --long src/sage/coding/bounds_catalog.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/coding/channel.py
>     [116 tests, 0.10 s]
> sage -t --long src/sage/coding/channels_catalog.py
>     [1 test, 0.00 s]
> sage -t --long src/sage/coding/bch_code.py
>     [86 tests, 5.25 s]
> sage -t --long src/sage/coding/code_bounds.py
>     [50 tests, 1.97 s]
> sage -t --long src/sage/coding/codecan/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/coding/code_constructions.py
>     [142 tests, 3.08 s]
> sage -t --long src/sage/coding/codecan/codecan.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/coding/codecan/autgroup_can_label.pyx
>     [82 tests, 2.62 s]
> sage -t --long src/sage/coding/codes_catalog.py
>     [1 test, 0.02 s]
> sage -t --long src/sage/coding/codecan/codecan.pyx
>     [71 tests, 1.32 s]
> sage -t --long src/sage/coding/cyclic_code.py
>     [278 tests, 0.68 s]
> sage -t --long src/sage/coding/decoder.py
>     [62 tests, 0.15 s]
> sage -t --long src/sage/coding/decoders_catalog.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/coding/binary_code.pyx
>     [368 tests, 9.33 s]
> sage -t --long src/sage/coding/encoder.py
>     [72 tests, 0.14 s]
> sage -t --long src/sage/coding/encoders_catalog.py
>     [1 test, 0.00 s]
> sage -t --long src/sage/coding/databases.py
>     [5 tests, 1.84 s]
> sage -t --long src/sage/coding/extended_code.py
>     [90 tests, 0.44 s]
> sage -t --long src/sage/coding/golay_code.py
>     [48 tests, 0.36 s]
> sage -t --long src/sage/coding/delsarte_bounds.py
>     [34 tests, 1.87 s]
> sage -t --long src/sage/coding/guava.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/coding/guruswami_sudan/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/coding/guruswami_sudan/gs_decoder.py
>     [136 tests, 0.43 s]
> sage -t --long src/sage/coding/guruswami_sudan/interpolation.py
>     [47 tests, 0.11 s]
> sage -t --long src/sage/coding/guruswami_sudan/utils.py
>     [19 tests, 0.05 s]
> sage -t --long src/sage/coding/hamming_code.py
>     [18 tests, 0.08 s]
> sage -t --long src/sage/coding/goppa_code.py
>     [115 tests, 1.24 s]
> sage -t --long src/sage/coding/information_set_decoder.py
>     [173 tests, 0.56 s]
> sage -t --long src/sage/coding/parity_check_code.py
>     [48 tests, 0.08 s]
> sage -t --long src/sage/coding/punctured_code.py
>     [111 tests, 0.41 s]
> sage -t --long src/sage/coding/grs_code.py
>     [527 tests, 2.27 s]
> sage -t --long src/sage/coding/reed_muller_code.py
>     [168 tests, 0.41 s]
> sage -t --long src/sage/coding/relative_finite_field_extension.py
>     [125 tests, 0.36 s]
> sage -t --long src/sage/coding/source_coding/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/coding/source_coding/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/coding/self_dual_codes.py
>     [26 tests, 0.13 s]
> sage -t --long src/sage/coding/subfield_subcode.py
>     [65 tests, 0.42 s]
> sage -t --long src/sage/coding/source_coding/huffman.py
>     [64 tests, 0.63 s]
> sage -t --long src/sage/combinat/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/abstract_tree.py
>     [418 tests, 0.24 s]
> sage -t --long src/sage/coding/two_weight_db.py
>     [2 tests, 1.26 s]
> sage -t --long src/sage/combinat/algebraic_combinatorics.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/alternating_sign_matrix.py
>     [313 tests, 1.42 s]
> sage -t --long src/sage/combinat/affine_permutation.py
>     [343 tests, 2.32 s]
> sage -t --long src/sage/combinat/baxter_permutations.py
>     [34 tests, 0.13 s]
> sage -t --long src/sage/categories/super_hopf_algebras_with_basis.py
>     [11 tests, 24.69 s]
> sage -t --long src/sage/combinat/binary_tree.py
>     [739 tests, 4.89 s]
> sage -t --long src/sage/combinat/cartesian_product.py
>     [77 tests, 0.08 s]
> sage -t --long src/sage/combinat/catalog_partitions.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/chas/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/chas/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/chas/fsym.py
>     [228 tests, 6.36 s]
> sage -t --long src/sage/combinat/binary_recurrence_sequences.py
>     [97 tests, 32.37 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/cluster_seed.py
> **********************************************************************
> File "src/sage/combinat/cluster_algebra_quiver/cluster_seed.py", line 1065, in sage.combinat.cluster_algebra_quiver.cluster_seed.ClusterSeed.interact
> Failed example:
>     S.interact()
> Expected:
>     VBox(children=...
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.cluster_algebra_quiver.cluster_seed.ClusterSeed.interact[1]>", line 1, in <module>
>         S.interact()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/combinat/cluster_algebra_quiver/cluster_seed.py", line 1068, in interact
>         return cluster_interact(self, fig_size, circular, kind='seed')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/combinat/cluster_algebra_quiver/interact.py", line 47, in cluster_interact
>         mut_buttons = widgets.ToggleButtons(options=list(range(self._n)),
>       File "/usr/lib/python3/dist-packages/ipywidgets/widgets/widget_selection.py", line 91, in __init__
>         super(_Selection, self).__init__(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/ipywidgets/widgets/widget.py", line 200, in __init__
>         super(Widget, self).__init__(**kwargs)
>       File "/usr/lib/python3/dist-packages/traitlets/config/configurable.py", line 73, in __init__
>         super(Configurable, self).__init__(**kwargs)
>       File "/usr/lib/python3/dist-packages/traitlets/traitlets.py", line 1008, in __init__
>         warn(
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: Passing unrecoginized arguments to super(ToggleButtons).__init__(style={'button_width': 'initial'}).
>     object.__init__() takes exactly one argument (the instance to initialize)
>     This is deprecated in traitlets 4.2.This error will be raised in a future release of traitlets.
>     VBox(children=(Dropdown(value='circular', options=['circular', 'spring'], description='Display style:'), HBox(children=(Checkbox(value=True, description='Display mutation sequence'), Checkbox(value=True, description='Display cluster variables'))), HBox(children=(Checkbox(value=True, description='Display B-matrix'), Checkbox(value=True, description='Show last mutation vertex'))), ToggleButtons(value=0, options=[0, 1, 2, 3], description='Mutate at: '), Output()))
> **********************************************************************
> 1 item had failures:
>    1 of   3 in sage.combinat.cluster_algebra_quiver.cluster_seed.ClusterSeed.interact
>     [664 tests, 1 failure, 95.63 s]
> sage -t --long src/sage/combinat/backtrack.py
>     [209 tests, 41.89 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/interact.py
> **********************************************************************
> File "src/sage/combinat/cluster_algebra_quiver/interact.py", line 29, in sage.combinat.cluster_algebra_quiver.interact.cluster_interact
> Failed example:
>     S.interact()   # indirect doctest
> Expected:
>     VBox(children=...
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.cluster_algebra_quiver.interact.cluster_interact[1]>", line 1, in <module>
>         S.interact()   # indirect doctest
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/combinat/cluster_algebra_quiver/cluster_seed.py", line 1068, in interact
>         return cluster_interact(self, fig_size, circular, kind='seed')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/combinat/cluster_algebra_quiver/interact.py", line 47, in cluster_interact
>         mut_buttons = widgets.ToggleButtons(options=list(range(self._n)),
>       File "/usr/lib/python3/dist-packages/ipywidgets/widgets/widget_selection.py", line 91, in __init__
>         super(_Selection, self).__init__(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/ipywidgets/widgets/widget.py", line 200, in __init__
>         super(Widget, self).__init__(**kwargs)
>       File "/usr/lib/python3/dist-packages/traitlets/config/configurable.py", line 73, in __init__
>         super(Configurable, self).__init__(**kwargs)
>       File "/usr/lib/python3/dist-packages/traitlets/traitlets.py", line 1008, in __init__
>         warn(
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: Passing unrecoginized arguments to super(ToggleButtons).__init__(style={'button_width': 'initial'}).
>     object.__init__() takes exactly one argument (the instance to initialize)
>     This is deprecated in traitlets 4.2.This error will be raised in a future release of traitlets.
>     VBox(children=(Dropdown(value='circular', options=['circular', 'spring'], description='Display style:'), HBox(children=(Checkbox(value=True, description='Display mutation sequence'), Checkbox(value=True, description='Display cluster variables'))), HBox(children=(Checkbox(value=True, description='Display B-matrix'), Checkbox(value=True, description='Show last mutation vertex'))), ToggleButtons(value=0, options=[0, 1, 2, 3], description='Mutate at: '), Output()))
> **********************************************************************
> 1 item had failures:
>    1 of   3 in sage.combinat.cluster_algebra_quiver.interact.cluster_interact
>     [2 tests, 1 failure, 0.07 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/mutation_class.py
>     [66 tests, 0.06 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/mutation_type.py
>     [72 tests, 1.98 s]
> sage -t --long src/sage/combinat/chas/wqsym.py
>     [407 tests, 51.91 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py
> **********************************************************************
> File "src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py", line 2170, in sage.combinat.cluster_algebra_quiver.quiver_mutation_type._construct_exceptional_mutation_classes
> Failed example:
>     for mut_class in sorted(rank_3_exceptional.keys(), key=str): # long time
>       print("{} {}".format(mut_class, rank_3_exceptional[mut_class]))
> Expected:
>     ('G', 2, -1) [('BH?', (((1, 2), (1, -3)),)),
>     ('BGO', (((2, 1), (3, -1)),)), ('BW?', (((0, 1), (3, -1)),)),
>     ('BP?', (((0, 1), (1, -3)),)),
>     ('BP_', (((0, 1), (1, -3)), ((2, 0), (3, -1)))),
>     ('BP_', (((0, 1), (3, -1)), ((1, 2), (1, -3)), ((2, 0), (2, -2))))]
>     ('G', 2, 1) [('BH?', (((1, 2), (3, -1)),)),
>     ('BGO', (((2, 1), (1, -3)),)), ('BW?', (((0, 1), (1, -3)),)),
>     ('BP?', (((0, 1), (3, -1)),)),
>     ('BKO', (((1, 0), (3, -1)), ((2, 1), (1, -3)))),
>     ('BP_', (((0, 1), (2, -2)), ((1, 2), (1, -3)), ((2, 0), (3, -1))))]
> Got:
>     ('G', 2, -1) [('BH?', (((1, 2), (1, -3)),)), ('BGO', (((2, 1), (3, -1)),)), ('BW?', (((0, 1), (3, -1)),)), ('BP?', (((0, 1), (1, -3)),)), ('BP_', (((0, 1), (1, -3)), ((2, 0), (3, -1)))), ('BP_', (((0, 1), (1, -3)), ((1, 2), (2, -2)), ((2, 0), (3, -1))))]
>     ('G', 2, 1) [('BH?', (((1, 2), (3, -1)),)), ('BGO', (((2, 1), (1, -3)),)), ('BW?', (((0, 1), (1, -3)),)), ('BP?', (((0, 1), (3, -1)),)), ('BKO', (((1, 0), (3, -1)), ((2, 1), (1, -3)))), ('BP_', (((0, 1), (3, -1)), ((1, 2), (2, -2)), ((2, 0), (1, -3)))), ('BP_', (((0, 1), (2, -2)), ((1, 2), (1, -3)), ((2, 0), (3, -1))))]
> **********************************************************************
> 1 item had failures:
>    1 of   4 in sage.combinat.cluster_algebra_quiver.quiver_mutation_type._construct_exceptional_mutation_classes
>     [249 tests, 1 failure, 0.55 s]
> sage -t --long src/sage/combinat/cluster_complex.py
>     [40 tests, 0.67 s]
> sage -t --long src/sage/combinat/colored_permutations.py
>     [268 tests, 1.76 s]
> sage -t --long src/sage/coding/linear_code.py
>     [637 tests, 76.75 s]
> sage -t --long src/sage/combinat/combinat_cython.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/combinat.py
>     [446 tests, 2.38 s]
> sage -t --long src/sage/combinat/combination.py
>     [80 tests, 0.31 s]
> sage -t --long src/sage/combinat/combinat_cython.pyx
>     [40 tests, 1.77 s]
> sage -t --long src/sage/combinat/combinatorial_map.py
>     [75 tests, 0.07 s]
> sage -t --long src/sage/combinat/combinatorial_algebra.py
>     [43 tests, 0.47 s]
> sage -t --long src/sage/combinat/composition_signed.py
>     [20 tests, 0.02 s]
> sage -t --long src/sage/combinat/composition_tableau.py
>     [100 tests, 1.23 s]
> sage -t --long src/sage/combinat/composition.py
>     [279 tests, 4.01 s]
> sage -t --long src/sage/combinat/core.py
>     [132 tests, 0.44 s]
> sage -t --long src/sage/combinat/counting.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/crystals/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/constellation.py
>     [260 tests, 3.03 s]
> sage -t --long src/sage/combinat/crystals/affine.py
>     [239 tests, 0.36 s]
> sage -t --long src/sage/combinat/crystals/affinization.py
>     [59 tests, 0.79 s]
> sage -t --long src/sage/combinat/crystals/affine_factorization.py
>     [86 tests, 20.41 s]
> sage -t --long src/sage/combinat/crystals/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/crystals/bkk_crystals.py
>     [12 tests, 0.25 s]
> sage -t --long src/sage/combinat/crystals/catalog.py
>     [1 test, 0.05 s]
> sage -t --long src/sage/combinat/crystals/catalog_elementary_crystals.py
>     [1 test, 0.05 s]
> sage -t --long src/sage/combinat/crystals/catalog_infinity_crystals.py
>     [1 test, 0.05 s]
> sage -t --long src/sage/combinat/crystals/catalog_kirillov_reshetikhin.py
>     [1 test, 0.05 s]
> sage -t --long src/sage/combinat/crystals/crystals.py
>     [25 tests, 0.53 s]
> sage -t --long src/sage/combinat/crystals/direct_sum.py
>     [57 tests, 0.28 s]
> sage -t --long src/sage/combinat/crystals/elementary_crystals.py
>     [240 tests, 0.54 s]
> sage -t --long src/sage/combinat/crystals/fast_crystals.py
>     [78 tests, 0.52 s]
> sage -t --long src/sage/combinat/crystals/generalized_young_walls.py
>     [161 tests, 2.33 s]
> sage -t --long src/sage/combinat/crystals/highest_weight_crystals.py
>     [107 tests, 0.38 s]
> sage -t --long src/sage/combinat/crystals/induced_structure.py
>     [196 tests, 3.29 s]
> sage -t --long src/sage/combinat/crystals/infinity_crystals.py
>     [99 tests, 0.91 s]
> sage -t --long src/sage/combinat/crystals/kac_modules.py
>     [146 tests, 1.44 s]
> sage -t --long src/sage/combinat/cluster_algebra_quiver/quiver.py
> **********************************************************************
> File "src/sage/combinat/cluster_algebra_quiver/quiver.py", line 692, in sage.combinat.cluster_algebra_quiver.quiver.ClusterQuiver.interact
> Failed example:
>     S.interact()
> Expected:
>     VBox(children=...
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.cluster_algebra_quiver.quiver.ClusterQuiver.interact[1]>", line 1, in <module>
>         S.interact()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/combinat/cluster_algebra_quiver/quiver.py", line 695, in interact
>         return cluster_interact(self, fig_size, circular, kind="quiver")
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/combinat/cluster_algebra_quiver/interact.py", line 47, in cluster_interact
>         mut_buttons = widgets.ToggleButtons(options=list(range(self._n)),
>       File "/usr/lib/python3/dist-packages/ipywidgets/widgets/widget_selection.py", line 91, in __init__
>         super(_Selection, self).__init__(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/ipywidgets/widgets/widget.py", line 200, in __init__
>         super(Widget, self).__init__(**kwargs)
>       File "/usr/lib/python3/dist-packages/traitlets/config/configurable.py", line 73, in __init__
>         super(Configurable, self).__init__(**kwargs)
>       File "/usr/lib/python3/dist-packages/traitlets/traitlets.py", line 1008, in __init__
>         warn(
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: Passing unrecoginized arguments to super(ToggleButtons).__init__(style={'button_width': 'initial'}).
>     object.__init__() takes exactly one argument (the instance to initialize)
>     This is deprecated in traitlets 4.2.This error will be raised in a future release of traitlets.
>     VBox(children=(Dropdown(value='circular', options=['circular', 'spring'], description='Display style:'), HBox(children=(Checkbox(value=True, description='Display mutation sequence'),)), HBox(children=(Checkbox(value=True, description='Display B-matrix'), Checkbox(value=True, description='Show last mutation vertex'))), ToggleButtons(value=0, options=[0, 1, 2, 3], description='Mutate at: '), Output()))
> **********************************************************************
> 1 item had failures:
>    1 of   3 in sage.combinat.cluster_algebra_quiver.quiver.ClusterQuiver.interact
>     [306 tests, 1 failure, 258.52 s]
> sage -t --long src/sage/combinat/crystals/kyoto_path_model.py
>     [110 tests, 1.47 s]
> sage -t --long src/sage/combinat/crystals/kirillov_reshetikhin.py
>     [775 tests, 22.75 s]
> sage -t --long src/sage/combinat/crystals/letters.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/crystals/alcove_path.py
>     [305 tests, 57.36 s]
> sage -t --long src/sage/combinat/crystals/monomial_crystals.py
>     [258 tests, 1.69 s]
> sage -t --long src/sage/combinat/crystals/multisegments.py
>     [60 tests, 0.47 s]
> sage -t --long src/sage/combinat/crystals/letters.pyx
>     [388 tests, 13.40 s]
> sage -t --long src/sage/combinat/crystals/littelmann_path.py
>     [317 tests, 17.05 s]
> sage -t --long src/sage/combinat/crystals/pbw_datum.pyx
>     [84 tests, 0.34 s]
> sage -t --long src/sage/combinat/crystals/pbw_datum.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/crystals/mv_polytopes.py
>     [66 tests, 11.92 s]
> sage -t --long src/sage/combinat/crystals/spins.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/crystals/spins.pyx
>     [101 tests, 0.35 s]
> sage -t --long src/sage/combinat/crystals/polyhedral_realization.py
>     [50 tests, 2.65 s]
> sage -t --long src/sage/combinat/crystals/subcrystal.py
>     [75 tests, 2.37 s]
> sage -t --long src/sage/combinat/crystals/tensor_product.py
>     [178 tests, 0.85 s]
> sage -t --long src/sage/combinat/crystals/tensor_product_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/crystals/tensor_product_element.pyx
>     [290 tests, 0.52 s]
> sage -t --long src/sage/combinat/crystals/virtual_crystal.py
>     [103 tests, 0.38 s]
> sage -t --long src/sage/combinat/cyclic_sieving_phenomenon.py
>     [27 tests, 0.03 s]
> sage -t --long src/sage/combinat/debruijn_sequence.pyx
>     [28 tests, 0.04 s]
> sage -t --long src/sage/combinat/degree_sequences.pyx
>     [28 tests, 0.46 s]
> sage -t --long src/sage/combinat/derangements.py
>     [84 tests, 0.15 s]
> sage -t --long src/sage/combinat/descent_algebra.py
>     [145 tests, 2.97 s]
> sage -t --long src/sage/combinat/designs/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/designs/all.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/combinat/crystals/star_crystal.py
>     [55 tests, 11.22 s]
> sage -t --long src/sage/combinat/designs/block_design.py
>     [110 tests, 2.15 s]
> sage -t --long src/sage/combinat/designs/covering_design.py
>     [46 tests, 0.03 s]
> sage -t --long src/sage/combinat/designs/bibd.py
>     [112 tests, 5.15 s]
> sage -t --long src/sage/combinat/designs/design_catalog.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/combinat/designs/designs_pyx.pyx
>     [99 tests, 0.29 s]
> sage -t --long src/sage/combinat/designs/designs_pyx.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/crystals/pbw_crystal.py
>     [117 tests, 32.42 s]
> sage -t --long src/sage/combinat/designs/difference_matrices.py
>     [20 tests, 0.43 s]
> sage -t --long src/sage/combinat/designs/difference_family.py
>     [165 tests, 10.08 s]
> sage -t --long src/sage/combinat/designs/ext_rep.py
>     [100 tests, 0.07 s]
> sage -t --long src/sage/combinat/designs/group_divisible_designs.py
>     [30 tests, 0.06 s]
> sage -t --long src/sage/combinat/designs/evenly_distributed_sets.pyx
>     [51 tests, 2.73 s]
> sage -t --long src/sage/combinat/designs/incidence_structures.py
>     [320 tests, 1.63 s]
> sage -t --long src/sage/combinat/designs/latin_squares.py
>     [43 tests, 1.66 s]
> sage -t --long src/sage/combinat/designs/orthogonal_arrays.py
>     [187 tests, 2.72 s]
> sage -t --long src/sage/combinat/designs/database.py
>     [358 tests, 21.22 s]
> sage -t --long src/sage/combinat/designs/orthogonal_arrays_find_recursive.pyx
>     [60 tests, 5.71 s]
> sage -t --long src/sage/combinat/designs/resolvable_bibd.py
>     [22 tests, 4.04 s]
> sage -t --long src/sage/combinat/designs/subhypergraph_search.pyx
>     [12 tests, 0.04 s]
> sage -t --long src/sage/combinat/designs/twographs.py
>     [33 tests, 0.58 s]
> sage -t --long src/sage/combinat/designs/orthogonal_arrays_build_recursive.py
>     [72 tests, 12.42 s]
> sage -t --long src/sage/combinat/dlx.py
>     [65 tests, 0.03 s]
> sage -t --long src/sage/combinat/designs/steiner_quadruple_systems.py
>     [37 tests, 5.10 s]
> sage -t --long src/sage/combinat/diagram_algebras.py
>     [834 tests, 3.13 s]
> sage -t --long src/sage/combinat/enumerated_sets.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/enumeration_mod_permgroup.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/enumeration_mod_permgroup.pyx
>     [45 tests, 0.29 s]
> sage -t --long src/sage/combinat/expnums.pyx
>     [7 tests, 0.01 s]
> sage -t --long src/sage/combinat/family.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/dyck_word.py
>     [592 tests, 1.62 s]
> sage -t --long src/sage/combinat/e_one_star.py
>     [353 tests, 3.33 s]
> sage -t --long src/sage/combinat/finite_state_machine_generators.py
>     [209 tests, 1.95 s]
> sage -t --long src/sage/combinat/finite_state_machine.py
> **********************************************************************
> File "src/sage/combinat/finite_state_machine.py", line 1775, in sage.combinat.finite_state_machine.FSMState.deepcopy
> Failed example:
>     B.label == A.label
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> 1 item had failures:
>    1 of  15 in sage.combinat.finite_state_machine.FSMState.deepcopy
>     [2123 tests, 1 failure, 5.37 s]
> sage -t --long src/sage/combinat/free_module.py
>     [400 tests, 0.86 s]
> sage -t --long src/sage/combinat/free_dendriform_algebra.py
>     [167 tests, 5.60 s]
> sage -t --long src/sage/combinat/fully_packed_loop.py
>     [218 tests, 3.28 s]
> sage -t --long src/sage/combinat/gelfand_tsetlin_patterns.py
>     [196 tests, 0.72 s]
> sage -t --long src/sage/combinat/graph_path.py
>     [82 tests, 0.05 s]
> sage -t --long src/sage/combinat/gray_codes.py
>     [26 tests, 0.03 s]
> sage -t --long src/sage/combinat/free_prelie_algebra.py
>     [154 tests, 11.23 s]
> sage -t --long src/sage/combinat/growth.py
>     [614 tests, 2.23 s]
> sage -t --long src/sage/combinat/hall_polynomial.py
>     [10 tests, 0.35 s]
> sage -t --long src/sage/combinat/hillman_grassl.py
>     [98 tests, 0.06 s]
> sage -t --long src/sage/combinat/integer_list_old.py
>     [191 tests, 0.14 s]
> sage -t --long src/sage/combinat/integer_lists/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/integer_lists/base.pyx
>     [116 tests, 0.06 s]
> sage -t --long src/sage/combinat/integer_lists/base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/integer_lists/invlex.pyx
>     [304 tests, 0.25 s]
> sage -t --long src/sage/combinat/integer_lists/invlex.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/integer_lists/lists.py
>     [56 tests, 0.04 s]
> sage -t --long src/sage/combinat/integer_lists/nn.py
>     [5 tests, 0.02 s]
> sage -t --long src/sage/combinat/integer_matrices.py
>     [51 tests, 0.42 s]
> sage -t --long src/sage/combinat/integer_vector.py
>     [228 tests, 1.19 s]
> sage -t --long src/sage/combinat/grossman_larson_algebras.py
>     [119 tests, 12.15 s]
> sage -t --long src/sage/combinat/integer_vector_weighted.py
>     [61 tests, 0.66 s]
> sage -t --long src/sage/combinat/integer_vectors_mod_permgroup.py
>     [171 tests, 1.41 s]
> sage -t --long src/sage/combinat/fqsym.py
>     [339 tests, 30.75 s]
> sage -t --long src/sage/combinat/kazhdan_lusztig.py
>     [24 tests, 1.18 s]
> sage -t --long src/sage/combinat/knutson_tao_puzzles.py
>     [354 tests, 0.40 s]
> sage -t --long src/sage/combinat/lr_tableau.py
>     [50 tests, 0.10 s]
> sage -t --long src/sage/combinat/lyndon_word.py
>     [1 test, 0.00 s]
> sage -t --long src/sage/combinat/matrices/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/matrices/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/interval_posets.py
>     [581 tests, 11.43 s]
> sage -t --long src/sage/combinat/matrices/dlxcpp.py
>     [13 tests, 0.02 s]
> sage -t --long src/sage/combinat/matrices/dancing_links.pyx
>     [220 tests, 6.98 s]
> sage -t --long src/sage/combinat/matrices/latin.py
>     [365 tests, 1.56 s]
> sage -t --long src/sage/combinat/misc.py
>     [82 tests, 0.04 s]
> sage -t --long src/sage/combinat/matrices/hadamard_matrix.py
>     [109 tests, 8.83 s]
> sage -t --long src/sage/combinat/ncsf_qsym/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/ncsf_qsym/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/ncsf_qsym/combinatorics.py
>     [31 tests, 0.07 s]
> sage -t --long src/sage/combinat/k_tableau.py
>     [912 tests, 20.73 s]
> sage -t --long src/sage/combinat/multiset_partition_into_sets_ordered.py
>     [571 tests, 11.78 s]
> sage -t --long src/sage/combinat/ncsf_qsym/qsym.py
>     [636 tests, 17.43 s]
> sage -t --long src/sage/combinat/ncsf_qsym/generic_basis_code.py
>     [296 tests, 29.42 s]
> sage -t --long src/sage/combinat/ncsym/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/ncsym/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/ncsf_qsym/tutorial.py
>     [92 tests, 1.87 s]
> sage -t --long src/sage/combinat/ncsym/bases.py
>     [164 tests, 0.88 s]
> sage -t --long src/sage/combinat/ncsym/dual.py
>     [76 tests, 1.25 s]
> sage -t --long src/sage/combinat/necklace.py
>     [76 tests, 0.07 s]
> sage -t --long src/sage/combinat/non_decreasing_parking_function.py
>     [120 tests, 0.08 s]
> sage -t --long src/sage/combinat/ordered_tree.py
>     [261 tests, 1.52 s]
> sage -t --long src/sage/combinat/output.py
>     [29 tests, 0.01 s]
> sage -t --long src/sage/combinat/ncsym/ncsym.py
>     [294 tests, 3.28 s]
> sage -t --long src/sage/combinat/parking_functions.py
>     [239 tests, 1.11 s]
> sage -t --long src/sage/combinat/parallelogram_polyomino.py
>     [578 tests, 4.10 s]
> sage -t --long src/sage/combinat/partition_algebra.py
>     [308 tests, 1.06 s]
> sage -t --long src/sage/combinat/partition.py
>     [1355 tests, 17.04 s]
> sage -t --long src/sage/combinat/partition_shifting_algebras.py
>     [108 tests, 0.54 s]
> sage -t --long src/sage/combinat/partition_tuple.py
>     [367 tests, 7.68 s]
> sage -t --long src/sage/combinat/perfect_matching.py
>     [127 tests, 0.39 s]
> sage -t --long src/sage/combinat/permutation.py
>     [1133 tests, 4.49 s]
> sage -t --long src/sage/combinat/permutation_cython.pyx
>     [39 tests, 0.02 s]
> sage -t --long src/sage/combinat/permutation_cython.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/partitions.pyx
>     [38 tests, 6.58 s]
> sage -t --long src/sage/combinat/posets/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/posets/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/posets/cartesian_product.py
>     [75 tests, 0.10 s]
> sage -t --long src/sage/combinat/posets/elements.py
>     [67 tests, 0.06 s]
> sage -t --long src/sage/combinat/posets/hasse_diagram.py
> **********************************************************************
> File "src/sage/combinat/posets/hasse_diagram.py", line 2163, in sage.combinat.posets.hasse_diagram.HasseDiagram.antichains
> Failed example:
>     TestSuite(A).run()
> Expected nothing
> Got:
>     Failure in _test_pickling:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>         test_method(tester=tester)
>       File "sage/structure/sage_object.pyx", line 630, in sage.structure.sage_object.SageObject._test_pickling (build/cythonized/sage/structure/sage_object.c:4824)
>         tester.assertEqual(loads(dumps(self)), self)
>       File "/usr/lib/python3.8/unittest/case.py", line 912, in assertEqual
>         assertion_func(first, second, msg=msg)
>       File "/usr/lib/python3.8/unittest/case.py", line 905, in _baseAssertEqual
>         raise self.failureException(msg)
>     AssertionError: An enumerated set with a forest structure != An enumerated set with a forest structure
>     ------------------------------------------------------------
>     The following tests failed: _test_pickling
> **********************************************************************
> File "src/sage/combinat/posets/hasse_diagram.py", line 2170, in sage.combinat.posets.hasse_diagram.HasseDiagram.antichains
> Failed example:
>     TestSuite(A).run()
> Expected nothing
> Got:
>     Failure in _test_pickling:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>         test_method(tester=tester)
>       File "sage/structure/sage_object.pyx", line 630, in sage.structure.sage_object.SageObject._test_pickling (build/cythonized/sage/structure/sage_object.c:4824)
>         tester.assertEqual(loads(dumps(self)), self)
>       File "/usr/lib/python3.8/unittest/case.py", line 912, in assertEqual
>         assertion_func(first, second, msg=msg)
>       File "/usr/lib/python3.8/unittest/case.py", line 905, in _baseAssertEqual
>         raise self.failureException(msg)
>     AssertionError: An enumerated set with a forest structure != An enumerated set with a forest structure
>     ------------------------------------------------------------
>     The following tests failed: _test_pickling
> **********************************************************************
> 1 item had failures:
>    2 of  12 in sage.combinat.posets.hasse_diagram.HasseDiagram.antichains
>     [494 tests, 2 failures, 0.61 s]
> sage -t --long src/sage/combinat/plane_partition.py
>     [105 tests, 1.99 s]
> sage -t --long src/sage/combinat/partition_kleshchev.py
>     [321 tests, 31.25 s]
> sage -t --long src/sage/combinat/posets/linear_extensions.py
>     [150 tests, 0.36 s]
> sage -t --long src/sage/combinat/posets/lattices.py
>     [658 tests, 1.72 s]
> sage -t --long src/sage/combinat/posets/incidence_algebras.py
>     [166 tests, 2.74 s]
> sage -t --long src/sage/combinat/posets/poset_examples.py
>     [160 tests, 4.30 s]
> sage -t --long src/sage/combinat/q_analogues.py
>     [121 tests, 0.68 s]
> sage -t --long src/sage/combinat/q_bernoulli.pyx
>     [15 tests, 0.27 s]
> sage -t --long src/sage/combinat/posets/posets.py
>     [1354 tests, 7.05 s]
> sage -t --long src/sage/combinat/ranker.py
>     [48 tests, 0.03 s]
> sage -t --long src/sage/combinat/restricted_growth.py
>     [10 tests, 0.01 s]
> sage -t --long src/sage/combinat/ribbon.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/quickref.py
>     [19 tests, 2.37 s]
> sage -t --long src/sage/combinat/ribbon_tableau.py
>     [173 tests, 0.82 s]
> sage -t --long src/sage/combinat/rigged_configurations/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/rigged_configurations/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/ribbon_shaped_tableau.py
>     [49 tests, 1.11 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_abstract_class.py
>     [66 tests, 0.26 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_A.py
>     [19 tests, 0.23 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_A2_dual.py
>     [19 tests, 0.24 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_A2_even.py
>     [19 tests, 0.24 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_A2_odd.py
>     [19 tests, 0.25 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_infinity.py
>     [50 tests, 1.86 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_C.py
>     [28 tests, 0.25 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_D.py
>     [79 tests, 0.26 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_B.py
>     [41 tests, 1.45 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_D_tri.py
>     [19 tests, 0.24 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_D_twisted.py
>     [29 tests, 0.26 s]
> sage -t --long src/sage/combinat/rigged_configurations/bij_type_E67.py
>     [68 tests, 0.44 s]
> sage -t --long src/sage/combinat/rigged_configurations/bijection.py
>     [6 tests, 0.23 s]
> sage -t --long src/sage/combinat/rigged_configurations/kleber_tree.py
>     [224 tests, 0.93 s]
> sage -t --long src/sage/combinat/posets/moebius_algebra.py
>     [123 tests, 15.80 s]
> sage -t --long src/sage/combinat/rigged_configurations/rc_crystal.py
>     [84 tests, 4.47 s]
> sage -t --long src/sage/combinat/rigged_configurations/rc_infinity.py
>     [114 tests, 5.88 s]
> sage -t --long src/sage/combinat/rigged_configurations/rigged_configuration_element.py
>     [280 tests, 3.05 s]
> sage -t --long src/sage/combinat/rigged_configurations/rigged_partition.pyx
>     [82 tests, 0.25 s]
> sage -t --long src/sage/combinat/rigged_configurations/rigged_partition.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/ncsf_qsym/ncsf.py
>     [879 tests, 92.08 s]
> sage -t --long src/sage/combinat/rigged_configurations/tensor_product_kr_tableaux_element.py
>     [75 tests, 1.39 s]
> sage -t --long src/sage/combinat/root_system/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/root_system/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/root_system/ambient_space.py
>     [80 tests, 2.67 s]
> sage -t --long src/sage/combinat/root_system/associahedron.py
>     [69 tests, 3.29 s]
> sage -t --long src/sage/combinat/root_system/braid_move_calculator.py
>     [17 tests, 0.52 s]
> sage -t --long src/sage/combinat/root_system/braid_orbit.pyx
>     [5 tests, 0.01 s]
> sage -t --long src/sage/combinat/rigged_configurations/rigged_configurations.py
>     [242 tests, 19.20 s]
> sage -t --long src/sage/combinat/root_system/branching_rules.py
>     [273 tests, 9.34 s]
> sage -t --long src/sage/combinat/root_system/cartan_matrix.py
>     [156 tests, 0.64 s]
> sage -t --long src/sage/combinat/root_system/cartan_type.py
> **********************************************************************
> File "src/sage/combinat/root_system/cartan_type.py", line 3069, in sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__
> Failed example:
>     pg_unpickleModule = unpickle_global('twisted.persisted.styles', 'unpickleModule')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/persist.pyx", line 548, in sage.misc.persist.unpickle_global (build/cythonized/sage/misc/persist.c:5032)
>         __import__(module)
>     ModuleNotFoundError: No module named 'twisted'
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__[2]>", line 1, in <module>
>         pg_unpickleModule = unpickle_global('twisted.persisted.styles', 'unpickleModule')
>       File "sage/misc/persist.pyx", line 550, in sage.misc.persist.unpickle_global (build/cythonized/sage/misc/persist.c:5076)
>         error()
>       File "sage/misc/persist.pyx", line 537, in sage.misc.persist.unpickle_global.error (build/cythonized/sage/misc/persist.c:4702)
>         raise ImportError("cannot import {1} from {0}, call "
>     ImportError: cannot import unpickleModule from twisted.persisted.styles, call register_unpickle_override('twisted.persisted.styles', 'unpickleModule', ...) to fix this
> **********************************************************************
> File "src/sage/combinat/root_system/cartan_type.py", line 3072, in sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__
> Failed example:
>     unpickle_build(si1, {'tools':pg_unpickleModule('sage.combinat.root_system.type_A'), 't':['A', si2], 'letter':'A', 'n':si2})
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__[5]>", line 1, in <module>
>         unpickle_build(si1, {'tools':pg_unpickleModule('sage.combinat.root_system.type_A'), 't':['A', si2], 'letter':'A', 'n':si2})
>     NameError: name 'pg_unpickleModule' is not defined
> **********************************************************************
> File "src/sage/combinat/root_system/cartan_type.py", line 3074, in sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__
> Failed example:
>     si1
> Expected:
>     ['A', 4]
> Got:
>     <sage.combinat.root_system.cartan_type.CartanType_simple_finite object at 0x7fad9eb57b20>
> **********************************************************************
> File "src/sage/combinat/root_system/cartan_type.py", line 3076, in sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__
> Failed example:
>     si1.dynkin_diagram()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__[7]>", line 1, in <module>
>         si1.dynkin_diagram()
>     AttributeError: 'CartanType_simple_finite' object has no attribute 'dynkin_diagram'
> **********************************************************************
> 1 item had failures:
>    4 of   9 in sage.combinat.root_system.cartan_type.CartanType_simple_finite.__setstate__
>     [472 tests, 4 failures, 1.09 s]
> sage -t --long src/sage/combinat/root_system/coxeter_group.py
>     [16 tests, 0.74 s]
> sage -t --long src/sage/combinat/root_system/coxeter_type.py
>     [72 tests, 0.31 s]
> sage -t --long src/sage/combinat/root_system/coxeter_matrix.py
>     [181 tests, 0.90 s]
> sage -t --long src/sage/combinat/root_system/dynkin_diagram.py
>     [135 tests, 0.81 s]
> sage -t --long src/sage/combinat/rigged_configurations/tensor_product_kr_tableaux.py
>     [95 tests, 21.39 s]
> sage -t --long src/sage/combinat/root_system/fundamental_group.py
>     [152 tests, 0.69 s]
> sage -t --long src/sage/combinat/root_system/extended_affine_weyl_group.py
>     [408 tests, 1.89 s]
> sage -t --long src/sage/combinat/rigged_configurations/kr_tableaux.py
>     [248 tests, 35.45 s]
> sage -t --long src/sage/combinat/root_system/hecke_algebra_representation.py
>     [294 tests, 7.31 s]
> sage -t --long src/sage/combinat/root_system/pieri_factors.py
>     [227 tests, 9.94 s]
> sage -t --long src/sage/combinat/root_system/reflection_group_c.pyx
>     [42 tests, 0.56 s]
> sage -t --long src/sage/combinat/root_system/reflection_group_complex.py
>     [6 tests, 0.08 s]
> sage -t --long src/sage/combinat/root_system/reflection_group_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/root_system/reflection_group_element.pyx
>     [19 tests, 0.08 s]
> sage -t --long src/sage/combinat/root_system/reflection_group_real.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/combinat/root_system/integrable_representations.py
>     [161 tests, 18.81 s]
> sage -t --long src/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py
>     [559 tests, 42.13 s]
> sage -t --long src/sage/combinat/root_system/root_lattice_realization_algebras.py
>     [315 tests, 28.79 s]
> sage -t --long src/sage/combinat/root_system/root_space.py
>     [82 tests, 1.91 s]
> sage -t --long src/sage/combinat/root_system/type_A.py
>     [58 tests, 0.42 s]
> sage -t --long src/sage/combinat/root_system/type_A_affine.py
>     [31 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_A_infinity.py
>     [37 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_B.py
>     [41 tests, 0.07 s]
> sage -t --long src/sage/combinat/root_system/type_BC_affine.py
>     [44 tests, 0.04 s]
> sage -t --long src/sage/combinat/root_system/type_B_affine.py
>     [27 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_C.py
>     [42 tests, 0.28 s]
> sage -t --long src/sage/combinat/root_system/type_C_affine.py
>     [23 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_D.py
>     [41 tests, 0.08 s]
> sage -t --long src/sage/combinat/root_system/type_D_affine.py
>     [25 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_E.py
>     [55 tests, 0.30 s]
> sage -t --long src/sage/combinat/root_system/type_E_affine.py
>     [26 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_F.py
>     [40 tests, 0.28 s]
> sage -t --long src/sage/combinat/root_system/type_F_affine.py
>     [19 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_G.py
>     [43 tests, 0.30 s]
> sage -t --long src/sage/combinat/root_system/type_G_affine.py
>     [19 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_H.py
>     [21 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_I.py
>     [20 tests, 0.03 s]
> sage -t --long src/sage/combinat/root_system/type_Q.py
>     [25 tests, 0.02 s]
> sage -t --long src/sage/combinat/root_system/type_affine.py
>     [81 tests, 2.32 s]
> sage -t --long src/sage/combinat/root_system/type_dual.py
>     [126 tests, 0.36 s]
> sage -t --long src/sage/combinat/root_system/type_folded.py
>     [38 tests, 0.11 s]
> sage -t --long src/sage/combinat/root_system/type_marked.py
>     [120 tests, 0.67 s]
> sage -t --long src/sage/combinat/root_system/type_reducible.py
>     [83 tests, 0.34 s]
> sage -t --long src/sage/combinat/root_system/type_relabel.py
>     [135 tests, 0.61 s]
> sage -t --long src/sage/combinat/root_system/type_super_A.py
>     [128 tests, 0.37 s]
> sage -t --long src/sage/combinat/root_system/weight_lattice_realizations.py
>     [210 tests, 0.77 s]
> sage -t --long src/sage/combinat/root_system/root_system.py
>     [134 tests, 9.83 s]
> sage -t --long src/sage/combinat/root_system/weyl_characters.py
>     [311 tests, 2.54 s]
> sage -t --long src/sage/combinat/root_system/weight_space.py
>     [92 tests, 5.15 s]
> sage -t --long src/sage/combinat/rooted_tree.py
>     [163 tests, 1.26 s]
> sage -t --long src/sage/combinat/rsk.py
>     [421 tests, 3.75 s]
> sage -t --long src/sage/combinat/schubert_polynomial.py
>     [79 tests, 0.58 s]
> sage -t --long src/sage/combinat/set_partition.py
>     [409 tests, 1.00 s]
> sage -t --long src/sage/combinat/root_system/weyl_group.py
>     [254 tests, 15.58 s]
> sage -t --long src/sage/combinat/sf/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/sf/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/set_partition_ordered.py
>     [219 tests, 6.98 s]
> sage -t --long src/sage/combinat/sf/character.py
>     [90 tests, 2.06 s]
> sage -t --long src/sage/combinat/sf/dual.py
>     [134 tests, 1.08 s]
> sage -t --long src/sage/combinat/sf/elementary.py
>     [35 tests, 0.92 s]
> sage -t --long src/sage/combinat/root_system/plot.py
>     [269 tests, 73.11 s]
> sage -t --long src/sage/combinat/sf/hecke.py
>     [53 tests, 1.23 s]
> sage -t --long src/sage/combinat/root_system/root_lattice_realizations.py
> **********************************************************************
> File "src/sage/combinat/root_system/root_lattice_realizations.py", line 3134, in sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ParentMethods.?
> Failed example:
>     L.plot_crystal(C)
> Expected:
>     Graphics object consisting of 16 graphics primitives
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ParentMethods.?[2]>", line 1, in <module>
>         L.plot_crystal(C)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 811, in displayhook
>         plain_text, rich_output = self._rich_output_formatter(obj, dict())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 625, in _rich_output_formatter
>         rich_output = self._call_rich_repr(obj, rich_repr_kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 585, in _call_rich_repr
>         return obj._rich_repr_(self)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/plot/graphics.py", line 939, in _rich_repr_
>         return display_manager.graphics_from_save(
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 713, in graphics_from_save
>         save_function(filename, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/decorators.py", line 412, in wrapper
>         return func(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/plot/graphics.py", line 3254, in save
>         figure.tight_layout()
>       File "/usr/lib/python3/dist-packages/matplotlib/cbook/deprecation.py", line 358, in wrapper
>         return func(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/matplotlib/figure.py", line 2491, in tight_layout
>         kwargs = get_tight_layout_figure(
>       File "/usr/lib/python3/dist-packages/matplotlib/tight_layout.py", line 355, in get_tight_layout_figure
>         kwargs = auto_adjust_subplotpars(fig, renderer,
>       File "/usr/lib/python3/dist-packages/matplotlib/tight_layout.py", line 170, in auto_adjust_subplotpars
>         cbook._warn_external('Tight layout not applied. The left and right '
>       File "/usr/lib/python3/dist-packages/matplotlib/cbook/__init__.py", line 1993, in _warn_external
>         warnings.warn(message, category, stacklevel)
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     UserWarning: Tight layout not applied. The left and right margins cannot be made large enough to accommodate all axes decorations. 
>     Graphics object consisting of 16 graphics primitives
> **********************************************************************
> 1 item had failures:
>    1 of  21 in sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ParentMethods.?
>     [642 tests, 1 failure, 65.52 s]
> sage -t --long src/sage/combinat/sf/homogeneous.py
>     [31 tests, 0.74 s]
> sage -t --long src/sage/combinat/sf/hall_littlewood.py
>     [198 tests, 8.73 s]
> sage -t --long src/sage/combinat/sf/kfpoly.py
>     [61 tests, 0.05 s]
> sage -t --long src/sage/combinat/sf/classical.py
>     [20 tests, 16.70 s]
> sage -t --long src/sage/combinat/sf/jack.py
>     [243 tests, 14.88 s]
> sage -t --long src/sage/combinat/sf/monomial.py
>     [56 tests, 0.97 s]
> sage -t --long src/sage/combinat/sf/multiplicative.py
>     [17 tests, 0.58 s]
> sage -t --long src/sage/combinat/sf/k_dual.py
>     [279 tests, 20.08 s]
> sage -t --long src/sage/combinat/sf/ns_macdonald.py
>     [157 tests, 0.66 s]
> sage -t --long src/sage/combinat/sf/orthogonal.py
>     [58 tests, 0.61 s]
> sage -t --long src/sage/combinat/sf/orthotriang.py
>     [50 tests, 1.48 s]
> sage -t --long src/sage/combinat/sf/llt.py
>     [124 tests, 22.42 s]
> sage -t --long src/sage/combinat/sf/powersum.py
>     [101 tests, 0.91 s]
> sage -t --long src/sage/combinat/sf/new_kschur.py
>     [311 tests, 12.83 s]
> sage -t --long src/sage/combinat/sf/schur.py
>     [87 tests, 5.37 s]
> sage -t --long src/sage/combinat/sf/symplectic.py
>     [58 tests, 0.58 s]
> sage -t --long src/sage/combinat/sf/witt.py
>     [267 tests, 1.57 s]
> sage -t --long src/sage/combinat/sf/sf.py
>     [322 tests, 7.17 s]
> sage -t --long src/sage/combinat/shard_order.py
>     [40 tests, 0.07 s]
> sage -t --long src/sage/combinat/shuffle.py
>     [94 tests, 0.08 s]
> sage -t --long src/sage/combinat/sidon_sets.py
>     [22 tests, 1.14 s]
> sage -t --long src/sage/combinat/shifted_primed_tableau.py
>     [482 tests, 21.26 s]
> sage -t --long src/sage/combinat/sine_gordon.py
>     [34 tests, 1.44 s]
> sage -t --long src/sage/combinat/six_vertex_model.py
>     [51 tests, 0.89 s]
> sage -t --long src/sage/combinat/skew_partition.py
>     [271 tests, 4.22 s]
> sage -t --long src/sage/combinat/sf/sfa.py
>     [1034 tests, 33.10 s]
> sage -t --long src/sage/combinat/sloane_functions.py
>     [1246 tests, 1.12 s]
> sage -t --long src/sage/combinat/species/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/species/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/species/characteristic_species.py
>     [79 tests, 0.35 s]
> sage -t --long src/sage/combinat/species/composition_species.py
>     [66 tests, 0.75 s]
> sage -t --long src/sage/combinat/species/cycle_species.py
>     [44 tests, 0.52 s]
> sage -t --long src/sage/combinat/species/empty_species.py
>     [37 tests, 0.32 s]
> sage -t --long src/sage/combinat/species/functorial_composition_species.py
>     [23 tests, 0.40 s]
> sage -t --long src/sage/combinat/skew_tableau.py
>     [362 tests, 10.01 s]
> sage -t --long src/sage/combinat/species/generating_series.py
>     [217 tests, 5.23 s]
> sage -t --long src/sage/combinat/species/linear_order_species.py
>     [29 tests, 0.31 s]
> sage -t --long src/sage/combinat/species/misc.py
>     [8 tests, 0.04 s]
> sage -t --long src/sage/combinat/species/partition_species.py
>     [43 tests, 0.54 s]
> sage -t --long src/sage/combinat/species/library.py
>     [19 tests, 1.59 s]
> sage -t --long src/sage/combinat/species/permutation_species.py
>     [42 tests, 0.52 s]
> sage -t --long src/sage/combinat/species/product_species.py
>     [79 tests, 0.60 s]
> sage -t --long src/sage/combinat/species/recursive_species.py
>     [127 tests, 0.64 s]
> sage -t --long src/sage/combinat/species/series_order.py
>     [52 tests, 0.02 s]
> sage -t --long src/sage/combinat/species/series.py
>     [457 tests, 0.35 s]
> sage -t --long src/sage/combinat/species/set_species.py
>     [33 tests, 0.33 s]
> sage -t --long src/sage/combinat/species/stream.py
>     [153 tests, 0.05 s]
> sage -t --long src/sage/combinat/species/structure.py
>     [87 tests, 0.07 s]
> sage -t --long src/sage/combinat/species/species.py
>     [142 tests, 0.54 s]
> sage -t --long src/sage/combinat/species/subset_species.py
>     [41 tests, 0.52 s]
> sage -t --long src/sage/combinat/species/sum_species.py
>     [45 tests, 0.35 s]
> sage -t --long src/sage/combinat/subsets_hereditary.py
>     [16 tests, 0.20 s]
> sage -t --long src/sage/combinat/subsets_pairwise.py
>     [32 tests, 0.04 s]
> sage -t --long src/sage/combinat/subword.py
>     [106 tests, 0.08 s]
> sage -t --long src/sage/combinat/subset.py
>     [257 tests, 0.54 s]
> sage -t --long src/sage/combinat/subword_complex_c.pyx
>     [15 tests, 0.25 s]
> sage -t --long src/sage/combinat/subword_complex.py
>     [245 tests, 1.77 s]
> sage -t --long src/sage/combinat/super_tableau.py
>     [140 tests, 1.44 s]
> sage -t --long src/sage/combinat/superpartition.py
>     [184 tests, 5.30 s]
> sage -t --long src/sage/combinat/symmetric_group_representations.py
>     [138 tests, 0.61 s]
> sage -t --long src/sage/combinat/symmetric_group_algebra.py
>     [422 tests, 14.87 s]
> sage -t --long src/sage/combinat/tableau_residues.py
>     [121 tests, 0.09 s]
> sage -t --long src/sage/combinat/sf/macdonald.py
>     [370 tests, 110.79 s]
> sage -t --long src/sage/combinat/tamari_lattices.py
>     [34 tests, 0.06 s]
> sage -t --long src/sage/combinat/tableau.py
>     [1391 tests, 35.58 s]
> sage -t --long src/sage/combinat/tools.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/combinat/tuple.py
>     [31 tests, 0.41 s]
> sage -t --long src/sage/combinat/tutorial.py
> **********************************************************************
> File "src/sage/combinat/tutorial.py", line 289, in sage.combinat.tutorial
> Failed example:
>     s0.series(z, 6)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.tutorial[25]>", line 1, in <module>
>         s0.series(z, Integer(6))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/combinat/tutorial.py", line 291, in sage.combinat.tutorial
> Failed example:
>     s1.series(z, 6)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.tutorial[26]>", line 1, in <module>
>         s1.series(z, Integer(6))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/combinat/tutorial.py", line 302, in sage.combinat.tutorial
> Failed example:
>     C.series(z, 11)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.tutorial[28]>", line 1, in <module>
>         C.series(z, Integer(11))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/combinat/tutorial.py", line 308, in sage.combinat.tutorial
> Failed example:
>     C.series(z, 101).coefficient(z,100)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.combinat.tutorial[29]>", line 1, in <module>
>         C.series(z, Integer(101)).coefficient(z,Integer(100))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> 1 item had failures:
>    4 of 246 in sage.combinat.tutorial
>     [245 tests, 4 failures, 18.55 s]
> sage -t --long src/sage/combinat/tableau_tuple.py
>     [711 tests, 36.52 s]
> sage -t --long src/sage/combinat/vector_partition.py
>     [29 tests, 0.05 s]
> sage -t --long src/sage/combinat/words/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/words/abstract_word.py
>     [362 tests, 0.40 s]
> sage -t --long src/sage/combinat/words/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/words/alphabet.py
>     [45 tests, 0.04 s]
> sage -t --long src/sage/combinat/tiling.py
>     [449 tests, 14.90 s]
> sage -t --long src/sage/combinat/words/infinite_word.py
>     [21 tests, 0.03 s]
> sage -t --long src/sage/combinat/words/finite_word.py
>     [1318 tests, 3.31 s]
> sage -t --long src/sage/combinat/words/lyndon_word.py
>     [83 tests, 0.72 s]
> sage -t --long src/sage/combinat/words/notes/word_inheritance_howto.rst
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/words/morphism.py
>     [529 tests, 3.57 s]
> sage -t --long src/sage/combinat/words/shuffle_product.py
>     [55 tests, 0.04 s]
> sage -t --long src/sage/combinat/words/word.py
>     [158 tests, 0.12 s]
> sage -t --long src/sage/combinat/words/suffix_trees.py
>     [301 tests, 1.21 s]
> sage -t --long src/sage/combinat/words/word_char.pyx
>     [137 tests, 0.17 s]
> sage -t --long src/sage/combinat/words/word_datatypes.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/words/word_datatypes.pyx
>     [160 tests, 0.09 s]
> sage -t --long src/sage/combinat/words/word_infinite_datatypes.py
>     [273 tests, 0.14 s]
> sage -t --long src/sage/combinat/words/word_options.py
>     [8 tests, 0.01 s]
> sage -t --long src/sage/combinat/words/words.py
>     [407 tests, 0.42 s]
> sage -t --long src/sage/combinat/yang_baxter_graph.py
>     [196 tests, 1.21 s]
> sage -t --long src/sage/cpython/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/_py2_random.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/atexit.pyx
>     [19 tests, 0.01 s]
> sage -t --long src/sage/cpython/builtin_types.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/words/word_generators.py
>     [301 tests, 3.34 s]
> sage -t --long src/sage/cpython/cython_metaclass.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/debug.pyx
>     [14 tests, 0.07 s]
> sage -t --long src/sage/cpython/dict_del_by_value.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/cython_metaclass.pyx
>     [4 tests, 4.69 s]
> sage -t --long src/sage/cpython/getattr.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/dict_del_by_value.pyx
> **********************************************************************
> File "src/sage/cpython/dict_del_by_value.pyx", line 412, in sage.cpython.dict_del_by_value.test_del_dictitem_by_exact_value
> Failed example:
>     test_del_dictitem_by_exact_value(D, ZZ, 2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.cpython.dict_del_by_value.test_del_dictitem_by_exact_value[7]>", line 1, in <module>
>         test_del_dictitem_by_exact_value(D, ZZ, Integer(2))
>       File "sage/cpython/dict_del_by_value.pyx", line 419, in sage.cpython.dict_del_by_value.test_del_dictitem_by_exact_value (build/cythonized/sage/cpython/dict_del_by_value.c:2398)
>         del_dictitem_by_exact_value(<PyDictObject *>D, <PyObject *>value, h)
>     TypeError: an integer is required
> **********************************************************************
> File "src/sage/cpython/dict_del_by_value.pyx", line 415, in sage.cpython.dict_del_by_value.test_del_dictitem_by_exact_value
> Failed example:
>     test_del_dictitem_by_exact_value(D, QQ, 1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.cpython.dict_del_by_value.test_del_dictitem_by_exact_value[9]>", line 1, in <module>
>         test_del_dictitem_by_exact_value(D, QQ, Integer(1))
>       File "sage/cpython/dict_del_by_value.pyx", line 419, in sage.cpython.dict_del_by_value.test_del_dictitem_by_exact_value (build/cythonized/sage/cpython/dict_del_by_value.c:2398)
>         del_dictitem_by_exact_value(<PyDictObject *>D, <PyObject *>value, h)
>     TypeError: an integer is required
> **********************************************************************
> 1 item had failures:
>    2 of  12 in sage.cpython.dict_del_by_value.test_del_dictitem_by_exact_value
>     [33 tests, 2 failures, 4.14 s]
> sage -t --long src/sage/cpython/python_debug.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/string.pyx
>     [1 test, 1.59 s]
> sage -t --long src/sage/cpython/string.pxd
>     [10 tests, 0.01 s]
> sage -t --long src/sage/combinat/words/paths.py
>     [514 tests, 14.30 s]
> sage -t --long src/sage/cpython/type.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/cpython/type.pyx
>     [7 tests, 0.01 s]
> sage -t --long src/sage/cpython/wrapperdescr.pyx
>     [13 tests, 0.01 s]
> sage -t --long src/sage/crypto/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/block_cipher/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/block_cipher/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/combinat/similarity_class_type.py
>     [215 tests, 115.07 s]
> sage -t --long src/sage/cpython/wrapperdescr.pxd
>     [7 tests, 1.37 s]
> sage -t --long src/sage/cpython/getattr.pyx
>     [68 tests, 4.06 s]
> sage -t --long src/sage/crypto/block_cipher/miniaes.py
>     [408 tests, 0.93 s]
> sage -t --long src/sage/crypto/block_cipher/sdes.py
>     [269 tests, 0.25 s]
> sage -t --long src/sage/crypto/cipher.py
>     [2 tests, 0.02 s]
> sage -t --long src/sage/crypto/boolean_function.pyx
>     [268 tests, 1.88 s]
> sage -t --long src/sage/crypto/classical_cipher.py
>     [109 tests, 0.10 s]
> sage -t --long src/sage/crypto/cryptosystem.py
>     [75 tests, 0.07 s]
> sage -t --long src/sage/crypto/lattice.py
>     [18 tests, 0.34 s]
> sage -t --long src/sage/crypto/lfsr.py
>     [29 tests, 0.05 s]
> sage -t --long src/sage/crypto/block_cipher/present.py
>     [138 tests, 3.58 s]
> sage -t --long src/sage/crypto/mq/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/mq/mpolynomialsystemgenerator.py
>     [30 tests, 0.02 s]
> sage -t --long src/sage/crypto/classical.py
>     [656 tests, 3.02 s]
> sage -t --long src/sage/crypto/mq/sbox.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/lwe.py
>     [100 tests, 0.64 s]
> sage -t --long src/sage/crypto/public_key/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/public_key/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/public_key/blum_goldwasser.py
>     [125 tests, 0.08 s]
> sage -t --long src/sage/crypto/mq/rijndael_gf.py
>     [365 tests, 3.33 s]
> sage -t --long src/sage/crypto/sboxes.py
>     [27 tests, 14.53 s]
> sage -t --long src/sage/crypto/stream.py
>     [27 tests, 0.07 s]
> sage -t --long src/sage/crypto/stream_cipher.py
>     [103 tests, 0.08 s]
> sage -t --long src/sage/crypto/util.py
>     [113 tests, 0.09 s]
> sage -t --long src/sage/data_structures/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/binary_matrix.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/binary_matrix.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/binary_search.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/binary_search.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/bitset.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/bitset.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/bitset.pyx
>     [427 tests, 0.18 s]
> sage -t --long src/sage/data_structures/blas_dict.pyx
>     [50 tests, 0.03 s]
> sage -t --long src/sage/data_structures/blas_dict.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/crypto/block_cipher/des.py
>     [157 tests, 24.09 s]
> sage -t --long src/sage/data_structures/bounded_integer_sequences.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/data_structures/mutable_poset.py
> **********************************************************************
> File "src/sage/data_structures/mutable_poset.py", line 3320, in sage.data_structures.mutable_poset.MutablePoset.maximal_elements
> Failed example:
>     list(P.maximal_elements())
> Expected:
>     [(1, 3), (2, 2)]
> Got:
>     [(2, 2), (1, 3)]
> **********************************************************************
> 1 item had failures:
>    1 of   5 in sage.data_structures.mutable_poset.MutablePoset.maximal_elements
>     [441 tests, 1 failure, 0.15 s]
> sage -t --long src/sage/databases/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/databases/all.py
>     [5 tests, 0.19 s]
> sage -t --long src/sage/crypto/sbox.py
>     [254 tests, 19.34 s]
> sage -t --long src/sage/databases/conway.py
>     [42 tests, 0.34 s]
> sage -t --long src/sage/databases/cunningham_tables.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/databases/db_class_polynomials.py
>     [7 tests, 0.01 s]
> sage -t --long src/sage/databases/db_modular_polynomials.py
>     [13 tests, 0.01 s]
> sage -t --long src/sage/data_structures/bounded_integer_sequences.pyx
>     [262 tests, 1.28 s]
> sage -t --long src/sage/databases/cremona.py
>     [129 tests, 0.56 s]
> sage -t --long src/sage/databases/odlyzko.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/databases/jones.py
>     [8 tests, 0.03 s]
> sage -t --long src/sage/databases/findstat.py
>     [60 tests, 0.27 s]
> sage -t --long src/sage/databases/sloane.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/databases/stein_watkins.py
>     [12 tests, 0.01 s]
> sage -t --long src/sage/databases/symbolic_data.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/docs/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/docs/conf.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/databases/sql_db.py
>     [293 tests, 0.61 s]
> sage -t --long src/sage/doctest/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/doctest/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/databases/oeis.py
>     [132 tests, 1.37 s]
> sage -t --long src/sage/doctest/external.py
>     [26 tests, 0.02 s]
> sage -t --long src/sage/doctest/fixtures.py
>     [59 tests, 0.02 s]
> sage -t --long src/sage/docs/instancedoc.pyx
>     [68 tests, 2.12 s]
> sage -t --long src/sage/doctest/forker.py
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1072, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     DTR.compile_and_execute(ex0, compiler, globs)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.doctest.forker.SageDocTestRunner.compile_and_execute[18]>", line 1, in <module>
>         DTR.compile_and_execute(ex0, compiler, globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1112, in compile_and_execute
>         compiled = compiler(example)
>       File "<doctest sage.doctest.forker.SageDocTestRunner.compile_and_execute[17]>", line 1, in <lambda>
>         compiler = lambda ex: compile(ex.source, '<doctest sage.doctest.forker[0]>', 'single', Integer(32768), Integer(1))
>     ValueError: compile(): unrecognised flags
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1074, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     globs['doctest_var']
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.doctest.forker.SageDocTestRunner.compile_and_execute[19]>", line 1, in <module>
>         globs['doctest_var']
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/util.py", line 300, in __getitem__
>         return dict.__getitem__(self, name)
>     KeyError: 'doctest_var'
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1076, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     globs.set
> Expected:
>     {'doctest_var'}
> Got:
>     set()
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1078, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     globs.got
> Expected:
>     {'Integer'}
> Got:
>     {'doctest_var'}
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1085, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     DTR.compile_and_execute(ex1, compiler, globs)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.doctest.forker.SageDocTestRunner.compile_and_execute[24]>", line 1, in <module>
>         DTR.compile_and_execute(ex1, compiler, globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1112, in compile_and_execute
>         compiled = compiler(example)
>       File "<doctest sage.doctest.forker.SageDocTestRunner.compile_and_execute[23]>", line 1, in <lambda>
>         compiler = lambda ex:compile(ex.source, '<doctest sage.doctest.forker[1]>', 'single', Integer(32768), Integer(1))
>     ValueError: compile(): unrecognised flags
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1086, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     sorted(list(globs.set))
> Expected:
>     ['R', 'a']
> Got:
>     []
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1088, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     globs.got
> Expected:
>     {'ZZ'}
> Got:
>     set()
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1097, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     DTR.compile_and_execute(ex2, compiler, globs)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.doctest.forker.SageDocTestRunner.compile_and_execute[30]>", line 1, in <module>
>         DTR.compile_and_execute(ex2, compiler, globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1112, in compile_and_execute
>         compiled = compiler(example)
>       File "<doctest sage.doctest.forker.SageDocTestRunner.compile_and_execute[29]>", line 1, in <lambda>
>         compiler = lambda ex:compile(ex.source, '<doctest sage.doctest.forker[2]>', 'single', Integer(32768), Integer(1))
>     ValueError: compile(): unrecognised flags
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1101, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     sorted(list(globs.got))
> Expected:
>     ['a', 'doctest_var']
> Got:
>     []
> **********************************************************************
> File "src/sage/doctest/forker.py", line 1103, in sage.doctest.forker.SageDocTestRunner.compile_and_execute
> Failed example:
>     set(ex2.predecessors) == set([ex0,ex1])
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> 1 item had failures:
>   10 of  35 in sage.doctest.forker.SageDocTestRunner.compile_and_execute
>     [449 tests, 10 failures, 12.86 s]
> sage -t --long src/sage/doctest/parsing.py
>     [276 tests, 0.58 s]
> sage -t --long src/sage/doctest/reporting.py
>     [120 tests, 0.10 s]
> sage -t --long src/sage/doctest/control.py
>     [203 tests, 4.95 s]
> sage -t --long src/sage/crypto/mq/sr.py
>     [371 tests, 47.88 s]
> sage -t --long src/sage/doctest/util.py
>     [141 tests, 0.03 s]
> sage -t --long src/sage/dynamics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/affine_ds.py
>     [211 tests, 1.72 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/endPN_automorphism_group.py
>     [114 tests, 1.40 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/endPN_minimal_model.py
>     [65 tests, 1.22 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/generic_ds.py
>     [104 tests, 0.65 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/product_projective_ds.py
>     [37 tests, 0.15 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/projective_ds_helper.pyx
>     [26 tests, 0.56 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/wehlerK3.py
>     [350 tests, 6.04 s]
> sage -t --long src/sage/dynamics/cellular_automata/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/cellular_automata/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/cellular_automata/solitons.py
>     [163 tests, 4.56 s]
> sage -t --long src/sage/dynamics/complex_dynamics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/complex_dynamics/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/dynamics/complex_dynamics/mandel_julia.py
> **********************************************************************
> File "src/sage/dynamics/complex_dynamics/mandel_julia.py", line 130, in sage.dynamics.complex_dynamics.mandel_julia.mandelbrot_plot
> Failed example:
>     mandelbrot_plot(interact=True)
> Expected:
>     interactive(children=(FloatSlider(value=0.0, description=u'Real center', max=1.0, min=-1.0, step=1e-05),
>     FloatSlider(value=0.0, description=u'Imag center', max=1.0, min=-1.0, step=1e-05),
>     FloatSlider(value=4.0, description=u'Width', max=4.0, min=1e-05, step=1e-05),
>     IntSlider(value=500, description=u'Iterations', max=1000),
>     IntSlider(value=500, description=u'Pixels', max=1000, min=10),
>     IntSlider(value=1, description=u'Color sep', max=20, min=1),
>     IntSlider(value=30, description=u'# Colors', min=1),
>     ColorPicker(value='#ff6347', description=u'Base color'), Output()),
>     _dom_classes=(u'widget-interact',))
> Got:
>     interactive(children=(FloatSlider(value=0.0, min=-1.0, max=1.0, step=1e-05, description='Real center'), FloatSlider(value=0.0, min=-1.0, max=1.0, step=1e-05, description='Imag center'), FloatSlider(value=4.0, min=1e-05, max=4.0, step=1e-05, description='Width'), IntSlider(value=500, min=0, max=1000, step=1, description='Iterations'), IntSlider(value=500, min=10, max=1000, step=1, description='Pixels'), IntSlider(value=1, min=1, max=20, step=1, description='Color sep'), IntSlider(value=30, min=1, max=100, step=1, description='# Colors'), ColorPicker(value='#ff6347', description='Base color'), Output()))
> **********************************************************************
> File "src/sage/dynamics/complex_dynamics/mandel_julia.py", line 143, in sage.dynamics.complex_dynamics.mandel_julia.mandelbrot_plot
> Failed example:
>     mandelbrot_plot(interact=True, x_center=-0.75, y_center=0.25,
>     image_width=1/2, number_of_colors=75)
> Expected:
>     interactive(children=(FloatSlider(value=-0.75, description=u'Real center', max=1.0, min=-1.0, step=1e-05),
>     FloatSlider(value=0.25, description=u'Imag center', max=1.0, min=-1.0, step=1e-05),
>     FloatSlider(value=0.5, description=u'Width', max=4.0, min=1e-05, step=1e-05),
>     IntSlider(value=500, description=u'Iterations', max=1000),
>     IntSlider(value=500, description=u'Pixels', max=1000, min=10),
>     IntSlider(value=1, description=u'Color sep', max=20, min=1),
>     IntSlider(value=75, description=u'# Colors', min=1),
>     ColorPicker(value='#ff6347', description=u'Base color'), Output()),
>     _dom_classes=(u'widget-interact',))
> Got:
>     interactive(children=(FloatSlider(value=-0.75, min=-1.0, max=1.0, step=1e-05, description='Real center'), FloatSlider(value=0.25, min=-1.0, max=1.0, step=1e-05, description='Imag center'), FloatSlider(value=0.5, min=1e-05, max=4.0, step=1e-05, description='Width'), IntSlider(value=500, min=0, max=1000, step=1, description='Iterations'), IntSlider(value=500, min=10, max=1000, step=1, description='Pixels'), IntSlider(value=1, min=1, max=20, step=1, description='Color sep'), IntSlider(value=75, min=1, max=100, step=1, description='# Colors'), ColorPicker(value='#ff6347', description='Base color'), Output()))
> **********************************************************************
> File "src/sage/dynamics/complex_dynamics/mandel_julia.py", line 536, in sage.dynamics.complex_dynamics.mandel_julia.julia_plot
> Failed example:
>     julia_plot(f,interact=True)
> Expected:
>     interactive(children=(FloatSlider(value=0.5, description=u'Real c'...
> Got:
>     interactive(children=(FloatSlider(value=0.5, min=-2.0, max=2.0, step=1e-05, description='Real c'), FloatSlider(value=0.0, min=-2.0, max=2.0, step=1e-05, description='Imag c'), FloatSlider(value=0.0, min=-1.0, max=1.0, step=1e-05, description='Real center'), FloatSlider(value=0.0, min=-1.0, max=1.0, step=1e-05, description='Imag center'), FloatSlider(value=4.0, min=1e-05, max=4.0, step=1e-05, description='Width'), IntSlider(value=500, min=0, max=1000, step=1, description='Iterations'), IntSlider(value=500, min=10, max=1000, step=1, description='Pixels'), IntSlider(value=1, min=1, max=20, step=1, description='Color sep'), IntSlider(value=30, min=1, max=100, step=1, description='# Colors'), ColorPicker(value='#4682b4', description='Base color'), ColorPicker(value='#ff6347', description='Point color'), Output()))
> **********************************************************************
> 2 items had failures:
>    1 of  21 in sage.dynamics.complex_dynamics.mandel_julia.julia_plot
>    2 of  19 in sage.dynamics.complex_dynamics.mandel_julia.mandelbrot_plot
>     [44 tests, 3 failures, 18.33 s]
> sage -t --long src/sage/doctest/sources.py
>     [367 tests, 82.70 s]
> sage -t --long src/sage/dynamics/arithmetic_dynamics/projective_ds.py
>     [1233 tests, 55.36 s]
> sage -t --long src/sage/dynamics/finite_dynamical_system.py
>     [264 tests, 0.27 s]
> sage -t --long src/sage/dynamics/finite_dynamical_system_catalog.py
>     [65 tests, 1.59 s]
> sage -t --long src/sage/dynamics/surface_dynamics_deprecation.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/dynamics/complex_dynamics/mandel_julia_helper.pyx
>     [43 tests, 4.94 s]
> sage -t --long src/sage/ext/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/cplusplus.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/fast_callable.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/env.py
> **********************************************************************
> File "src/sage/env.py", line 221, in sage.env._get_shared_lib_filename
> Failed example:
>     fnmatch(lib_filename, pattern)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.env._get_shared_lib_filename[5]>", line 1, in <module>
>         fnmatch(lib_filename, pattern)
>       File "/usr/lib/python3.8/fnmatch.py", line 34, in fnmatch
>         name = os.path.normcase(name)
>       File "/usr/lib/python3.8/posixpath.py", line 54, in normcase
>         return os.fspath(s)
>     TypeError: expected str, bytes or os.PathLike object, not NoneType
> **********************************************************************
> 1 item had failures:
>    1 of   8 in sage.env._get_shared_lib_filename
>     [41 tests, 1 failure, 0.76 s]
> sage -t --long src/sage/ext/fast_eval.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/fast_eval.pyx
>     [222 tests, 0.09 s]
> sage -t --long src/sage/ext/interpreters/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_cc.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_cc.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_cdf.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_cdf.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_el.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_el.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_py.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_py.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_rdf.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_rdf.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_rr.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/interpreters/wrapper_rr.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/memory.pyx
>     [2 tests, 0.00 s]
> sage -t --long src/sage/ext/fast_callable.pyx
>     [613 tests, 2.96 s]
> sage -t --long src/sage/ext/memory_allocator.pxd
>     [3 tests, 3.62 s]
> sage -t --long src/sage/ext/mod_int.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/stdsage.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/ext/memory_allocator.pyx
>     [8 tests, 3.58 s]
> sage -t --long src/sage/features/bliss.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/features/csdp.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/features/databases.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/features/fes.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/features/ffmpeg.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/features/gap.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/features/graph_generators.py
>     [12 tests, 0.01 s]
> sage -t --long src/sage/features/graphviz.py
>     [13 tests, 0.01 s]
> sage -t --long src/sage/features/imagemagick.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/features/latte.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/features/lrs.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/features/pandoc.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/finance/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/finance/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/finance/easter.py
>     [7 tests, 0.01 s]
> sage -t --long src/sage/finance/fractal.pyx
>     [19 tests, 0.21 s]
> sage -t --long src/sage/finance/markov_multifractal.py
>     [34 tests, 0.02 s]
> sage -t --long src/sage/finance/markov_multifractal_cython.pyx
>     [4 tests, 0.01 s]
> sage -t --long src/sage/finance/option.pyx
>     [10 tests, 0.01 s]
> sage -t --long src/sage/finance/stock.py
>     [25 tests, 0.02 s]
> sage -t --long src/sage/features/__init__.py
>     [94 tests, 4.41 s]
> sage -t --long src/sage/finance/time_series.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/functions/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/functions/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/functions/airy.py
>     [135 tests, 1.93 s]
> sage -t --long src/sage/finance/time_series.pyx
>     [343 tests, 5.90 s]
> sage -t --long src/sage/functions/error.py
>     [120 tests, 2.88 s]
> sage -t --long src/sage/functions/gamma.py
>     [213 tests, 2.87 s]
> sage -t --long src/sage/functions/generalized.py
>     [117 tests, 0.38 s]
> sage -t --long src/sage/functions/hyperbolic.py
>     [177 tests, 1.89 s]
> sage -t --long src/sage/functions/bessel.py
>     [346 tests, 15.36 s]
> sage -t --long src/sage/functions/hypergeometric.py
>     [182 tests, 7.92 s]
> sage -t --long src/sage/functions/jacobi.py
>     [189 tests, 3.14 s]
> sage -t --long src/sage/functions/min_max.py
>     [66 tests, 1.38 s]
> sage -t --long src/sage/functions/log.py
>     [323 tests, 4.05 s]
> sage -t --long src/sage/functions/exp_integral.py
>     [273 tests, 18.76 s]
> sage -t --long src/sage/functions/orthogonal_polys.py
>     [378 tests, 4.33 s]
> sage -t --long src/sage/functions/piecewise.py
>     [222 tests, 8.48 s]
> sage -t --long src/sage/functions/special.py
>     [125 tests, 3.28 s]
> sage -t --long src/sage/functions/prime_pi.pyx
>     [39 tests, 10.44 s]
> sage -t --long src/sage/functions/spike_function.py
>     [33 tests, 0.06 s]
> sage -t --long src/sage/functions/transcendental.py
>     [98 tests, 2.18 s]
> sage -t --long src/sage/functions/trig.py
>     [261 tests, 3.20 s]
> sage -t --long src/sage/game_theory/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/game_theory/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/game_theory/catalog.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/game_theory/catalog_normal_form_games.py
>     [99 tests, 0.58 s]
> sage -t --long src/sage/game_theory/cooperative_game.py
>     [101 tests, 0.15 s]
> sage -t --long src/sage/game_theory/gambit_docs.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/functions/wigner.py
>     [49 tests, 2.63 s]
> sage -t --long src/sage/game_theory/matching_game.py
>     [304 tests, 0.66 s]
> sage -t --long src/sage/game_theory/parser.py
>     [49 tests, 0.03 s]
> sage -t --long src/sage/games/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/games/all.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/games/hexad.py
>     [53 tests, 0.18 s]
> sage -t --long src/sage/game_theory/normal_form_game.py
>     [546 tests, 1.50 s]
> sage -t --long src/sage/functions/other.py
>     [446 tests, 22.57 s]
> sage -t --long src/sage/games/sudoku.py
>     [96 tests, 3.15 s]
> sage -t --long src/sage/geometry/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/games/sudoku_backtrack.pyx
>     [3 tests, 0.36 s]
> sage -t --long src/sage/geometry/fan.py
>     [492 tests, 3.76 s]
> sage -t --long src/sage/games/quantumino.py
>     [76 tests, 9.25 s]
> sage -t --long src/sage/geometry/fan_isomorphism.py
>     [65 tests, 1.39 s]
> sage -t --long src/sage/geometry/hasse_diagram.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/geometry/hyperbolic_space/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/hyperbolic_space/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/hyperbolic_space/hyperbolic_coercion.py
>     [135 tests, 0.40 s]
> sage -t --long src/sage/geometry/hyperbolic_space/hyperbolic_constants.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/fan_morphism.py
>     [305 tests, 2.87 s]
> sage -t --long src/sage/geometry/hyperbolic_space/hyperbolic_interface.py
>     [25 tests, 1.38 s]
> sage -t --long src/sage/geometry/hyperbolic_space/hyperbolic_isometry.py
>     [202 tests, 2.33 s]
> sage -t --long src/sage/geometry/hyperbolic_space/hyperbolic_model.py
>     [234 tests, 2.06 s]
> sage -t --long src/sage/geometry/hyperbolic_space/hyperbolic_point.py
>     [109 tests, 2.91 s]
> sage -t --long src/sage/geometry/hyperplane_arrangement/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/hyperplane_arrangement/affine_subspace.py
>     [93 tests, 0.30 s]
> sage -t --long src/sage/geometry/hyperbolic_space/hyperbolic_geodesic.py
>     [307 tests, 11.89 s]
> sage -t --long src/sage/geometry/hyperplane_arrangement/check_freeness.py
>     [8 tests, 0.07 s]
> sage -t --long src/sage/geometry/hyperplane_arrangement/hyperplane.py
>     [134 tests, 0.82 s]
> sage -t --long src/sage/geometry/hyperplane_arrangement/library.py
>     [78 tests, 7.07 s]
> sage -t --long src/sage/geometry/hyperplane_arrangement/arrangement.py
>     [493 tests, 17.99 s]
> sage -t --long src/sage/geometry/integral_points.pyx
>     [171 tests, 2.67 s]
> sage -t --long src/sage/geometry/hyperplane_arrangement/plot.py
>     [59 tests, 17.19 s]
> sage -t --long src/sage/geometry/linear_expression.py
>     [165 tests, 0.53 s]
> sage -t --long src/sage/geometry/newton_polygon.py
>     [110 tests, 0.46 s]
> sage -t --long src/sage/geometry/point_collection.pyx
>     [107 tests, 0.23 s]
> sage -t --long src/sage/geometry/polyhedron/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/backend_cdd.py
>     [31 tests, 0.86 s]
> sage -t --long src/sage/geometry/polyhedron/backend_field.py
>     [67 tests, 1.01 s]
> sage -t --long src/sage/geometry/polyhedron/backend_normaliz.py
>     [44 tests, 0.47 s]
> sage -t --long src/sage/geometry/polyhedron/backend_polymake.py
>     [4 tests, 0.50 s]
> sage -t --long src/sage/geometry/polyhedron/backend_ppl.py
>     [27 tests, 0.06 s]
> sage -t --long src/sage/doctest/test.py
>     [55 tests, 191.14 s]
> sage -t --long src/sage/geometry/polyhedron/base_QQ.py
>     [38 tests, 0.09 s]
> sage -t --long src/sage/geometry/polyhedron/base_RDF.py
>     [14 tests, 0.43 s]
> sage -t --long src/sage/geometry/polyhedron/base_ZZ.py
>     [54 tests, 1.68 s]
> sage -t --long src/sage/geometry/polyhedron/cdd_file_format.py
>     [10 tests, 0.01 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/base.pyx
>     [340 tests, 1.48 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/bit_vector_operations.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/combinatorial_face.pyx
>     [127 tests, 1.95 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/combinatorial_face.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/cone.py
>     [1244 tests, 57.82 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/conversions.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/face_iterator.pyx
>     [101 tests, 1.01 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/face_iterator.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/list_of_faces.pyx
>     [35 tests, 1.75 s]
> sage -t --long src/sage/geometry/lattice_polytope.py
>     [659 tests, 22.63 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/list_of_faces.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/polyhedron_face_lattice.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/constructor.py
>     [86 tests, 0.77 s]
> sage -t --long src/sage/geometry/polyhedron/double_description.py
>     [116 tests, 0.40 s]
> sage -t --long src/sage/geometry/polyhedron/double_description_inhomogeneous.py
>     [72 tests, 0.33 s]
> sage -t --long src/sage/geometry/polyhedron/face.py
>     [98 tests, 1.22 s]
> sage -t --long src/sage/geometry/polyhedron/lattice_euclidean_group_element.py
>     [27 tests, 0.03 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/polyhedron_face_lattice.pyx
>     [36 tests, 3.03 s]
> sage -t --long src/sage/geometry/polyhedron/misc.py
>     [11 tests, 0.01 s]
> sage -t --long src/sage/geometry/polyhedron/palp_database.py
>     [59 tests, 1.61 s]
> sage -t --long src/sage/geometry/polyhedron/parent.py
>     [141 tests, 3.25 s]
> sage -t --long src/sage/geometry/polyhedron/combinatorial_polyhedron/conversions.pyx
>     [55 tests, 19.37 s]
> sage -t --long src/sage/geometry/polyhedron/ppl_lattice_polygon.py
>     [81 tests, 2.62 s]
> sage -t --long src/sage/geometry/polyhedron/plot.py
>     [220 tests, 14.86 s]
> sage -t --long src/sage/geometry/polyhedron/representation.py
>     [301 tests, 0.52 s]
> sage -t --long src/sage/geometry/pseudolines.py
>     [77 tests, 0.73 s]
> sage -t --long src/sage/geometry/ribbon_graph.py
>     [224 tests, 0.16 s]
> sage -t --long src/sage/geometry/riemannian_manifolds/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/riemannian_manifolds/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/ppl_lattice_polytope.py
>     [175 tests, 12.92 s]
> sage -t --long src/sage/geometry/polyhedron/library.py
>     [240 tests, 31.24 s]
> sage -t --long src/sage/geometry/toric_lattice.py
>     [298 tests, 3.73 s]
> sage -t --long src/sage/geometry/toric_lattice_element.pyx
>     [80 tests, 0.72 s]
> sage -t --long src/sage/geometry/toric_plotter.py
>     [100 tests, 4.26 s]
> sage -t --long src/sage/geometry/triangulation/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/triangulation/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/riemannian_manifolds/surface3d_generators.py
>     [30 tests, 12.34 s]
> sage -t --long src/sage/geometry/triangulation/data.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/triangulation/element.py
>     [100 tests, 3.22 s]
> sage -t --long src/sage/geometry/triangulation/functions.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/polyhedron/base.py
>     [1314 tests, 67.69 s]
> sage -t --long src/sage/geometry/triangulation/triangulations.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/geometry/voronoi_diagram.py
>     [32 tests, 3.14 s]
> sage -t --long src/sage/graphs/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/all.py
>     [5 tests, 0.03 s]
> sage -t --long src/sage/graphs/asteroidal_triples.pyx
>     [13 tests, 0.03 s]
> sage -t --long src/sage/graphs/base/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/boost_graph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/boost_graph.pyx
>     [113 tests, 0.46 s]
> sage -t --long src/sage/geometry/riemannian_manifolds/parametrized_surface3d.py
>     [298 tests, 35.06 s]
> sage -t --long src/sage/graphs/base/c_graph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/dense_graph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/dense_graph.pyx
>     [113 tests, 0.24 s]
> sage -t --long src/sage/graphs/base/graph_backends.pyx
>     [85 tests, 0.07 s]
> sage -t --long src/sage/graphs/base/graph_backends.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/overview.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/graphs/base/c_graph.pyx
>     [527 tests, 1.13 s]
> sage -t --long src/sage/graphs/base/sparse_graph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/static_dense_graph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/static_dense_graph.pyx
>     [53 tests, 0.06 s]
> sage -t --long src/sage/graphs/base/static_sparse_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/base/sparse_graph.pyx
>     [215 tests, 0.31 s]
> sage -t --long src/sage/graphs/base/static_sparse_backend.pyx
>     [185 tests, 0.32 s]
> sage -t --long src/sage/graphs/base/static_sparse_graph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/bipartite_graph.py
>     [305 tests, 1.17 s]
> sage -t --long src/sage/graphs/bliss.pyx
>     [8 tests, 0.03 s]
> sage -t --long src/sage/graphs/centrality.pyx
>     [58 tests, 0.52 s]
> sage -t --long src/sage/graphs/base/static_sparse_graph.pyx
>     [68 tests, 5.32 s]
> sage -t --long src/sage/graphs/cliquer.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/cliquer.pyx
>     [22 tests, 0.28 s]
> sage -t --long src/sage/graphs/comparability.pyx
>     [52 tests, 1.41 s]
> sage -t --long src/sage/geometry/triangulation/point_configuration.py
>     [214 tests, 23.33 s]
> sage -t --long src/sage/graphs/connectivity.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/convexity_properties.pyx
>     [22 tests, 0.04 s]
> sage -t --long src/sage/graphs/convexity_properties.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/digraph.py
>     [417 tests, 1.67 s]
> sage -t --long src/sage/graphs/chrompoly.pyx
>     [20 tests, 11.04 s]
> sage -t --long src/sage/graphs/distances_all_pairs.pyx
>     [90 tests, 0.58 s]
> sage -t --long src/sage/graphs/distances_all_pairs.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/dot2tex_utils.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/graphs/generators/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/digraph_generators.py
> **********************************************************************
> File "src/sage/graphs/digraph_generators.py", line 597, in sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg
> Failed example:
>     len(dgs)
> Expected:
>     13
> Got:
>     0
> **********************************************************************
> File "src/sage/graphs/digraph_generators.py", line 599, in sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg
> Failed example:
>     dgs[0]
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg[3]>", line 1, in <module>
>         dgs[Integer(0)]
>     IndexError: list index out of range
> **********************************************************************
> File "src/sage/graphs/digraph_generators.py", line 601, in sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg
> Failed example:
>     dgs[0]._bit_vector()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg[4]>", line 1, in <module>
>         dgs[Integer(0)]._bit_vector()
>     IndexError: list index out of range
> **********************************************************************
> File "src/sage/graphs/digraph_generators.py", line 603, in sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg
> Failed example:
>     len(list(digraphs.nauty_directg(graphs.PetersenGraph(), options="-o")))
> Expected:
>     324
> Got:
>     0
> **********************************************************************
> File "src/sage/graphs/digraph_generators.py", line 613, in sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg
> Failed example:
>     next(digraphs.nauty_directg(graphs.nauty_geng("-c 3"),
>         options="-o", debug=True))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg[8]>", line 1, in <module>
>         next(digraphs.nauty_directg(graphs.nauty_geng("-c 3"),
>     StopIteration
> **********************************************************************
> 1 item had failures:
>    5 of  10 in sage.graphs.digraph_generators.DiGraphGenerators.nauty_directg
>     [138 tests, 5 failures, 4.82 s]
> sage -t --long src/sage/graphs/generators/chessboard.py
>     [44 tests, 1.25 s]
> sage -t --long src/sage/graphs/connectivity.pyx
>     [503 tests, 13.72 s]
> sage -t --long src/sage/graphs/generators/degree_sequence.py
>     [23 tests, 0.98 s]
> sage -t --long src/sage/geometry/triangulation/base.pyx
>     [175 tests, 41.33 s]
> sage -t --long src/sage/graphs/generators/intersection.py
>     [71 tests, 0.60 s]
> sage -t --long src/sage/graphs/generators/basic.py
>     [197 tests, 12.56 s]
> sage -t --long src/sage/graphs/generators/platonic_solids.py
>     [44 tests, 3.82 s]
> sage -t --long src/sage/graphs/generators/random.py
>     [187 tests, 4.42 s]
> sage -t --long src/sage/graphs/generators/world_map.py
>     [20 tests, 0.57 s]
> sage -t --long src/sage/graphs/generic_graph.py
> **********************************************************************
> File "src/sage/graphs/generic_graph.py", line 4715, in sage.graphs.generic_graph.GenericGraph.minimum_cycle_basis
> Failed example:
>     sorted(g.minimum_cycle_basis(by_weight=True, algorithm='NetworkX'))
> Expected:
>     doctest:...: DeprecationWarning: connected_component_subgraphs is
>     deprecated and will be removedin 2.2. Use (G.subgraph(c).copy()
>     for c in connected_components(G))
>     [[1, 2, 3], [1, 2, 3, 4], [5, 6, 7]]
> Got:
>     [[1, 2, 3], [1, 2, 3, 4], [5, 6, 7]]
> **********************************************************************
> File "src/sage/graphs/generic_graph.py", line 9764, in sage.graphs.generic_graph.GenericGraph.?
> Failed example:
>     G.pagerank(algorithm="Scipy") # abs tol 1e-9
> Expected:
>     {1: 0.16112205885619563,
>      2: 0.1619531043247219,
>      3: 0.16112205885619563,
>      4: 0.2374999999999999,
>      5: 0.17775588228760858,
>      6: 0.100546895675278}
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[7]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy") # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 432, in pagerank_scipy
>         S = scipy.array(M.sum(axis=1)).flatten()
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.array is deprecated and will be removed in SciPy 2.0.0, use numpy.array instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[7]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy") # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 439, in pagerank_scipy
>         x = scipy.repeat(1.0 / N, N)
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.repeat is deprecated and will be removed in SciPy 2.0.0, use numpy.repeat instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[7]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy") # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 446, in pagerank_scipy
>         p = scipy.repeat(1.0 / N, N)
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.repeat is deprecated and will be removed in SciPy 2.0.0, use numpy.repeat instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[7]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy") # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 459, in pagerank_scipy
>         is_dangling = scipy.where(S == 0)[0]
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.where is deprecated and will be removed in SciPy 2.0.0, use numpy.where instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[7]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy") # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 467, in pagerank_scipy
>         err = scipy.absolute(x - xlast).sum()
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.absolute is deprecated and will be removed in SciPy 2.0.0, use numpy.absolute instead
>     {1: 0.16112205885619563,
>      2: 0.1619531043247219,
>      3: 0.16112205885619563,
>      4: 0.2374999999999999,
>      5: 0.17775588228760858,
>      6: 0.100546895675278}
> **********************************************************************
> File "src/sage/graphs/generic_graph.py", line 9771, in sage.graphs.generic_graph.GenericGraph.?
> Failed example:
>     G.pagerank(algorithm="Scipy", by_weight=True) # abs tol 1e-9
> Expected:
>     {1: 0.16459583718588994,
>      2: 0.13977928595154515,
>      3: 0.16539840184339605,
>      4: 0.3063198690713853,
>      5: 0.1700057609707141,
>      6: 0.05390084497706962}
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[8]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy", by_weight=True) # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 432, in pagerank_scipy
>         S = scipy.array(M.sum(axis=1)).flatten()
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.array is deprecated and will be removed in SciPy 2.0.0, use numpy.array instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[8]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy", by_weight=True) # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 439, in pagerank_scipy
>         x = scipy.repeat(1.0 / N, N)
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.repeat is deprecated and will be removed in SciPy 2.0.0, use numpy.repeat instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[8]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy", by_weight=True) # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 446, in pagerank_scipy
>         p = scipy.repeat(1.0 / N, N)
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.repeat is deprecated and will be removed in SciPy 2.0.0, use numpy.repeat instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[8]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy", by_weight=True) # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 459, in pagerank_scipy
>         is_dangling = scipy.where(S == 0)[0]
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.where is deprecated and will be removed in SciPy 2.0.0, use numpy.where instead
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.graphs.generic_graph.GenericGraph.?[8]>", line 1, in <module>
>         G.pagerank(algorithm="Scipy", by_weight=True) # abs tol 1e-9
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/graphs/generic_graph.py", line 9852, in pagerank
>         return networkx.pagerank_scipy(self.networkx_graph
>       File "/usr/lib/python3/dist-packages/networkx/algorithms/link_analysis/pagerank_alg.py", line 467, in pagerank_scipy
>         err = scipy.absolute(x - xlast).sum()
>       File "/usr/lib/python3/dist-packages/scipy/_lib/deprecation.py", line 18, in call
>         warnings.warn(msg, category=DeprecationWarning,
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     DeprecationWarning: scipy.absolute is deprecated and will be removed in SciPy 2.0.0, use numpy.absolute instead
>     {1: 0.16459583718588994,
>      2: 0.13977928595154515,
>      3: 0.16539840184339605,
>      4: 0.3063198690713853,
>      5: 0.1700057609707141,
>      6: 0.05390084497706962}
> **********************************************************************
> 2 items had failures:
>    2 of 890 in sage.graphs.generic_graph.GenericGraph.?
>    1 of   9 in sage.graphs.generic_graph.GenericGraph.minimum_cycle_basis
>     [3507 tests, 3 failures, 47.08 s]
> sage -t --long src/sage/graphs/generators/classical_geometries.py
>     [146 tests, 16.95 s]
> sage -t --long src/sage/graphs/generic_graph_pyx.pyx
>     [93 tests, 2.17 s]
> sage -t --long src/sage/graphs/generic_graph_pyx.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/generators/families.py
> **********************************************************************
> File "src/sage/graphs/generators/families.py", line 3188, in sage.graphs.generators.families.MathonPseudocyclicStronglyRegularGraph
> Failed example:
>     L = sum(i*(r[a]-r[b]) for i,(a,b) in zip(range(1,len(ff)+1), ff)); L
> Expected:
>     [ 0  1 -1 -3 -2 -4  3  4  2]
>     [-1  0  1 -4 -3 -2  2  3  4]
>     [ 1 -1  0 -2 -4 -3  4  2  3]
>     [ 3  4  2  0  1 -1 -3 -2 -4]
>     [ 2  3  4 -1  0  1 -4 -3 -2]
>     [ 4  2  3  1 -1  0 -2 -4 -3]
>     [-3 -2 -4  3  4  2  0  1 -1]
>     [-4 -3 -2  2  3  4 -1  0  1]
>     [-2 -4 -3  4  2  3  1 -1  0]
> Got:
>     [ 0 -1  1 -2 -3 -4  2  4  3]
>     [ 1  0 -1 -4 -2 -3  3  2  4]
>     [-1  1  0 -3 -4 -2  4  3  2]
>     [ 2  4  3  0 -1  1 -2 -3 -4]
>     [ 3  2  4  1  0 -1 -4 -2 -3]
>     [ 4  3  2 -1  1  0 -3 -4 -2]
>     [-2 -3 -4  2  4  3  0 -1  1]
>     [-4 -2 -3  3  2  4  1  0 -1]
>     [-3 -4 -2  4  3  2 -1  1  0]
> **********************************************************************
> 1 item had failures:
>    1 of  17 in sage.graphs.generators.families.MathonPseudocyclicStronglyRegularGraph
>     [367 tests, 1 failure, 23.54 s]
> sage -t --long src/sage/graphs/genus.pyx
>     [52 tests, 13.60 s]
> sage -t --long src/sage/graphs/graph_coloring.pyx
>     [107 tests, 4.15 s]
> sage -t --long src/sage/graphs/graph_database.py
>     [49 tests, 0.07 s]
> sage -t --long src/sage/graphs/graph_decompositions/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/graph_decompositions/bandwidth.pyx
>     [14 tests, 0.04 s]
> sage -t --long src/sage/graphs/graph_decompositions/cutwidth.pyx
>     [56 tests, 0.14 s]
> sage -t --long src/sage/graphs/graph_decompositions/fast_digraph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/graph_decompositions/fast_digraph.pyx
>     [1 test, 0.01 s]
> sage -t --long src/sage/graphs/graph_decompositions/graph_products.pyx
>     [19 tests, 0.45 s]
> sage -t --long src/sage/graphs/generators/smallgraphs.py
>     [565 tests, 29.66 s]
> sage -t --long src/sage/graphs/graph_decompositions/rankwidth.pyx
>     [23 tests, 0.05 s]
> sage -t --long src/sage/graphs/graph_decompositions/rankwidth.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/graph_decompositions/tdlib.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/graph_decompositions/modular_decomposition.py
>     [622 tests, 2.14 s]
> sage -t --long src/sage/graphs/graph_decompositions/vertex_separation.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/graph_editor.py
>     [6 tests, 0.03 s]
> sage -t --long src/sage/graphs/graph_decompositions/vertex_separation.pyx
>     [180 tests, 12.70 s]
> sage -t --long src/sage/graphs/graph.py
>     [1068 tests, 25.28 s]
> sage -t --long src/sage/graphs/graph_input.py
>     [37 tests, 0.09 s]
> sage -t --long src/sage/graphs/graph_generators_pyx.pyx
>     [7 tests, 0.38 s]
> sage -t --long src/sage/graphs/graph_latex.py
>     [194 tests, 0.17 s]
> sage -t --long src/sage/graphs/graph_generators.py
> **********************************************************************
> File "src/sage/graphs/graph_generators.py", line 915, in sage.graphs.graph_generators.GraphGenerators.nauty_geng
> Failed example:
>     list(graphs.nauty_geng("-c3", debug=True))
> Expected:
>     ['>E Usage: nauty-geng [-cCmtfbd#D#] [-uygsnh] [-lvq] \n']
> Got:
>     ['>E Usage: geng [-cCmtfbd#D#] [-uygsnh] [-lvq] [-x#X#] n [mine[:maxe]] [res/mod] [file]\n']
> **********************************************************************
> 1 item had failures:
>    1 of  16 in sage.graphs.graph_generators.GraphGenerators.nauty_geng
>     [92 tests, 1 failure, 14.83 s]
> sage -t --long src/sage/graphs/graph_plot_js.py
>     [17 tests, 0.04 s]
> sage -t --long src/sage/graphs/hyperbolicity.pyx
>     [69 tests, 0.87 s]
> sage -t --long src/sage/graphs/hypergraph_generators.py
>     [26 tests, 2.84 s]
> sage -t --long src/sage/graphs/independent_sets.pyx
>     [56 tests, 1.38 s]
> sage -t --long src/sage/graphs/independent_sets.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/graph_plot.py
>     [157 tests, 7.40 s]
> sage -t --long src/sage/graphs/graph_list.py
>     [45 tests, 7.70 s]
> sage -t --long src/sage/graphs/linearextensions.py
>     [30 tests, 0.06 s]
> sage -t --long src/sage/graphs/lovasz_theta.py
>     [3 tests, 0.03 s]
> sage -t --long src/sage/graphs/mcqd.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/mcqd.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/line_graph.pyx
>     [38 tests, 0.66 s]
> sage -t --long src/sage/graphs/partial_cube.py
>     [14 tests, 0.05 s]
> sage -t --long src/sage/graphs/isgci.py
>     [83 tests, 1.14 s]
> sage -t --long src/sage/graphs/orientations.py
>     [28 tests, 0.49 s]
> sage -t --long src/sage/graphs/pq_trees.py
>     [68 tests, 0.07 s]
> sage -t --long src/sage/graphs/print_graphs.py
>     [12 tests, 0.03 s]
> sage -t --long src/sage/graphs/path_enumeration.pyx
>     [272 tests, 0.70 s]
> sage -t --long src/sage/graphs/schnyder.py
>     [97 tests, 0.56 s]
> sage -t --long src/sage/graphs/spanning_tree.pyx
>     [107 tests, 0.55 s]
> sage -t --long src/sage/graphs/traversals.pyx
>     [167 tests, 0.26 s]
> sage -t --long src/sage/graphs/trees.pyx
>     [25 tests, 0.36 s]
> sage -t --long src/sage/graphs/trees.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/planarity.pyx
>     [10 tests, 3.61 s]
> sage -t --long src/sage/graphs/views.pyx
>     [174 tests, 0.10 s]
> sage -t --long src/sage/graphs/weakly_chordal.pyx
>     [33 tests, 0.05 s]
> sage -t --long src/sage/groups/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/abelian_gps/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/tutte_polynomial.py
>     [105 tests, 1.91 s]
> sage -t --long src/sage/graphs/matchpoly.pyx
>     [59 tests, 5.38 s]
> sage -t --long src/sage/groups/abelian_gps/abelian_aut.py
>     [121 tests, 1.23 s]
> sage -t --long src/sage/groups/abelian_gps/abelian_group_element.py
>     [32 tests, 0.57 s]
> sage -t --long src/sage/groups/abelian_gps/abelian_group_morphism.py
>     [42 tests, 0.42 s]
> sage -t --long src/sage/groups/abelian_gps/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/abelian_gps/abelian_group_gap.py
>     [163 tests, 0.69 s]
> sage -t --long src/sage/groups/abelian_gps/dual_abelian_group_element.py
>     [43 tests, 0.37 s]
> sage -t --long src/sage/groups/abelian_gps/abelian_group.py
>     [309 tests, 2.26 s]
> sage -t --long src/sage/groups/abelian_gps/element_base.py
>     [57 tests, 0.06 s]
> sage -t --long src/sage/groups/additive_abelian/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/abelian_gps/values.py
>     [81 tests, 0.08 s]
> sage -t --long src/sage/groups/abelian_gps/dual_abelian_group.py
>     [96 tests, 0.69 s]
> sage -t --long src/sage/groups/additive_abelian/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/additive_abelian/qmodnz.py
>     [39 tests, 0.12 s]
> sage -t --long src/sage/groups/additive_abelian/qmodnz_element.py
>     [73 tests, 0.04 s]
> sage -t --long src/sage/groups/affine_gps/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/additive_abelian/additive_abelian_wrapper.py
>     [51 tests, 0.34 s]
> sage -t --long src/sage/groups/additive_abelian/additive_abelian_group.py
>     [76 tests, 0.62 s]
> sage -t --long src/sage/groups/affine_gps/affine_group.py
>     [55 tests, 0.29 s]
> sage -t --long src/sage/groups/affine_gps/catalog.py
>     [1 test, 0.31 s]
> sage -t --long src/sage/groups/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/affine_gps/euclidean_group.py
>     [34 tests, 0.29 s]
> sage -t --long src/sage/groups/affine_gps/group_element.py
>     [83 tests, 0.47 s]
> sage -t --long src/sage/groups/artin.py
>     [124 tests, 1.72 s]
> sage -t --long src/sage/groups/conjugacy_classes.py
>     [135 tests, 1.65 s]
> sage -t --long src/sage/groups/braid.py
>     [328 tests, 3.41 s]
> sage -t --long src/sage/groups/finitely_presented.py
>     [327 tests, 2.08 s]
> sage -t --long src/sage/groups/class_function.py
>     [308 tests, 5.42 s]
> sage -t --long src/sage/groups/finitely_presented_catalog.py
>     [1 test, 0.32 s]
> sage -t --long src/sage/groups/free_group.py
>     [186 tests, 0.53 s]
> sage -t --long src/sage/groups/finitely_presented_named.py
>     [78 tests, 3.80 s]
> sage -t --long src/sage/groups/group.pyx
>     [48 tests, 0.29 s]
> sage -t --long src/sage/groups/group.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/generic.py
>     [223 tests, 3.64 s]
> sage -t --long src/sage/groups/group_homset.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/group_exp.py
>     [72 tests, 0.49 s]
> sage -t --long src/sage/groups/groups_catalog.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/group_semidirect_product.py
>     [79 tests, 0.49 s]
> sage -t --long src/sage/groups/indexed_free_group.py
>     [116 tests, 0.54 s]
> sage -t --long src/sage/groups/libgap_group.py
>     [13 tests, 0.21 s]
> sage -t --long src/sage/groups/libgap_mixin.py
>     [112 tests, 8.78 s]
> sage -t --long src/sage/groups/libgap_wrapper.pyx
>     [140 tests, 0.81 s]
> sage -t --long src/sage/groups/libgap_wrapper.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/lie_gps/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/lie_gps/catalog.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/graphs/strongly_regular_db.pyx
>     [318 tests, 29.35 s]
> sage -t --long src/sage/groups/matrix_gps/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/matrix_gps/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/libgap_morphism.py
>     [209 tests, 12.34 s]
> sage -t --long src/sage/groups/matrix_gps/binary_dihedral.py
>     [8 tests, 0.87 s]
> sage -t --long src/sage/groups/matrix_gps/catalog.py
>     [1 test, 0.32 s]
> sage -t --long src/sage/groups/cubic_braid.py
>     [189 tests, 22.12 s]
> sage -t --long src/sage/groups/matrix_gps/group_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/matrix_gps/group_element.pyx
>     [160 tests, 0.88 s]
> sage -t --long src/sage/groups/matrix_gps/coxeter_group.py
>     [136 tests, 3.55 s]
> sage -t --long src/sage/groups/matrix_gps/homset.py
>     [8 tests, 0.24 s]
> sage -t --long src/sage/groups/matrix_gps/isometries.py
>     [104 tests, 0.80 s]
> sage -t --long src/sage/groups/lie_gps/nilpotent_lie_group.py
>     [186 tests, 12.20 s]
> sage -t --long src/sage/groups/matrix_gps/finitely_generated.py
>     [274 tests, 12.81 s]
> sage -t --long src/sage/groups/matrix_gps/morphism.py
>     [3 tests, 0.23 s]
> sage -t --long src/sage/groups/matrix_gps/matrix_group.py
>     [106 tests, 3.99 s]
> sage -t --long src/sage/groups/matrix_gps/named_group.py
>     [34 tests, 0.69 s]
> sage -t --long src/sage/groups/matrix_gps/pickling_overrides.py
>     [28 tests, 0.24 s]
> sage -t --long src/sage/groups/matrix_gps/orthogonal.py
>     [89 tests, 1.01 s]
> sage -t --long src/sage/groups/matrix_gps/symplectic.py
>     [36 tests, 0.96 s]
> sage -t --long src/sage/groups/misc_gps/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/matrix_gps/unitary.py
>     [63 tests, 0.88 s]
> sage -t --long src/sage/groups/misc_gps/imaginary_groups.py
>     [85 tests, 0.08 s]
> sage -t --long src/sage/groups/misc_gps/misc_groups.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/misc_gps/misc_groups_catalog.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/misc_gps/argument_groups.py
>     [332 tests, 0.37 s]
> sage -t --long src/sage/groups/old.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/pari_group.py
>     [28 tests, 0.03 s]
> sage -t --long src/sage/groups/old.pyx
>     [38 tests, 0.22 s]
> sage -t --long src/sage/groups/perm_gps/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/constructor.py
>     [46 tests, 0.30 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/automorphism_group_canonical_label.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/automorphism_group_canonical_label.pyx
>     [32 tests, 0.37 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/canonical_augmentation.pyx
>     [1 test, 0.01 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/canonical_augmentation.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/matrix_gps/linear.py
>     [53 tests, 18.28 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/data_structures.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/double_coset.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/double_coset.pyx
>     [15 tests, 0.24 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/data_structures.pyx
>     [50 tests, 8.54 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_binary.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_graphs.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_binary.pyx
>     [76 tests, 4.46 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_lists.pyx
>     [3 tests, 0.01 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_lists.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_matrices.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/cubegroup.py
>     [139 tests, 12.17 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_python.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_python.pyx
>     [101 tests, 0.04 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_sets.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_sets.pyx
>     [156 tests, 0.11 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref2/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref2/refinement_generic.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref2/refinement_generic.pyx
>     [39 tests, 0.23 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_matrices.pyx
>     [25 tests, 1.82 s]
> sage -t --long src/sage/groups/perm_gps/permgroup_element.pyx
>     [374 tests, 3.52 s]
> sage -t --long src/sage/groups/perm_gps/permgroup_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/perm_gps/permgroup.py
>     [911 tests, 8.08 s]
> sage -t --long src/sage/groups/perm_gps/permgroup_morphism.py
>     [82 tests, 0.88 s]
> sage -t --long src/sage/groups/perm_gps/permutation_groups_catalog.py
>     [1 test, 0.32 s]
> sage -t --long src/sage/groups/perm_gps/symgp_conjugacy_class.py
>     [59 tests, 1.03 s]
> sage -t --long src/sage/groups/perm_gps/partn_ref/refinement_graphs.pyx
>     [122 tests, 14.08 s]
> sage -t --long src/sage/groups/semimonomial_transformations/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/semimonomial_transformations/semimonomial_transformation.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/semimonomial_transformations/semimonomial_transformation.pyx
>     [57 tests, 0.27 s]
> sage -t --long src/sage/groups/raag.py
>     [114 tests, 0.89 s]
> sage -t --long src/sage/homology/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/groups/semimonomial_transformations/semimonomial_transformation_group.py
>     [62 tests, 0.43 s]
> sage -t --long src/sage/homology/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/homology/algebraic_topological_model.py
>     [44 tests, 0.61 s]
> sage -t --long src/sage/groups/perm_gps/permgroup_named.py
>     [509 tests, 4.23 s]
> sage -t --long src/sage/homology/chain_complex.py
>     [261 tests, 0.82 s]
> sage -t --long src/sage/homology/chain_complex_homspace.py
>     [43 tests, 0.26 s]
> sage -t --long src/sage/homology/cell_complex.py
>     [161 tests, 1.41 s]
> sage -t --long src/sage/homology/chain_homotopy.py
>     [96 tests, 0.29 s]
> sage -t --long src/sage/homology/chains.py
>     [136 tests, 0.39 s]
> sage -t --long src/sage/homology/delta_complex.py
>     [167 tests, 1.70 s]
> sage -t --long src/sage/homology/cubical_complex.py
>     [254 tests, 2.18 s]
> sage -t --long src/sage/homology/chain_complex_morphism.py
>     [141 tests, 3.90 s]
> sage -t --long src/sage/homology/homology_group.py
>     [23 tests, 0.14 s]
> sage -t --long src/sage/homology/homology_morphism.py
>     [100 tests, 0.86 s]
> sage -t --long src/sage/groups/matrix_gps/heisenberg.py
>     [36 tests, 44.89 s]
> sage -t --long src/sage/homology/koszul_complex.py
>     [23 tests, 0.05 s]
> sage -t --long src/sage/homology/matrix_utils.py
>     [5 tests, 0.03 s]
> sage -t --long src/sage/homology/hochschild_complex.py
>     [171 tests, 12.12 s]
> sage -t --long src/sage/homology/simplicial_complex_homset.py
>     [49 tests, 0.05 s]
> sage -t --long src/sage/homology/simplicial_complex_morphism.py
> **********************************************************************
> File "src/sage/homology/simplicial_complex_morphism.py", line 82, in sage.homology.simplicial_complex_morphism
> Failed example:
>     z                                     # this is the mapping path space
> Expected:
>     Simplicial complex morphism:
>       From: Simplicial complex with 6 vertices and 4 facets
>       To:   Minimal triangulation of the 2-sphere
>       Defn: ['L0R(0, 0)', 'L0R(0, 1)', 'L1R(1, 0)', 'L1R(1, 1)', 'L2R(2, 0)', 'L2R(2, 1)'] --> [0, 0, 1, 1, 2, 2]
> Got:
>     Simplicial complex morphism:
>       From: Simplicial complex with 6 vertices and 5 facets
>       To:   Minimal triangulation of the 2-sphere
>       Defn: ['L0R(0, 0)', 'L0R(0, 1)', 'L1R(1, 0)', 'L1R(1, 1)', 'L2R(2, 0)', 'L2R(2, 1)'] --> [0, 0, 1, 1, 2, 2]
> **********************************************************************
> 1 item had failures:
>    1 of  39 in sage.homology.simplicial_complex_morphism
>     [221 tests, 1 failure, 0.60 s]
> sage -t --long src/sage/homology/simplicial_complexes_catalog.py
>     [6 tests, 0.27 s]
> sage -t --long src/sage/homology/homology_vector_space_with_basis.py
>     [194 tests, 13.78 s]
> sage -t --long src/sage/homology/simplicial_complex.py
>     [641 tests, 12.80 s]
> sage -t --long src/sage/homology/simplicial_set_catalog.py
>     [6 tests, 0.29 s]
> sage -t --long src/sage/homology/simplicial_set.py
>     [855 tests, 3.84 s]
> sage -t --long src/sage/homology/simplicial_set_morphism.py
>     [308 tests, 1.20 s]
> sage -t --long src/sage/homology/tests.py
>     [12 tests, 0.02 s]
> sage -t --long src/sage/interacts/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interacts/algebra.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interacts/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interacts/calculus.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/homology/simplicial_set_examples.py
>     [103 tests, 2.90 s]
> sage -t --long src/sage/interacts/fractals.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interacts/geometry.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/homology/simplicial_set_constructions.py
>     [476 tests, 3.97 s]
> sage -t --long src/sage/interacts/library_cython.pyx
>     [15 tests, 0.03 s]
> sage -t --long src/sage/interacts/statistics.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interacts/library.py
>     [27 tests, 0.86 s]
> sage -t --long src/sage/interfaces/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/axiom.py
>     [26 tests, 0.02 s]
> sage -t --long src/sage/interfaces/chomp.py
>     [44 tests, 0.24 s]
> sage -t --long src/sage/interfaces/cleaner.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interacts/debugger.py
>     [24 tests, 2.05 s]
> sage -t --long src/sage/homology/examples.py
>     [146 tests, 22.37 s]
> sage -t --long src/sage/interfaces/four_ti_2.py
>     [38 tests, 0.03 s]
> sage -t --long src/sage/interfaces/fricas.py
>     [32 tests, 0.03 s]
> sage -t --long src/sage/interfaces/frobby.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/expect.py
>     [102 tests, 9.70 s]
> sage -t --long src/sage/interfaces/gap3.py
>     [13 tests, 0.39 s]
> sage -t --long src/sage/interfaces/ecm.py
>     [44 tests, 11.41 s]
> sage -t --long src/sage/interfaces/genus2reduction.py
>     [24 tests, 0.03 s]
> sage -t --long src/sage/interfaces/gfan.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interacts/test_jupyter.rst
> **********************************************************************
> File "src/sage/interacts/test_jupyter.rst", line 280, in sage.interacts.test_jupyter
> Failed example:
>     test(interacts.statistics.coin)
> Expected:
>     Interactive function <function coin at ...> with 2 widgets
>       n: IntSlider(value=1000, min=2, max=10000, step=100, description=u'Number of Tosses')
>       interval: IntRangeSlider(value=(0, 0), min=0, max=1, step=1, description=u'Plotting range (y)')
>     doctest:...: UserWarning: Attempting to set identical bottom==top results in singular transformations; automatically expanding.
>     bottom=0.0, top=0.0
> Got:
>     Interactive function <function coin at 0x7fad9f407b80> with 2 widgets
>       n: IntSlider(value=1000, min=2, max=10000, step=100, description='Number of Tosses')
>       interval: IntRangeSlider(value=(0, 0), min=0, max=1, step=1, description='Plotting range (y)')
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.interacts.test_jupyter[26]>", line 1, in <module>
>         test(interacts.statistics.coin)
>       File "<doctest sage.interacts.test_jupyter[3]>", line 6, in test
>         return f(**kwargs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/interacts/library.py", line 781, in coin
>         show(point(c[1:], gridlines=[None, [0.5]], pointsize=1), ymin=interval[0], ymax=interval[1])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/pretty_print.py", line 258, in show
>         pretty_print(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/pretty_print.py", line 229, in pretty_print
>         dm.display_immediately(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 837, in display_immediately
>         plain_text, rich_output = self._rich_output_formatter(obj, rich_repr_kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 625, in _rich_output_formatter
>         rich_output = self._call_rich_repr(obj, rich_repr_kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 583, in _call_rich_repr
>         return obj._rich_repr_(self, **rich_repr_kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/plot/graphics.py", line 939, in _rich_repr_
>         return display_manager.graphics_from_save(
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/rich_output/display_manager.py", line 713, in graphics_from_save
>         save_function(filename, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/decorators.py", line 412, in wrapper
>         return func(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/plot/graphics.py", line 3212, in save
>         figure = self.matplotlib(**options)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/plot/graphics.py", line 2751, in matplotlib
>         subplot.set_ylim([ymin, ymax])
>       File "/usr/lib/python3/dist-packages/matplotlib/axes/_base.py", line 3603, in set_ylim
>         cbook._warn_external(
>       File "/usr/lib/python3/dist-packages/matplotlib/cbook/__init__.py", line 1993, in _warn_external
>         warnings.warn(message, category, stacklevel)
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     UserWarning: Attempting to set identical bottom == top == 0.0 results in singular transformations; automatically expanding.
> **********************************************************************
> 1 item had failures:
>    1 of  30 in sage.interacts.test_jupyter
>     [29 tests, 1 failure, 12.28 s]
> sage -t --long src/sage/interfaces/gnuplot.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/interfaces/gap_workspace.py
>     [14 tests, 3.46 s]
> sage -t --long src/sage/interfaces/giac.py
> **********************************************************************
> File "src/sage/interfaces/giac.py", line 992, in sage.interfaces.giac.GiacElement._latex_
> Failed example:
>     print(latex(giac('(x^4 - y)/(y^2-3*x)')))
> Expected:
>     "\frac{(x^{4}-y)}{(y^{2}-3\cdot x)}"
> Got:
>     "\frac{x^{4}-y}{y^{2}-3 x}"
> **********************************************************************
> 1 item had failures:
>    1 of   2 in sage.interfaces.giac.GiacElement._latex_
>     [165 tests, 1 failure, 3.99 s]
> sage -t --long src/sage/interfaces/jmoldata.py
>     [20 tests, 0.12 s]
> sage -t --long src/sage/interfaces/kash.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/kenzo.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/latte.py
>     [28 tests, 0.05 s]
> sage -t --long src/sage/interfaces/lie.py
>     [27 tests, 0.02 s]
> sage -t --long src/sage/interfaces/lisp.py
>     [77 tests, 0.57 s]
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fada09c50a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 31567.
> sage -t --long src/sage/interfaces/interface.py
>     [230 tests, 4.56 s]
> sage -t --long src/sage/interfaces/magma.py
>     [84 tests, 0.37 s]
> sage -t --long src/sage/interfaces/magma_free.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/maple.py
>     [20 tests, 0.01 s]
> sage -t --long src/sage/interfaces/gp.py
>     [158 tests, 6.36 s]
> sage -t --long src/sage/interfaces/matlab.py
>     [7 tests, 0.02 s]
> sage -t --long src/sage/interfaces/mathematica.py
>     [18 tests, 0.05 s]
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldGeneral.so)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fada09c50a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f481940, __pyx_v_self=0x7fad9f481940, 
>     __pyx_v_exc=0x7fad9f106880) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f481940, __pyx_args=0x7fad9f106880, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9f106880
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fada09c50a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fada09c50a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 31567) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash__hq1aa6s.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> sage -t --long src/sage/interfaces/macaulay2.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=31567) failed:
> sage: from sage.interfaces.macaulay2 import remove_output_labels ## line 159 ##
> sage: output = 'o1 = QQ [x, y]\n\no1 : PolynomialRing\n' ## line 160 ##
> sage: remove_output_labels(output) ## line 161 ##
> 'QQ [x, y]\n\nPolynomialRing\n'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 163 ##
> 0
> sage: macaulay2 == loads(dumps(macaulay2)) ## line 200 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 202 ##
> 0
> sage: rlm2, t = macaulay2.__reduce__() ## line 239 ##
> sage: rlm2(*t) ## line 240 ##
> Macaulay2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 242 ##
> 0
> sage: filename = tmp_filename() ## line 262 ##
> sage: f = open(filename, "w") ## line 263 ##
> sage: _ = f.write("sage_test = 7;") ## line 264 ##
> sage: f.close() ## line 265 ##
> sage: command = macaulay2._read_in_file_command(filename) ## line 266 ##
> sage: import os ## line 270 ##
> sage: os.unlink(filename) ## line 271 ##
> sage: macaulay2._read_in_file_command("test") ## line 272 ##
> 'load "test"'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 276 ##
> 0
> sage: macaulay2._object_class() ## line 479 ##
> <class 'sage.interfaces.macaulay2.Macaulay2Element'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 481 ##
> 0
> sage: macaulay2._function_class() ## line 490 ##
> <class 'sage.interfaces.macaulay2.Macaulay2Function'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 492 ##
> 0
> sage: macaulay2._function_element_class() ## line 501 ##
> <class 'sage.interfaces.macaulay2.Macaulay2FunctionElement'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 503 ##
> 0
> sage: m2 = Macaulay2(command='/wrongpath/M2') ## line 525 ##
> sage: m2('3+2') ## line 526 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 533 ##
> 0
> sage: macaulay2._left_list_delim() ## line 560 ##
> '{'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 562 ##
> 0
> sage: macaulay2._right_list_delim() ## line 571 ##
> '}'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 573 ##
> 0
> sage: macaulay2._true_symbol() ## line 582 ##
> 'true'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 584 ##
> 0
> sage: macaulay2._false_symbol() ## line 593 ##
> 'false'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 595 ##
> 0
> sage: macaulay2._false_symbol() ## line 604 ##
> 'false'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 606 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 741 ##
> sage: shell = get_test_shell() ## line 742 ##
> sage: from sage.repl.interpreter import get_test_shell ## line 748 ##
> sage: shell = get_test_shell() ## line 749 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 753 ##
> 0
> sage: R = GF(101)['x'] ## line 834 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 837 ##
> 0
> sage: R.<x,y> = GF(7)[] ## line 1083 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1096 ##
> 0
> sage: R.<x,y> = GF(7)[] ## line 1110 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1125 ##
> 0
> sage: m = matrix([[1,2],[3,4]]) ## line 1397 ##
> sage: R.<x,y> = QQ[] ## line 1420 ##
> sage: S = ZZ['x,y'].quotient('x^2-y') ## line 1434 ##
> sage: S = GF(101)['x,y'].quotient('x^2-y') ## line 1437 ##
> sage: R = GF(13)['a,b']['c,d'] ## line 1441 ##
> sage: d = 'digraph ({{1,2},{2,1},{3,1}}, EntryMode => "edges")' ## line 1469 ##
> sage: R = ZZ['a,b,c'] ## line 1478 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1516 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 1731 ##
> sage: shell = get_test_shell() ## line 1732 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1745 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 1771 ##
> sage: shell = get_test_shell() ## line 1772 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1787 ##
> 0
> sage: from sage.interfaces.macaulay2 import is_Macaulay2Element ## line 1813 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1818 ##
> 0
> sage: from sage.interfaces.macaulay2 import reduce_load_macaulay2 ## line 1850 ##
> sage: reduce_load_macaulay2() ## line 1851 ##
> Macaulay2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1853 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/interfaces/maxima.py
>     [182 tests, 7.56 s]
> sage -t --long src/sage/interfaces/mupad.py
>     [20 tests, 0.01 s]
> sage -t --long src/sage/interfaces/mwrank.py
>     [30 tests, 0.91 s]
> sage -t --long src/sage/interfaces/octave.py
>     [21 tests, 0.03 s]
> sage -t --long src/sage/interfaces/phc.py
>     [57 tests, 0.03 s]
> sage -t --long src/sage/interfaces/polymake.py
>     [54 tests, 0.05 s]
> sage -t --long src/sage/interfaces/povray.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/primecount.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/maxima_lib.py
>     [213 tests, 4.54 s]
> sage -t --long src/sage/interfaces/process.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/process.pyx
>     [39 tests, 1.85 s]
> sage -t --long src/sage/interfaces/qepcad.py
>     [154 tests, 0.27 s]
> sage -t --long src/sage/interfaces/psage.py
>     [6 tests, 4.61 s]
> sage -t --long src/sage/interfaces/gap.py
>     [227 tests, 34.53 s]
> sage -t --long src/sage/interfaces/qsieve.py
>     [11 tests, 0.86 s]
> sage -t --long src/sage/interfaces/read_data.py
>     [9 tests, 0.01 s]
> R[write to console]: Warning messages:
> 
> R[write to console]: 1: 
> R[write to console]: In sage10 + sage6 :
> R[write to console]: 
>  
> R[write to console]:  longer object length is not a multiple of shorter object length
> 
> R[write to console]: 2: 
> R[write to console]: In sqrt(sage10) :
> R[write to console]:  NaNs produced
> 
> R[write to console]: 3: 
> R[write to console]: In sqrt(sage4) :
> R[write to console]:  NaNs produced
> 
> R[write to console]: 4: 
> R[write to console]: In (function (package, help, pos = 2, lib.loc = NULL, character.only = FALSE,  :
> R[write to console]: 
>  
> R[write to console]:  libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain no packages
> 
> R[write to console]: 5: 
> R[write to console]: In (function (package, help, pos = 2, lib.loc = NULL, character.only = FALSE,  :
> R[write to console]: 
>  
> R[write to console]:  libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain no packages
> 
> R[write to console]: 6: 
> R[write to console]: In (function (package, help, pos = 2, lib.loc = NULL, character.only = FALSE,  :
> R[write to console]: 
>  
> R[write to console]:  libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain no packages
> 
> R[write to console]: 7: 
> R[write to console]: In (function (package, help, pos = 2, lib.loc = NULL, character.only = FALSE,  :
> R[write to console]: 
>  
> R[write to console]:  libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain no packages
> 
> R[write to console]: 8: 
> R[write to console]: In (function (package, help, pos = 2, lib.loc = NULL, character.only = FALSE,  :
> R[write to console]: 
>  
> R[write to console]:  libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain no packages
> 
> R[write to console]: 9: 
> R[write to console]: In (function (package, help, pos = 2, lib.loc = NULL, character.only = FALSE,  :
> R[write to console]: 
>  
> R[write to console]:  libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain no packages
> 
> R[write to console]: 10: 
> R[write to console]: In (function (package, help, pos = 2, lib.loc = NULL, character.only = FALSE,  :
> R[write to console]: 
>  
> R[write to console]:  libraries ‘/usr/local/lib/R/site-library’, ‘/usr/lib/R/site-library’ contain no packages
> 
> sage -t --long src/sage/interfaces/r.py
>     [257 tests, 3.69 s]
> sage -t --long src/sage/interfaces/quit.py
>     [19 tests, 1.62 s]
> sage -t --long src/sage/interfaces/sage0.py
>     [77 tests, 6.04 s]
> sage -t --long src/sage/interfaces/scilab.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/interfaces/sagespawn.pyx
>     [35 tests, 5.55 s]
> sage -t --long src/sage/interfaces/sympy.py
> **********************************************************************
> File "src/sage/interfaces/sympy.py", line 863, in sage.interfaces.sympy.test_all
> Failed example:
>     test_all()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.interfaces.sympy.test_all[1]>", line 1, in <module>
>         test_all()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/interfaces/sympy.py", line 966, in test_all
>         test_complex_fail()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/interfaces/sympy.py", line 879, in test_complex_fail
>         check_expression("I*y", "y")
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/interfaces/sympy.py", line 853, in check_expression
>         assert S(e_sage) == e_sympy
>       File "/usr/lib/python3/dist-packages/sympy/core/sympify.py", line 316, in sympify
>         return a._sympy_()
>       File "sage/symbolic/expression.pyx", line 1472, in sage.symbolic.expression.Expression._sympy_ (build/cythonized/sage/symbolic/expression.cpp:11439)
>         return sympy_converter(self)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/symbolic/expression_conversions.py", line 218, in __call__
>         return self.arithmetic(ex, operator)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/symbolic/expression_conversions.py", line 720, in arithmetic
>         ops = [sympy.sympify(self(a), evaluate=False) for a in ex.operands()]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/symbolic/expression_conversions.py", line 720, in <listcomp>
>         ops = [sympy.sympify(self(a), evaluate=False) for a in ex.operands()]
>       File "/usr/lib/python3/dist-packages/sympy/core/sympify.py", line 383, in sympify
>         SymPyDeprecationWarning(
>       File "/usr/lib/python3/dist-packages/sympy/utilities/exceptions.py", line 185, in warn
>         warnings.warn(self, stacklevel=stacklevel)
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 235, in showwarning_with_traceback
>         lines.extend(traceback.format_exception_only(category, category(message)))
>       File "/usr/lib/python3/dist-packages/sympy/utilities/exceptions.py", line 144, in __init__
>         raise ValueError("feature is required argument of SymPyDeprecationWarning")
>     ValueError: feature is required argument of SymPyDeprecationWarning
> **********************************************************************
> 1 item had failures:
>    1 of   3 in sage.interfaces.sympy.test_all
>     [232 tests, 1 failure, 3.41 s]
> sage -t --long src/sage/interfaces/tab_completion.py
>     [13 tests, 0.02 s]
> sage -t --long src/sage/interfaces/tachyon.py
>     [21 tests, 0.93 s]
> sage -t --long src/sage/interfaces/tests.py
> **********************************************************************
> File "src/sage/interfaces/tests.py", line 40, in sage.interfaces.tests
> Failed example:
>     subprocess.call("echo syntax error | ipython", **kwds) in (0, 1, 120)
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> 1 item had failures:
>    1 of  19 in sage.interfaces.tests
>     [18 tests, 1 failure, 1.09 s]
> sage -t --long src/sage/interfaces/tides.py
>     [120 tests, 1.04 s]
> sage -t --long src/sage/knots/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/knots/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/knots/gauss_code.py
>     [18 tests, 0.03 s]
> sage -t --long src/sage/knots/knot.py
>     [84 tests, 0.48 s]
> sage -t --long src/sage/knots/knot_table.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/singular.py
>     [392 tests, 4.74 s]
> sage -t --long src/sage/lfunctions/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/lfunctions/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/interfaces/rubik.py
>     [30 tests, 22.38 s]
> sage -t --long src/sage/interfaces/maxima_abstract.py
>     [236 tests, 44.63 s]
> sage -t --long src/sage/lfunctions/lcalc.py
>     [15 tests, 0.39 s]
> sage -t --long src/sage/lfunctions/pari.py
>     [162 tests, 1.88 s]
> sage -t --long src/sage/lfunctions/dokchitser.py
>     [96 tests, 2.94 s]
> sage -t --long src/sage/libs/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/acb.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/acb_calc.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/acb_elliptic.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/acb_hypgeom.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/acb_mat.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/acb_modular.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/acb_poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/arb.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/arf.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/arith.pyx
>     [8 tests, 0.01 s]
> sage -t --long src/sage/libs/arb/bernoulli.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/mag.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/arb/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/braiding.pyx
>     [51 tests, 0.24 s]
> sage -t --long src/sage/libs/coxeter3/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/coxeter3/coxeter.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/coxeter3/coxeter.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/knots/link.py
>     [440 tests, 4.69 s]
> sage -t --long src/sage/libs/coxeter3/decl.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/cremona/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ecl.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/coxeter3/coxeter_group.py
>     [7 tests, 0.39 s]
> sage -t --long src/sage/libs/eclib/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/eclib/__init__.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/eclib/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/eclib/constructor.py
>     [10 tests, 0.02 s]
> sage -t --long src/sage/lfunctions/sympow.py
>     [13 tests, 4.77 s]
> sage -t --long src/sage/libs/eclib/homspace.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ecl.pyx
>     [193 tests, 1.95 s]
> sage -t --long src/sage/libs/eclib/mat.pyx
>     [36 tests, 0.05 s]
> sage -t --long src/sage/libs/eclib/mat.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/eclib/homspace.pyx
>     [49 tests, 1.88 s]
> sage -t --long src/sage/libs/eclib/mwrank.pyx
>     [206 tests, 8.03 s]
> sage -t --long src/sage/libs/eclib/newforms.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/fes.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/arith.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/arith.pyx
>     [41 tests, 0.08 s]
> sage -t --long src/sage/libs/flint/flint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/flint.pyx
>     [6 tests, 0.01 s]
> sage -t --long src/sage/libs/flint/fmpq.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpq_mat.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpq_poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpz.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpz_mat.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpz_mod_poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpz_poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpz_poly.pyx
>     [84 tests, 0.03 s]
> sage -t --long src/sage/libs/flint/fmpz_poly_q.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fmpz_vec.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fq.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/fq_nmod.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/nmod_poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/lfunctions/zero_sums.pyx
>     [132 tests, 12.93 s]
> sage -t --long src/sage/libs/flint/nmod_vec.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/ntl_interface.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/padic.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/padic_poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/qadic.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/ulong_extras.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gap/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gap/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/flint/nmod_poly_linkage.pxi
>     [183 tests, 0.32 s]
> sage -t --long src/sage/libs/gap/element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gap/context_managers.py
>     [14 tests, 0.20 s]
> sage -t --long src/sage/libs/gap/gap_functions.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gap/gap_globals.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gap/gap_includes.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gap/libgap.pyx
>     [99 tests, 1.99 s]
> sage -t --long src/sage/libs/gap/element.pyx
>     [503 tests, 2.21 s]
> sage -t --long src/sage/libs/gap/saved_workspace.py
>     [7 tests, 0.01 s]
> sage -t --long src/sage/libs/eclib/interface.py
>     [192 tests, 12.64 s]
> sage -t --long src/sage/libs/gap/operations.py
>     [15 tests, 0.24 s]
> sage -t --long src/sage/libs/gap/test.py
>     [2 tests, 0.19 s]
> sage -t --long src/sage/libs/gap/util.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/giac.py
>     [7 tests, 0.10 s]
> sage -t --long src/sage/libs/gap/util.pyx
>     [21 tests, 0.20 s]
> sage -t --long src/sage/libs/glpk/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/glpk/constants.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/glpk/env.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/glpk/graph.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/glpk/lp.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/glpk/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/all.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/binop.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/misc.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/mpf.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/mpn.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/mpq.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/mpz.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/pylong.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/pylong.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/random.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/randomize.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmp/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gmpxx.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/airy.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/all.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/array.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/array.pyx
>     [22 tests, 0.01 s]
> sage -t --long src/sage/libs/gsl/bessel.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/blas.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/blas_types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/block.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/chebyshev.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/clausen.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/combination.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/complex.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/coulomb.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/coupling.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/dawson.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/debye.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/dilog.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/eigen.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/elementary.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/ellint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/elljac.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/erf.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/errno.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/exp.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/expint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/fermi_dirac.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/fft.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/glpk/error.pyx
>     [12 tests, 1.32 s]
> sage -t --long src/sage/libs/gsl/fit.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/gamma.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/gegenbauer.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/histogram.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/hyperg.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/integration.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/interp.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/laguerre.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/lambert.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/legendre.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/linalg.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/log.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/math.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/matrix.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/matrix_complex.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/min.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/monte.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/ntuple.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/odeiv.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/permutation.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/pow_int.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/psi.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/qrng.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/random.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/rng.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/roots.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/sort.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/statistics.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/sum.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/synchrotron.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/transport.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/trig.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/vector.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/vector_complex.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/wavelet.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/gsl/zeta.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/iml.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/homfly.pyx
>     [6 tests, 0.03 s]
> sage -t --long src/sage/libs/lcalc/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/lcalc/lcalc_Lfunction.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/lcalc/lcalc_Lfunction.pyx
>     [103 tests, 0.91 s]
> sage -t --long src/sage/libs/linbox/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linbox/conversion.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linbox/fflas.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linbox/givaro.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linbox/linbox.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linbox/linbox_flint_interface.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linbox/linbox_flint_interface.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linkages/padics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linkages/padics/API.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linkages/padics/Polynomial_ram.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linkages/padics/Polynomial_shared.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linkages/padics/fmpz_poly_unram.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linkages/padics/mpz.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/libecm.pyx
>     [28 tests, 1.67 s]
> sage -t --long src/sage/libs/lrcalc/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/lrcalc/lrcalc.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/lrcalc/lrcalc.pyx
>     [60 tests, 0.04 s]
> sage -t --long src/sage/libs/m4ri.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/linkages/padics/unram_shared.pxi
>     [65 tests, 0.37 s]
> sage -t --long src/sage/libs/m4rie.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/meataxe.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/meataxe.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpc/__init__.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpc/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpfi/__init__.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpfi/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpfr/__init__.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpfr/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpmath/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpmath/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpmath/ext_impl.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpmath/ext_libmp.pyx
>     [33 tests, 0.01 s]
> sage -t --long src/sage/libs/mpmath/ext_impl.pyx
>     [13 tests, 0.02 s]
> sage -t --long src/sage/libs/mpmath/ext_main.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpmath/utils.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpmath/utils.pyx
>     [76 tests, 0.08 s]
> sage -t --long src/sage/libs/mwrank/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/GF2.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/mpmath/ext_main.pyx
>     [386 tests, 0.15 s]
> sage -t --long src/sage/libs/ntl/GF2E.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/GF2EX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/GF2X.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ZZ.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ZZX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ZZ_p.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ZZ_pE.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ZZ_pEX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ZZ_pX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/conversion.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/convert.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/convert.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/decl.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/error.pyx
>     [4 tests, 0.01 s]
> sage -t --long src/sage/libs/ntl/lzz_p.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/lzz_pX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/mat_GF2.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/mat_GF2E.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/mat_ZZ.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/misc.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2.pyx
>     [50 tests, 0.02 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2E.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2EContext.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2EContext.pyx
>     [20 tests, 0.21 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2E.pyx
>     [70 tests, 0.24 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2EX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2EX.pyx
>     [31 tests, 0.02 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2X.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2X_linkage.pxi
>     [80 tests, 0.07 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ.pyx
>     [70 tests, 0.03 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_GF2X.pyx
>     [112 tests, 0.24 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_p.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_p.pyx
>     [67 tests, 0.03 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZX.pyx
>     [223 tests, 0.07 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pContext.pyx
>     [23 tests, 0.01 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pContext.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pE.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pE.pyx
>     [28 tests, 0.01 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pEContext.pyx
>     [18 tests, 0.01 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pEContext.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pEX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pEX.pyx
>     [304 tests, 0.08 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pX.pyx
>     [264 tests, 0.08 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_lzz_p.pyx
>     [48 tests, 0.02 s]
> sage -t --long src/sage/libs/ntl/ntl_lzz_p.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_ZZ_pEX_linkage.pxi
>     [76 tests, 0.38 s]
> sage -t --long src/sage/libs/ntl/ntl_lzz_pContext.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_lzz_pX.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_lzz_pContext.pyx
>     [19 tests, 0.01 s]
> sage -t --long src/sage/libs/ntl/ntl_lzz_pX.pyx
>     [142 tests, 0.05 s]
> sage -t --long src/sage/libs/ntl/ntl_mat_GF2.pyx
>     [98 tests, 0.07 s]
> sage -t --long src/sage/libs/ntl/ntl_mat_GF2.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_mat_GF2E.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_mat_GF2E.pyx
>     [124 tests, 0.60 s]
> sage -t --long src/sage/libs/ntl/ntl_mat_ZZ.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_tools.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/types.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/vec_GF2.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/vec_GF2E.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pari/__init__.py
>     [40 tests, 0.02 s]
> sage -t --long src/sage/libs/pari/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pari/convert_flint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pari/convert_flint.pyx
>     [2 tests, 0.02 s]
> sage -t --long src/sage/libs/pari/convert_gmp.pyx
>     [16 tests, 0.02 s]
> sage -t --long src/sage/libs/pari/convert_gmp.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pari/convert_sage.pyx
>     [61 tests, 0.05 s]
> sage -t --long src/sage/libs/pari/convert_sage.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pari/misc.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pari/misc.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pari/tests.py
>     [867 tests, 2.31 s]
> sage -t --long src/sage/libs/polybori/__init__.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/polybori/decl.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ntl/ntl_mat_ZZ.pyx
>     [120 tests, 4.56 s]
> sage -t --long src/sage/libs/primecount.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pynac/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pynac/constant.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/pynac/constant.pyx
>     [18 tests, 0.01 s]
> sage -t --long src/sage/libs/pynac/pynac.pyx
>     [332 tests, 3.23 s]
> sage -t --long src/sage/libs/pynac/pynac.pxd
>     [1 test, 3.14 s]
> sage -t --long src/sage/libs/ratpoints.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/ratpoints.pyx
>     [14 tests, 0.05 s]
> sage -t --long src/sage/libs/readline.pyx
>     [43 tests, 0.02 s]
> sage -t --long src/sage/libs/singular/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/singular/decl.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/singular/function.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/eclib/newforms.pyx
>     [94 tests, 30.13 s]
> sage -t --long src/sage/libs/singular/function_factory.py
>     [8 tests, 0.02 s]
> sage -t --long src/sage/libs/singular/groebner_strategy.pyx
>     [126 tests, 0.35 s]
> sage -t --long src/sage/libs/singular/groebner_strategy.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/singular/option.pyx
>     [122 tests, 0.16 s]
> sage -t --long src/sage/libs/singular/function.pyx
>     [303 tests, 1.02 s]
> sage -t --long src/sage/libs/singular/polynomial.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/singular/ring.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/singular/ring.pyx
>     [82 tests, 0.94 s]
> sage -t --long src/sage/libs/singular/singular.pyx
>     [78 tests, 0.32 s]
> sage -t --long src/sage/libs/singular/singular.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/singular/standard_options.py
>     [48 tests, 0.23 s]
> sage -t --long src/sage/libs/sirocco.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/symmetrica/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/symmetrica/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/symmetrica/kostka.pxi
>     [13 tests, 0.02 s]
> sage -t --long src/sage/libs/symmetrica/part.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/symmetrica/plet.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/symmetrica/sab.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/libs/symmetrica/sb.pxi
>     [15 tests, 0.08 s]
> sage -t --long src/sage/libs/symmetrica/sc.pxi
>     [12 tests, 0.02 s]
> sage -t --long src/sage/libs/symmetrica/schur.pxi
>     [33 tests, 0.31 s]
> sage -t --long src/sage/libs/symmetrica/symmetrica.pxi
>     [8 tests, 0.01 s]
> sage -t --long src/sage/libs/symmetrica/symmetrica.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/logic/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/logic/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/logic/booleval.py
>     [20 tests, 0.01 s]
> sage -t --long src/sage/logic/boolformula.py
>     [186 tests, 0.08 s]
> sage -t --long src/sage/logic/logic.py
>     [75 tests, 0.03 s]
> sage -t --long src/sage/logic/logicparser.py
>     [95 tests, 0.03 s]
> sage -t --long src/sage/logic/logictable.py
>     [23 tests, 0.01 s]
> sage -t --long src/sage/logic/propcalc.py
>     [60 tests, 0.04 s]
> sage -t --long src/sage/manifolds/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/manifolds/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/manifolds/calculus_method.py
> **********************************************************************
> File "src/sage/manifolds/calculus_method.py", line 56, in sage.manifolds.calculus_method._SR_to_Sympy
> Failed example:
>     b = _SR_to_Sympy(a); b
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.calculus_method._SR_to_Sympy[3]>", line 1, in <module>
>         b = _SR_to_Sympy(a); b
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/calculus_method.py", line 58, in sage.manifolds.calculus_method._SR_to_Sympy
> Failed example:
>     type(b)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.calculus_method._SR_to_Sympy[4]>", line 1, in <module>
>         type(b)
>     NameError: name 'b' is not defined
> **********************************************************************
> File "src/sage/manifolds/calculus_method.py", line 63, in sage.manifolds.calculus_method._SR_to_Sympy
> Failed example:
>     _SR_to_Sympy(b) is b
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.calculus_method._SR_to_Sympy[5]>", line 1, in <module>
>         _SR_to_Sympy(b) is b
>     NameError: name 'b' is not defined
> **********************************************************************
> File "src/sage/manifolds/calculus_method.py", line 93, in sage.manifolds.calculus_method._Sympy_to_SR
> Failed example:
>     b = _SR_to_Sympy(a); b
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.calculus_method._Sympy_to_SR[3]>", line 1, in <module>
>         b = _SR_to_Sympy(a); b
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/calculus_method.py", line 95, in sage.manifolds.calculus_method._Sympy_to_SR
> Failed example:
>     type(b)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.calculus_method._Sympy_to_SR[4]>", line 1, in <module>
>         type(b)
>     NameError: name 'b' is not defined
> **********************************************************************
> File "src/sage/manifolds/calculus_method.py", line 97, in sage.manifolds.calculus_method._Sympy_to_SR
> Failed example:
>     _Sympy_to_SR(b) == a
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.calculus_method._Sympy_to_SR[5]>", line 1, in <module>
>         _Sympy_to_SR(b) == a
>     NameError: name 'b' is not defined
> **********************************************************************
> 2 items had failures:
>    3 of   7 in sage.manifolds.calculus_method._SR_to_Sympy
>    3 of   8 in sage.manifolds.calculus_method._Sympy_to_SR
>     [86 tests, 6 failures, 2.22 s]
> sage -t --long src/sage/libs/singular/polynomial.pyx
>     [55 tests, 7.07 s]
> sage -t --long src/sage/libs/ppl.pyx
>     [1327 tests, 17.03 s]
> sage -t --long src/sage/manifolds/chart_func.py
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 140, in sage.manifolds.chart_func.ChartFunction
> Failed example:
>     f.expr('sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction[10]>", line 1, in <module>
>         f.expr('sympy')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 142, in sage.manifolds.chart_func.ChartFunction
> Failed example:
>     type(f.expr('sympy'))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction[11]>", line 1, in <module>
>         type(f.expr('sympy'))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 338, in sage.manifolds.chart_func.ChartFunction.?
> Failed example:
>     f = X.function(x^3+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.?[6]>", line 1, in <module>
>         f = X.function(x**Integer(3)+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 339, in sage.manifolds.chart_func.ChartFunction.?
> Failed example:
>     f
> Expected:
>     x**3 + y
> Got:
>     <repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9b4d95c0>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 341, in sage.manifolds.chart_func.ChartFunction.?
> Failed example:
>     TestSuite(f).run()
> Expected nothing
> Got:
>     Failure in _test_eq:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>         test_method(tester=tester)
>       File "sage/structure/element.pyx", line 739, in sage.structure.element.Element._test_eq (build/cythonized/sage/structure/element.c:6693)
>         tester.assertFalse(self == None,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1070, in __eq__
>         return bool(self.expr(self._calc_method._current) == other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
>     ------------------------------------------------------------
>     Failure in _test_nonzero_equal:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>         test_method(tester=tester)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/additive_magmas.py", line 801, in _test_nonzero_equal
>         tester.assertEqual(bool(self), self != self.parent().zero())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
>     ------------------------------------------------------------
>     The following tests failed: _test_eq, _test_nonzero_equal
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 494, in sage.manifolds.chart_func.ChartFunction.expr
> Failed example:
>     f.expr('sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.expr[5]>", line 1, in <module>
>         f.expr('sympy')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 496, in sage.manifolds.chart_func.ChartFunction.expr
> Failed example:
>     type(f.expr('sympy'))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.expr[6]>", line 1, in <module>
>         type(f.expr('sympy'))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 509, in sage.manifolds.chart_func.ChartFunction.expr
> Failed example:
>     f.expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.expr[9]>", line 1, in <module>
>         f.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 511, in sage.manifolds.chart_func.ChartFunction.expr
> Failed example:
>     f.expr() is f.expr('sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.expr[10]>", line 1, in <module>
>         f.expr() is f.expr('sympy')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 518, in sage.manifolds.chart_func.ChartFunction.expr
> Failed example:
>     for method in sorted(f._express):
>         print("'{}': {}".format(method, f._express[method]))
> Expected:
>     'SR': x^2 + y
>     'sympy': x**2 + y
> Got:
>     'SR': x^2 + y
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 579, in sage.manifolds.chart_func.ChartFunction.set_expr
> Failed example:
>     f.set_expr('sympy','x**2+1')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.set_expr[4]>", line 1, in <module>
>         f.set_expr('sympy','x**2+1')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 593, in set_expr
>         if not bool(self._calc_method._tranf[calc_method](expression) ==
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 586, in sage.manifolds.chart_func.ChartFunction.set_expr
> Failed example:
>     g.set_expr('sympy','x**2+y')
> Expected:
>     Traceback (most recent call last):
>     ...
>     ValueError: Expressions are not equal
> Got:
>     <BLANKLINE>
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.set_expr[8]>", line 1, in <module>
>         g.set_expr('sympy','x**2+y')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 593, in set_expr
>         if not bool(self._calc_method._tranf[calc_method](expression) ==
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 730, in sage.manifolds.chart_func.ChartFunction.__call__
> Failed example:
>     f(-2,3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__call__[11]>", line 1, in <module>
>         f(-Integer(2),Integer(3))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 732, in sage.manifolds.chart_func.ChartFunction.__call__
> Failed example:
>     type(f(-2,3))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__call__[12]>", line 1, in <module>
>         type(f(-Integer(2),Integer(3)))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 734, in sage.manifolds.chart_func.ChartFunction.__call__
> Failed example:
>     f(a,b)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__call__[13]>", line 1, in <module>
>         f(a,b)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 736, in sage.manifolds.chart_func.ChartFunction.__call__
> Failed example:
>     type(f(a,b))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__call__[14]>", line 1, in <module>
>         type(f(a,b))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 738, in sage.manifolds.chart_func.ChartFunction.__call__
> Failed example:
>     type(f(pi,1))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__call__[15]>", line 1, in <module>
>         type(f(pi,Integer(1)))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 740, in sage.manifolds.chart_func.ChartFunction.__call__
> Failed example:
>     f(pi, 1/2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__call__[16]>", line 1, in <module>
>         f(pi, Integer(1)/Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 742, in sage.manifolds.chart_func.ChartFunction.__call__
> Failed example:
>     type(f(pi, 1/2))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__call__[17]>", line 1, in <module>
>         type(f(pi, Integer(1)/Integer(2)))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 791, in sage.manifolds.chart_func.ChartFunction.__bool__
> Failed example:
>     g.is_zero()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__bool__[10]>", line 1, in <module>
>         g.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 793, in sage.manifolds.chart_func.ChartFunction.__bool__
> Failed example:
>     g == 0
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__bool__[11]>", line 1, in <module>
>         g == Integer(0)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1070, in __eq__
>         return bool(self.expr(self._calc_method._current) == other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 795, in sage.manifolds.chart_func.ChartFunction.__bool__
> Failed example:
>     X.zero_function().is_zero()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__bool__[12]>", line 1, in <module>
>         X.zero_function().is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 797, in sage.manifolds.chart_func.ChartFunction.__bool__
> Failed example:
>     X.zero_function() == 0
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__bool__[13]>", line 1, in <module>
>         X.zero_function() == Integer(0)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1070, in __eq__
>         return bool(self.expr(self._calc_method._current) == other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 960, in sage.manifolds.chart_func.ChartFunction.diff
> Failed example:
>     X.<x,y> = M.chart(calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/cachefunc.pyx", line 996, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5863)
>         return self.cache[k]
>       File "sage/misc/weak_dict.pyx", line 705, in sage.misc.weak_dict.WeakValueDictionary.__getitem__ (build/cythonized/sage/misc/weak_dict.c:3646)
>         raise KeyError(k)
>     KeyError: ((<class 'sage.manifolds.chart.RealChart'>, 2-dimensional topological manifold M), (('calc_method', 'sympy'), ('coordinates', ''), ('names', ('x', 'y'))))
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.diff[9]>", line 1, in <module>
>         X = M.chart(calc_method='sympy', names=('x', 'y',)); (x, y,) = X._first_ngens(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1544, in chart
>         return self._structure.chart(self, coordinates=coordinates,
>       File "sage/misc/classcall_metaclass.pyx", line 334, in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1713)
>         return cls.classcall(cls, *args, **kwds)
>       File "sage/misc/cachefunc.pyx", line 1001, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5989)
>         w = self.f(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/unique_representation.py", line 1027, in __classcall__
>         instance = typecall(cls, *args, **options)
>       File "sage/misc/classcall_metaclass.pyx", line 505, in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2163)
>         return (<PyTypeObject*>type).tp_call(cls, args, kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1606, in __init__
>         Chart.__init__(self, domain, coordinates=coordinates, names=names,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 353, in __init__
>         dom._zero_scalar_field._express[self] = self.function_ring().zero()
>       File "sage/misc/cachefunc.pyx", line 2310, in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (build/cythonized/sage/misc/cachefunc.c:12684)
>         self.cache = f(self._instance)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2707, in zero
>         return self.element_class(self, elt)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 962, in sage.manifolds.chart_func.ChartFunction.diff
> Failed example:
>     f.diff(0)
> Expected:
>     Traceback (most recent call last):
>     ...
>     ValueError: coordinate index out of range
> Got:
>     2*x
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 966, in sage.manifolds.chart_func.ChartFunction.diff
> Failed example:
>     f.diff(1)
> Expected:
>     2*x
> Got:
>     3
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 968, in sage.manifolds.chart_func.ChartFunction.diff
> Failed example:
>     f.diff(2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.diff[13]>", line 1, in <module>
>         f.diff(Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1005, in diff
>         raise ValueError("coordinate index out of range")
>     ValueError: coordinate index out of range
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 974, in sage.manifolds.chart_func.ChartFunction.diff
> Failed example:
>     X.<x,y> = M.chart(calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/cachefunc.pyx", line 996, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5863)
>         return self.cache[k]
>       File "sage/misc/weak_dict.pyx", line 705, in sage.misc.weak_dict.WeakValueDictionary.__getitem__ (build/cythonized/sage/misc/weak_dict.c:3646)
>         raise KeyError(k)
>     KeyError: ((<class 'sage.manifolds.chart.RealChart'>, 2-dimensional topological manifold M), (('calc_method', 'sympy'), ('coordinates', ''), ('names', ('x', 'y'))))
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.diff[15]>", line 1, in <module>
>         X = M.chart(calc_method='sympy', names=('x', 'y',)); (x, y,) = X._first_ngens(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1544, in chart
>         return self._structure.chart(self, coordinates=coordinates,
>       File "sage/misc/classcall_metaclass.pyx", line 334, in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1713)
>         return cls.classcall(cls, *args, **kwds)
>       File "sage/misc/cachefunc.pyx", line 1001, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5989)
>         w = self.f(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/unique_representation.py", line 1027, in __classcall__
>         instance = typecall(cls, *args, **options)
>       File "sage/misc/classcall_metaclass.pyx", line 505, in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2163)
>         return (<PyTypeObject*>type).tp_call(cls, args, kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1606, in __init__
>         Chart.__init__(self, domain, coordinates=coordinates, names=names,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 353, in __init__
>         dom._zero_scalar_field._express[self] = self.function_ring().zero()
>       File "sage/misc/cachefunc.pyx", line 2310, in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (build/cythonized/sage/misc/cachefunc.c:12684)
>         self.cache = f(self._instance)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2707, in zero
>         return self.element_class(self, elt)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 975, in sage.manifolds.chart_func.ChartFunction.diff
> Failed example:
>     f = X.function(x^2+3*y+1); f
> Expected:
>     x**2 + 3*y + 1
> Got:
>     x^2 + 3*y + 1
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1033, in sage.manifolds.chart_func.ChartFunction.__eq__
> Failed example:
>     g = X.function(x+y**2,'sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__eq__[6]>", line 1, in <module>
>         g = X.function(x+y**Integer(2),'sympy')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1034, in sage.manifolds.chart_func.ChartFunction.__eq__
> Failed example:
>     f._express; g._express
> Expected:
>     {'SR': y^2 + x}
>     {'sympy': x + y**2}
> Got:
>     {'SR': y^2 + x}
>     {'SR': y^2 + x}
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1113, in sage.manifolds.chart_func.ChartFunction.__neg__
> Failed example:
>     X.<x,y> = M.chart(calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/cachefunc.pyx", line 996, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5863)
>         return self.cache[k]
>       File "sage/misc/weak_dict.pyx", line 705, in sage.misc.weak_dict.WeakValueDictionary.__getitem__ (build/cythonized/sage/misc/weak_dict.c:3646)
>         raise KeyError(k)
>     KeyError: ((<class 'sage.manifolds.chart.RealChart'>, 2-dimensional topological manifold M), (('calc_method', 'sympy'), ('coordinates', ''), ('names', ('x', 'y'))))
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__neg__[1]>", line 1, in <module>
>         X = M.chart(calc_method='sympy', names=('x', 'y',)); (x, y,) = X._first_ngens(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1544, in chart
>         return self._structure.chart(self, coordinates=coordinates,
>       File "sage/misc/classcall_metaclass.pyx", line 334, in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1713)
>         return cls.classcall(cls, *args, **kwds)
>       File "sage/misc/cachefunc.pyx", line 1001, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5989)
>         w = self.f(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/unique_representation.py", line 1027, in __classcall__
>         instance = typecall(cls, *args, **options)
>       File "sage/misc/classcall_metaclass.pyx", line 505, in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2163)
>         return (<PyTypeObject*>type).tp_call(cls, args, kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1606, in __init__
>         Chart.__init__(self, domain, coordinates=coordinates, names=names,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 353, in __init__
>         dom._zero_scalar_field._express[self] = self.function_ring().zero()
>       File "sage/misc/cachefunc.pyx", line 2310, in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (build/cythonized/sage/misc/cachefunc.c:12684)
>         self.cache = f(self._instance)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2707, in zero
>         return self.element_class(self, elt)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1114, in sage.manifolds.chart_func.ChartFunction.__neg__
> Failed example:
>     f = X.function(x+y^2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__neg__[2]>", line 1, in <module>
>         f = X.function(x+y**Integer(2))
>     NameError: name 'X' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1115, in sage.manifolds.chart_func.ChartFunction.__neg__
> Failed example:
>     g = -f; g
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__neg__[3]>", line 1, in <module>
>         g = -f; g
>     NameError: name 'f' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1117, in sage.manifolds.chart_func.ChartFunction.__neg__
> Failed example:
>     type(g)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__neg__[4]>", line 1, in <module>
>         type(g)
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1119, in sage.manifolds.chart_func.ChartFunction.__neg__
> Failed example:
>     -g == f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__neg__[5]>", line 1, in <module>
>         -g == f
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1162, in sage.manifolds.chart_func.ChartFunction.__invert__
> Failed example:
>     X.<x,y> = M.chart(calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/cachefunc.pyx", line 996, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5863)
>         return self.cache[k]
>       File "sage/misc/weak_dict.pyx", line 705, in sage.misc.weak_dict.WeakValueDictionary.__getitem__ (build/cythonized/sage/misc/weak_dict.c:3646)
>         raise KeyError(k)
>     KeyError: ((<class 'sage.manifolds.chart.RealChart'>, 2-dimensional topological manifold M), (('calc_method', 'sympy'), ('coordinates', ''), ('names', ('x', 'y'))))
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__invert__[8]>", line 1, in <module>
>         X = M.chart(calc_method='sympy', names=('x', 'y',)); (x, y,) = X._first_ngens(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1544, in chart
>         return self._structure.chart(self, coordinates=coordinates,
>       File "sage/misc/classcall_metaclass.pyx", line 334, in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1713)
>         return cls.classcall(cls, *args, **kwds)
>       File "sage/misc/cachefunc.pyx", line 1001, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5989)
>         w = self.f(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/unique_representation.py", line 1027, in __classcall__
>         instance = typecall(cls, *args, **options)
>       File "sage/misc/classcall_metaclass.pyx", line 505, in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2163)
>         return (<PyTypeObject*>type).tp_call(cls, args, kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1606, in __init__
>         Chart.__init__(self, domain, coordinates=coordinates, names=names,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 353, in __init__
>         dom._zero_scalar_field._express[self] = self.function_ring().zero()
>       File "sage/misc/cachefunc.pyx", line 2310, in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (build/cythonized/sage/misc/cachefunc.c:12684)
>         self.cache = f(self._instance)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2707, in zero
>         return self.element_class(self, elt)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1164, in sage.manifolds.chart_func.ChartFunction.__invert__
> Failed example:
>     g = f.__invert__(); g
> Expected:
>     1/(x**2 + y**2 + 1)
> Got:
>     1/(x^2 + y^2 + 1)
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1227, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     f = X.function(x+y^2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[13]>", line 1, in <module>
>         f = X.function(x+y**Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1228, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     g = X.function(x+1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[14]>", line 1, in <module>
>         g = X.function(x+Integer(1))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1229, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     s = f + g; s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[15]>", line 1, in <module>
>         s = f + g; s.display()
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1251, in _add_
>         res = self._simplify(self.expr() + other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1231, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     (f + 0).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[16]>", line 1, in <module>
>         (f + Integer(0)).display()
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/structure/coerce_maps.pyx", line 161, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (build/cythonized/sage/structure/coerce_maps.c:4555)
>         raise
>       File "sage/structure/coerce_maps.pyx", line 156, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (build/cythonized/sage/structure/coerce_maps.c:4447)
>         return C._element_constructor(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2636, in _element_constructor_
>         return self.element_class(self, expression, calc_method=calc_method)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1233, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     (f + X.zero_function()).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[17]>", line 1, in <module>
>         (f + X.zero_function()).display()
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1251, in _add_
>         res = self._simplify(self.expr() + other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1235, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     (f + 1).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[18]>", line 1, in <module>
>         (f + Integer(1)).display()
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/structure/coerce_maps.pyx", line 161, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (build/cythonized/sage/structure/coerce_maps.c:4555)
>         raise
>       File "sage/structure/coerce_maps.pyx", line 156, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (build/cythonized/sage/structure/coerce_maps.c:4447)
>         return C._element_constructor(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2636, in _element_constructor_
>         return self.element_class(self, expression, calc_method=calc_method)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1237, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     (f + pi).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[19]>", line 1, in <module>
>         (f + pi).display()
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1456, in _lmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1239, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     (f + x).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[20]>", line 1, in <module>
>         (f + x).display()
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1456, in _lmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1241, in sage.manifolds.chart_func.ChartFunction._add_
> Failed example:
>     (f + -f).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._add_[21]>", line 1, in <module>
>         (f + -f).display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1125, in __neg__
>         resu._express[curr] = self._simplify(- self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1305, in sage.manifolds.chart_func.ChartFunction._sub_
> Failed example:
>     h = X.function(2*(x+y^2))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._sub_[14]>", line 1, in <module>
>         h = X.function(Integer(2)*(x+y**Integer(2)))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1306, in sage.manifolds.chart_func.ChartFunction._sub_
> Failed example:
>     s = h - f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._sub_[15]>", line 1, in <module>
>         s = h - f
>     NameError: name 'h' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1307, in sage.manifolds.chart_func.ChartFunction._sub_
> Failed example:
>     s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._sub_[16]>", line 1, in <module>
>         s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 678, in display
>         expr = self.expr(curr)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1309, in sage.manifolds.chart_func.ChartFunction._sub_
> Failed example:
>     s.expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._sub_[17]>", line 1, in <module>
>         s.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1362, in sage.manifolds.chart_func.ChartFunction._mul_
> Failed example:
>     f = X.function(x+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._mul_[10]>", line 1, in <module>
>         f = X.function(x+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1363, in sage.manifolds.chart_func.ChartFunction._mul_
> Failed example:
>     g = X.function(x-y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._mul_[11]>", line 1, in <module>
>         g = X.function(x-y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1364, in sage.manifolds.chart_func.ChartFunction._mul_
> Failed example:
>     s = f._mul_(g); s.expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._mul_[12]>", line 1, in <module>
>         s = f._mul_(g); s.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1366, in sage.manifolds.chart_func.ChartFunction._mul_
> Failed example:
>     (f * 0).expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._mul_[13]>", line 1, in <module>
>         (f * Integer(0)).expr()
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1203, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10077)
>         return (<Action>action)._act_(y, x)
>       File "sage/structure/coerce_actions.pyx", line 632, in sage.structure.coerce_actions.RightModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8625)
>         return (<ModuleElement>a)._lmul_(<Element>g)  # a * g
>       File "sage/structure/element.pyx", line 2402, in sage.structure.element.ModuleElement._lmul_ (build/cythonized/sage/structure/element.c:15919)
>         cpdef _lmul_(self, Element right):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1456, in _lmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1368, in sage.manifolds.chart_func.ChartFunction._mul_
> Failed example:
>     (f * X.zero_function()).expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._mul_[14]>", line 1, in <module>
>         (f * X.zero_function()).expr()
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1370, in sage.manifolds.chart_func.ChartFunction._mul_
> Failed example:
>     (f * (1/f)).expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._mul_[15]>", line 1, in <module>
>         (f * (Integer(1)/f)).expr()
>       File "sage/structure/element.pyx", line 1718, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12830)
>         return coercion_model.bin_op(left, right, truediv)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1318, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11582)
>         x_elt = (<Map>x_map)._call_(x)
>       File "sage/structure/coerce_maps.pyx", line 161, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (build/cythonized/sage/structure/coerce_maps.c:4555)
>         raise
>       File "sage/structure/coerce_maps.pyx", line 156, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_ (build/cythonized/sage/structure/coerce_maps.c:4447)
>         return C._element_constructor(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2636, in _element_constructor_
>         return self.element_class(self, expression, calc_method=calc_method)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1411, in sage.manifolds.chart_func.ChartFunction._rmul_
> Failed example:
>     f = X.function(x+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._rmul_[8]>", line 1, in <module>
>         f = X.function(x+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1412, in sage.manifolds.chart_func.ChartFunction._rmul_
> Failed example:
>     (f * pi).expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._rmul_[9]>", line 1, in <module>
>         (f * pi).expr()
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1203, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10077)
>         return (<Action>action)._act_(y, x)
>       File "sage/structure/coerce_actions.pyx", line 632, in sage.structure.coerce_actions.RightModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8625)
>         return (<ModuleElement>a)._lmul_(<Element>g)  # a * g
>       File "sage/structure/element.pyx", line 2402, in sage.structure.element.ModuleElement._lmul_ (build/cythonized/sage/structure/element.c:15919)
>         cpdef _lmul_(self, Element right):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1456, in _lmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1414, in sage.manifolds.chart_func.ChartFunction._rmul_
> Failed example:
>     (x * f).expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._rmul_[10]>", line 1, in <module>
>         (x * f).expr()
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1447, in sage.manifolds.chart_func.ChartFunction._lmul_
> Failed example:
>     f = X.function(x+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._lmul_[8]>", line 1, in <module>
>         f = X.function(x+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1448, in sage.manifolds.chart_func.ChartFunction._lmul_
> Failed example:
>     (f * 2).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._lmul_[9]>", line 1, in <module>
>         (f * Integer(2)).display()
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1203, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10077)
>         return (<Action>action)._act_(y, x)
>       File "sage/structure/coerce_actions.pyx", line 632, in sage.structure.coerce_actions.RightModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8625)
>         return (<ModuleElement>a)._lmul_(<Element>g)  # a * g
>       File "sage/structure/element.pyx", line 2402, in sage.structure.element.ModuleElement._lmul_ (build/cythonized/sage/structure/element.c:15919)
>         cpdef _lmul_(self, Element right):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1456, in _lmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1450, in sage.manifolds.chart_func.ChartFunction._lmul_
> Failed example:
>     (f * pi).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._lmul_[10]>", line 1, in <module>
>         (f * pi).display()
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1203, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10077)
>         return (<Action>action)._act_(y, x)
>       File "sage/structure/coerce_actions.pyx", line 632, in sage.structure.coerce_actions.RightModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8625)
>         return (<ModuleElement>a)._lmul_(<Element>g)  # a * g
>       File "sage/structure/element.pyx", line 2402, in sage.structure.element.ModuleElement._lmul_ (build/cythonized/sage/structure/element.c:15919)
>         cpdef _lmul_(self, Element right):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1456, in _lmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1506, in sage.manifolds.chart_func.ChartFunction._div_
> Failed example:
>     f = X.function(x+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._div_[14]>", line 1, in <module>
>         f = X.function(x+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1507, in sage.manifolds.chart_func.ChartFunction._div_
> Failed example:
>     g = X.function(1+x**2+y**2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._div_[15]>", line 1, in <module>
>         g = X.function(Integer(1)+x**Integer(2)+y**Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1508, in sage.manifolds.chart_func.ChartFunction._div_
> Failed example:
>     s = f._div_(g); s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._div_[16]>", line 1, in <module>
>         s = f._div_(g); s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1515, in _div_
>         if other.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1510, in sage.manifolds.chart_func.ChartFunction._div_
> Failed example:
>     (f / g) == ~(g / f)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._div_[17]>", line 1, in <module>
>         (f / g) == ~(g / f)
>       File "sage/structure/element.pyx", line 1716, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12795)
>         return (<Element>left)._div_(right)
>       File "sage/structure/element.pyx", line 2647, in sage.structure.element.RingElement._div_ (build/cythonized/sage/structure/element.c:18141)
>         cpdef _div_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1515, in _div_
>         if other.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1552, in sage.manifolds.chart_func.ChartFunction.exp
> Failed example:
>     f = X.function(x+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.exp[8]>", line 1, in <module>
>         f = X.function(x+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1553, in sage.manifolds.chart_func.ChartFunction.exp
> Failed example:
>     f.exp()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.exp[9]>", line 1, in <module>
>         f.exp()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1567, in exp
>         val = sympy.exp(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1555, in sage.manifolds.chart_func.ChartFunction.exp
> Failed example:
>     exp(f) # equivalent to f.exp()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.exp[10]>", line 1, in <module>
>         exp(f) # equivalent to f.exp()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1567, in exp
>         val = sympy.exp(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1557, in sage.manifolds.chart_func.ChartFunction.exp
> Failed example:
>     exp(f).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.exp[11]>", line 1, in <module>
>         exp(f).display()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1567, in exp
>         val = sympy.exp(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1559, in sage.manifolds.chart_func.ChartFunction.exp
> Failed example:
>     exp(X.zero_function())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.exp[12]>", line 1, in <module>
>         exp(X.zero_function())
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1567, in exp
>         val = sympy.exp(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1605, in sage.manifolds.chart_func.ChartFunction.log
> Failed example:
>     f = X.function(x+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.log[9]>", line 1, in <module>
>         f = X.function(x+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1606, in sage.manifolds.chart_func.ChartFunction.log
> Failed example:
>     f.log()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.log[10]>", line 1, in <module>
>         f.log()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1622, in log
>         val = sympy.log(self.expr()) if base is None else sympy.log(self.expr(), base)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1608, in sage.manifolds.chart_func.ChartFunction.log
> Failed example:
>     log(f) # equivalent to f.log()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.log[11]>", line 1, in <module>
>         log(f) # equivalent to f.log()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/functions/log.py", line 436, in log
>         return ln(args[0], **kwds)
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1622, in log
>         val = sympy.log(self.expr()) if base is None else sympy.log(self.expr(), base)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1610, in sage.manifolds.chart_func.ChartFunction.log
> Failed example:
>     log(f).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.log[12]>", line 1, in <module>
>         log(f).display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/functions/log.py", line 436, in log
>         return ln(args[0], **kwds)
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1622, in log
>         val = sympy.log(self.expr()) if base is None else sympy.log(self.expr(), base)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1612, in sage.manifolds.chart_func.ChartFunction.log
> Failed example:
>     f.log(2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.log[13]>", line 1, in <module>
>         f.log(Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1622, in log
>         val = sympy.log(self.expr()) if base is None else sympy.log(self.expr(), base)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1614, in sage.manifolds.chart_func.ChartFunction.log
> Failed example:
>     log(f, 2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/functions/log.py", line 440, in log
>         return args[0].log(args[1])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1622, in log
>         val = sympy.log(self.expr()) if base is None else sympy.log(self.expr(), base)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "sage/symbolic/function.pyx", line 572, in sage.symbolic.function.Function.__call__ (build/cythonized/sage/symbolic/function.cpp:6563)
>         args = [SR.coerce(a) for a in args]
>       File "sage/structure/parent.pyx", line 1114, in sage.structure.parent.Parent.coerce (build/cythonized/sage/structure/parent.c:10561)
>         cpdef coerce(self, x):
>       File "sage/structure/parent.pyx", line 1144, in sage.structure.parent.Parent.coerce (build/cythonized/sage/structure/parent.c:10490)
>         raise TypeError(_LazyString(_lazy_format, ("no canonical coercion from %s to %s", parent(x), self), {}))
>     TypeError: no canonical coercion from Ring of chart functions on Chart (M, (x, y)) to Symbolic Ring
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.log[14]>", line 1, in <module>
>         log(f, Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/functions/log.py", line 446, in log
>         return logb(args[0], args[1])
>       File "sage/symbolic/function.pyx", line 1138, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12260)
>         res = super(BuiltinFunction, self).__call__(
>       File "sage/symbolic/function.pyx", line 585, in sage.symbolic.function.Function.__call__ (build/cythonized/sage/symbolic/function.cpp:6725)
>         raise TypeError("cannot coerce arguments: %s" % (err))
>     TypeError: cannot coerce arguments: no canonical coercion from Ring of chart functions on Chart (M, (x, y)) to Symbolic Ring
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1661, in sage.manifolds.chart_func.ChartFunction.__pow__
> Failed example:
>     f = X.function(x+y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__pow__[10]>", line 1, in <module>
>         f = X.function(x+y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1662, in sage.manifolds.chart_func.ChartFunction.__pow__
> Failed example:
>     f.__pow__(3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__pow__[11]>", line 1, in <module>
>         f.__pow__(Integer(3))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1680, in __pow__
>         val = self.expr() ** exponent
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1664, in sage.manifolds.chart_func.ChartFunction.__pow__
> Failed example:
>     f^3  # equivalent to f.__pow__(3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__pow__[12]>", line 1, in <module>
>         f**Integer(3)  # equivalent to f.__pow__(3)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1680, in __pow__
>         val = self.expr() ** exponent
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1666, in sage.manifolds.chart_func.ChartFunction.__pow__
> Failed example:
>     f.__pow__(3).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__pow__[13]>", line 1, in <module>
>         f.__pow__(Integer(3)).display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1680, in __pow__
>         val = self.expr() ** exponent
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1668, in sage.manifolds.chart_func.ChartFunction.__pow__
> Failed example:
>     pow(f,3).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__pow__[14]>", line 1, in <module>
>         pow(f,Integer(3)).display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1680, in __pow__
>         val = self.expr() ** exponent
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1670, in sage.manifolds.chart_func.ChartFunction.__pow__
> Failed example:
>     (f^3).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__pow__[15]>", line 1, in <module>
>         (f**Integer(3)).display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1680, in __pow__
>         val = self.expr() ** exponent
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1672, in sage.manifolds.chart_func.ChartFunction.__pow__
> Failed example:
>     pow(X.zero_function(), 3).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.__pow__[16]>", line 1, in <module>
>         pow(X.zero_function(), Integer(3)).display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1680, in __pow__
>         val = self.expr() ** exponent
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1744, in sage.manifolds.chart_func.ChartFunction.cos
> Failed example:
>     f.cos()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.cos[8]>", line 1, in <module>
>         f.cos()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1754, in cos
>         val = sympy.cos(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1746, in sage.manifolds.chart_func.ChartFunction.cos
> Failed example:
>     cos(f)  # equivalent to f.cos()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.cos[9]>", line 1, in <module>
>         cos(f)  # equivalent to f.cos()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1754, in cos
>         val = sympy.cos(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1789, in sage.manifolds.chart_func.ChartFunction.sin
> Failed example:
>     f = X.function(x*y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.sin[11]>", line 1, in <module>
>         f = X.function(x*y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1790, in sage.manifolds.chart_func.ChartFunction.sin
> Failed example:
>     f.sin()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.sin[12]>", line 1, in <module>
>         f.sin()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1800, in sin
>         val = sympy.sin(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1792, in sage.manifolds.chart_func.ChartFunction.sin
> Failed example:
>     sin(f)  # equivalent to f.sin()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.sin[13]>", line 1, in <module>
>         sin(f)  # equivalent to f.sin()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1800, in sin
>         val = sympy.sin(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1831, in sage.manifolds.chart_func.ChartFunction.tan
> Failed example:
>     g = X.function(x*y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.tan[8]>", line 1, in <module>
>         g = X.function(x*y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1832, in sage.manifolds.chart_func.ChartFunction.tan
> Failed example:
>     g.tan()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.tan[9]>", line 1, in <module>
>         g.tan()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1834, in sage.manifolds.chart_func.ChartFunction.tan
> Failed example:
>     tan(g)  # equivalent to g.tan()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.tan[10]>", line 1, in <module>
>         tan(g)  # equivalent to g.tan()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1836, in sage.manifolds.chart_func.ChartFunction.tan
> Failed example:
>     tan(g).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.tan[11]>", line 1, in <module>
>         tan(g).display()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1877, in sage.manifolds.chart_func.ChartFunction.arccos
> Failed example:
>     f = X.function(x*y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccos[9]>", line 1, in <module>
>         f = X.function(x*y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1878, in sage.manifolds.chart_func.ChartFunction.arccos
> Failed example:
>     f.arccos()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccos[10]>", line 1, in <module>
>         f.arccos()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1892, in arccos
>         val = sympy.acos(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1880, in sage.manifolds.chart_func.ChartFunction.arccos
> Failed example:
>     arccos(f)  # equivalent to f.arccos()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccos[11]>", line 1, in <module>
>         arccos(f)  # equivalent to f.arccos()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1892, in arccos
>         val = sympy.acos(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1882, in sage.manifolds.chart_func.ChartFunction.arccos
> Failed example:
>     acos(f)  # equivalent to f.arccos()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccos[12]>", line 1, in <module>
>         acos(f)  # equivalent to f.arccos()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1892, in arccos
>         val = sympy.acos(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1884, in sage.manifolds.chart_func.ChartFunction.arccos
> Failed example:
>     arccos(f).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccos[13]>", line 1, in <module>
>         arccos(f).display()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1892, in arccos
>         val = sympy.acos(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1925, in sage.manifolds.chart_func.ChartFunction.arcsin
> Failed example:
>     f.arcsin()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arcsin[9]>", line 1, in <module>
>         f.arcsin()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1937, in arcsin
>         val = sympy.asin(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1927, in sage.manifolds.chart_func.ChartFunction.arcsin
> Failed example:
>     arcsin(f)  # equivalent to f.arcsin()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arcsin[10]>", line 1, in <module>
>         arcsin(f)  # equivalent to f.arcsin()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1937, in arcsin
>         val = sympy.asin(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1929, in sage.manifolds.chart_func.ChartFunction.arcsin
> Failed example:
>     asin(f)  # equivalent to f.arcsin()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arcsin[11]>", line 1, in <module>
>         asin(f)  # equivalent to f.arcsin()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1937, in arcsin
>         val = sympy.asin(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1970, in sage.manifolds.chart_func.ChartFunction.arctan
> Failed example:
>     f.arctan()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arctan[9]>", line 1, in <module>
>         f.arctan()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1982, in arctan
>         val = sympy.atan(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1972, in sage.manifolds.chart_func.ChartFunction.arctan
> Failed example:
>     arctan(f)  # equivalent to f.arctan()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arctan[10]>", line 1, in <module>
>         arctan(f)  # equivalent to f.arctan()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1982, in arctan
>         val = sympy.atan(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 1974, in sage.manifolds.chart_func.ChartFunction.arctan
> Failed example:
>     atan(f)  # equivalent to f.arctan()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arctan[11]>", line 1, in <module>
>         atan(f)  # equivalent to f.arctan()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1982, in arctan
>         val = sympy.atan(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2013, in sage.manifolds.chart_func.ChartFunction.cosh
> Failed example:
>     f.cosh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.cosh[8]>", line 1, in <module>
>         f.cosh()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2023, in cosh
>         val = sympy.cosh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2015, in sage.manifolds.chart_func.ChartFunction.cosh
> Failed example:
>     cosh(f)  # equivalent to f.cosh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.cosh[9]>", line 1, in <module>
>         cosh(f)  # equivalent to f.cosh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2023, in cosh
>         val = sympy.cosh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2054, in sage.manifolds.chart_func.ChartFunction.sinh
> Failed example:
>     f.sinh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.sinh[8]>", line 1, in <module>
>         f.sinh()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2064, in sinh
>         val = sympy.sinh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2056, in sage.manifolds.chart_func.ChartFunction.sinh
> Failed example:
>     sinh(f)  # equivalent to f.sinh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.sinh[9]>", line 1, in <module>
>         sinh(f)  # equivalent to f.sinh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2064, in sinh
>         val = sympy.sinh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2095, in sage.manifolds.chart_func.ChartFunction.tanh
> Failed example:
>     f.tanh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.tanh[8]>", line 1, in <module>
>         f.tanh()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2105, in tanh
>         val = sympy.tanh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2097, in sage.manifolds.chart_func.ChartFunction.tanh
> Failed example:
>     tanh(f)  # equivalent to f.tanh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.tanh[9]>", line 1, in <module>
>         tanh(f)  # equivalent to f.tanh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2105, in tanh
>         val = sympy.tanh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2138, in sage.manifolds.chart_func.ChartFunction.arccosh
> Failed example:
>     f.arccosh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccosh[9]>", line 1, in <module>
>         f.arccosh()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2150, in arccosh
>         val = sympy.acosh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2140, in sage.manifolds.chart_func.ChartFunction.arccosh
> Failed example:
>     arccosh(f)  # equivalent to f.arccosh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccosh[10]>", line 1, in <module>
>         arccosh(f)  # equivalent to f.arccosh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2150, in arccosh
>         val = sympy.acosh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2142, in sage.manifolds.chart_func.ChartFunction.arccosh
> Failed example:
>     acosh(f)  # equivalent to f.arccosh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arccosh[11]>", line 1, in <module>
>         acosh(f)  # equivalent to f.arccosh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2150, in arccosh
>         val = sympy.acosh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2183, in sage.manifolds.chart_func.ChartFunction.arcsinh
> Failed example:
>     f.arcsinh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arcsinh[9]>", line 1, in <module>
>         f.arcsinh()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2195, in arcsinh
>         val = sympy.asinh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2185, in sage.manifolds.chart_func.ChartFunction.arcsinh
> Failed example:
>     arcsinh(f)  # equivalent to f.arcsinh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arcsinh[10]>", line 1, in <module>
>         arcsinh(f)  # equivalent to f.arcsinh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2195, in arcsinh
>         val = sympy.asinh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2187, in sage.manifolds.chart_func.ChartFunction.arcsinh
> Failed example:
>     asinh(f)  # equivalent to f.arcsinh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arcsinh[11]>", line 1, in <module>
>         asinh(f)  # equivalent to f.arcsinh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2195, in arcsinh
>         val = sympy.asinh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2228, in sage.manifolds.chart_func.ChartFunction.arctanh
> Failed example:
>     f.arctanh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arctanh[9]>", line 1, in <module>
>         f.arctanh()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2240, in arctanh
>         val = sympy.atanh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2230, in sage.manifolds.chart_func.ChartFunction.arctanh
> Failed example:
>     arctanh(f)  # equivalent to f.arctanh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arctanh[10]>", line 1, in <module>
>         arctanh(f)  # equivalent to f.arctanh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2240, in arctanh
>         val = sympy.atanh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2232, in sage.manifolds.chart_func.ChartFunction.arctanh
> Failed example:
>     atanh(f)  # equivalent to f.arctanh()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.arctanh[11]>", line 1, in <module>
>         atanh(f)  # equivalent to f.arctanh()
>       File "sage/symbolic/function.pyx", line 1131, in sage.symbolic.function.BuiltinFunction.__call__ (build/cythonized/sage/symbolic/function.cpp:12058)
>         res = method(*method_args[1:])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2240, in arctanh
>         val = sympy.atanh(self.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2265, in sage.manifolds.chart_func.ChartFunction._del_derived
> Failed example:
>     f = X.function(cos(x*y))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._del_derived[9]>", line 1, in <module>
>         f = X.function(cos(x*y))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2267, in sage.manifolds.chart_func.ChartFunction._del_derived
> Failed example:
>     f.diff(x)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._del_derived[11]>", line 1, in <module>
>         f.diff(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 995, in diff
>         self._der = [type(self)(self.parent(),
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 996, in <listcomp>
>         self._simplify(sympy.diff(self.expr(),
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2269, in sage.manifolds.chart_func.ChartFunction._del_derived
> Failed example:
>     f._der
> Expected:
>     [-y*sin(x*y), -x*sin(x*y)]
> Got:
>     <BLANKLINE>
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2271, in sage.manifolds.chart_func.ChartFunction._del_derived
> Failed example:
>     type(f._der[0]._express['sympy'])
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction._del_derived[13]>", line 1, in <module>
>         type(f._der[Integer(0)]._express['sympy'])
>     TypeError: 'NoneType' object is not subscriptable
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2346, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     X.<x,y> = M.chart(calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/cachefunc.pyx", line 996, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5863)
>         return self.cache[k]
>       File "sage/misc/weak_dict.pyx", line 705, in sage.misc.weak_dict.WeakValueDictionary.__getitem__ (build/cythonized/sage/misc/weak_dict.c:3646)
>         raise KeyError(k)
>     KeyError: ((<class 'sage.manifolds.chart.RealChart'>, 2-dimensional topological manifold M), (('calc_method', 'sympy'), ('coordinates', ''), ('names', ('x', 'y'))))
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.simplify[19]>", line 1, in <module>
>         X = M.chart(calc_method='sympy', names=('x', 'y',)); (x, y,) = X._first_ngens(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1544, in chart
>         return self._structure.chart(self, coordinates=coordinates,
>       File "sage/misc/classcall_metaclass.pyx", line 334, in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1713)
>         return cls.classcall(cls, *args, **kwds)
>       File "sage/misc/cachefunc.pyx", line 1001, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5989)
>         w = self.f(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/unique_representation.py", line 1027, in __classcall__
>         instance = typecall(cls, *args, **options)
>       File "sage/misc/classcall_metaclass.pyx", line 505, in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2163)
>         return (<PyTypeObject*>type).tp_call(cls, args, kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1606, in __init__
>         Chart.__init__(self, domain, coordinates=coordinates, names=names,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 353, in __init__
>         dom._zero_scalar_field._express[self] = self.function_ring().zero()
>       File "sage/misc/cachefunc.pyx", line 2310, in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (build/cythonized/sage/misc/cachefunc.c:12684)
>         self.cache = f(self._instance)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2707, in zero
>         return self.element_class(self, elt)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2347, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     f = X.function(cos(x)^2 + sin(x)^2 + sqrt(x^2)); f
> Expected:
>     sin(x)**2 + cos(x)**2 + Abs(x)
> Got:
>     cos(x)^2 + sin(x)^2 + abs(x)
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2349, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     f.simplify()
> Expected:
>     Abs(x) + 1
> Got:
>     abs(x) + 1
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2354, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     f = X.function((x^2-1)/(x+1)); f
> Expected:
>     (x**2 - 1)/(x + 1)
> Got:
>     (x^2 - 1)/(x + 1)
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2362, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     X.<x,y> = M.chart('x:(1,+oo) y', calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/cachefunc.pyx", line 996, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5863)
>         return self.cache[k]
>       File "sage/misc/weak_dict.pyx", line 705, in sage.misc.weak_dict.WeakValueDictionary.__getitem__ (build/cythonized/sage/misc/weak_dict.c:3646)
>         raise KeyError(k)
>     KeyError: ((<class 'sage.manifolds.chart.RealChart'>, 2-dimensional topological manifold M), (('calc_method', 'sympy'), ('coordinates', 'x:(1,+oo) y'), ('names', ('x', 'y'))))
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.simplify[25]>", line 1, in <module>
>         X = M.chart('x:(1,+oo) y', calc_method='sympy', names=('x', 'y',)); (x, y,) = X._first_ngens(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1544, in chart
>         return self._structure.chart(self, coordinates=coordinates,
>       File "sage/misc/classcall_metaclass.pyx", line 334, in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1713)
>         return cls.classcall(cls, *args, **kwds)
>       File "sage/misc/cachefunc.pyx", line 1001, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5989)
>         w = self.f(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/unique_representation.py", line 1027, in __classcall__
>         instance = typecall(cls, *args, **options)
>       File "sage/misc/classcall_metaclass.pyx", line 505, in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2163)
>         return (<PyTypeObject*>type).tp_call(cls, args, kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1606, in __init__
>         Chart.__init__(self, domain, coordinates=coordinates, names=names,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 353, in __init__
>         dom._zero_scalar_field._express[self] = self.function_ring().zero()
>       File "sage/misc/cachefunc.pyx", line 2310, in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (build/cythonized/sage/misc/cachefunc.c:12684)
>         self.cache = f(self._instance)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2707, in zero
>         return self.element_class(self, elt)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2363, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     f = X.function(sqrt(x^2-2*x+1)); f
> Expected:
>     sqrt(x**2 - 2*x + 1)
> Got:
>     sqrt(x^2 - 2*x + 1)
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2372, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     X.<x,y> = M.chart('x:(-oo,0) y', calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/misc/cachefunc.pyx", line 996, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5863)
>         return self.cache[k]
>       File "sage/misc/weak_dict.pyx", line 705, in sage.misc.weak_dict.WeakValueDictionary.__getitem__ (build/cythonized/sage/misc/weak_dict.c:3646)
>         raise KeyError(k)
>     KeyError: ((<class 'sage.manifolds.chart.RealChart'>, 2-dimensional topological manifold M), (('calc_method', 'sympy'), ('coordinates', 'x:(-oo,0) y'), ('names', ('x', 'y'))))
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.simplify[30]>", line 1, in <module>
>         X = M.chart('x:(-oo,0) y', calc_method='sympy', names=('x', 'y',)); (x, y,) = X._first_ngens(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1544, in chart
>         return self._structure.chart(self, coordinates=coordinates,
>       File "sage/misc/classcall_metaclass.pyx", line 334, in sage.misc.classcall_metaclass.ClasscallMetaclass.__call__ (build/cythonized/sage/misc/classcall_metaclass.c:1713)
>         return cls.classcall(cls, *args, **kwds)
>       File "sage/misc/cachefunc.pyx", line 1001, in sage.misc.cachefunc.CachedFunction.__call__ (build/cythonized/sage/misc/cachefunc.c:5989)
>         w = self.f(*args, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/unique_representation.py", line 1027, in __classcall__
>         instance = typecall(cls, *args, **options)
>       File "sage/misc/classcall_metaclass.pyx", line 505, in sage.misc.classcall_metaclass.typecall (build/cythonized/sage/misc/classcall_metaclass.c:2163)
>         return (<PyTypeObject*>type).tp_call(cls, args, kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1606, in __init__
>         Chart.__init__(self, domain, coordinates=coordinates, names=names,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 353, in __init__
>         dom._zero_scalar_field._express[self] = self.function_ring().zero()
>       File "sage/misc/cachefunc.pyx", line 2310, in sage.misc.cachefunc.CachedMethodCallerNoArgs.__call__ (build/cythonized/sage/misc/cachefunc.c:12684)
>         self.cache = f(self._instance)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2707, in zero
>         return self.element_class(self, elt)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2373, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     f = X.function(sqrt(x^2-2*x+1)); f
> Expected:
>     sqrt(x**2 - 2*x + 1)
> Got:
>     sqrt(x^2 - 2*x + 1)
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2375, in sage.manifolds.chart_func.ChartFunction.simplify
> Failed example:
>     f.simplify()
> Expected:
>     1 - x
> Got:
>     -x + 1
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2432, in sage.manifolds.chart_func.ChartFunction.factor
> Failed example:
>     g = X.function(x^2 + 2*x*y + y^2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.factor[7]>", line 1, in <module>
>         g = X.function(x**Integer(2) + Integer(2)*x*y + y**Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2433, in sage.manifolds.chart_func.ChartFunction.factor
> Failed example:
>     g.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.factor[8]>", line 1, in <module>
>         g.display()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2435, in sage.manifolds.chart_func.ChartFunction.factor
> Failed example:
>     g.factor()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.factor[9]>", line 1, in <module>
>         g.factor()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2472, in sage.manifolds.chart_func.ChartFunction.expand
> Failed example:
>     g = X.function((x - y)^2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.expand[7]>", line 1, in <module>
>         g = X.function((x - y)**Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2473, in sage.manifolds.chart_func.ChartFunction.expand
> Failed example:
>     g.expand()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.expand[8]>", line 1, in <module>
>         g.expand()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2516, in sage.manifolds.chart_func.ChartFunction.collect
> Failed example:
>     f = X.function(x^2*y + x*y + (x*y)^2)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.collect[7]>", line 1, in <module>
>         f = X.function(x**Integer(2)*y + x*y + (x*y)**Integer(2))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2517, in sage.manifolds.chart_func.ChartFunction.collect
> Failed example:
>     f.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.collect[8]>", line 1, in <module>
>         f.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 678, in display
>         expr = self.expr(curr)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2519, in sage.manifolds.chart_func.ChartFunction.collect
> Failed example:
>     f.collect(y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.collect[9]>", line 1, in <module>
>         f.collect(y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2524, in collect
>         self._express[curr] = self.expr().collect(s)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2561, in sage.manifolds.chart_func.ChartFunction.collect_common_factors
> Failed example:
>     g = X.function(x/(x^2*y + x*y))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.collect_common_factors[7]>", line 1, in <module>
>         g = X.function(x/(x**Integer(2)*y + x*y))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2562, in sage.manifolds.chart_func.ChartFunction.collect_common_factors
> Failed example:
>     g.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.collect_common_factors[8]>", line 1, in <module>
>         g.display()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2564, in sage.manifolds.chart_func.ChartFunction.collect_common_factors
> Failed example:
>     g.collect_common_factors()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.ChartFunction.collect_common_factors[9]>", line 1, in <module>
>         g.collect_common_factors()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2918, in sage.manifolds.chart_func.MultiCoordFunction.expr
> Failed example:
>     f.expr('sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.MultiCoordFunction.expr[5]>", line 1, in <module>
>         f.expr('sympy')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in expr
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in <genexpr>
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 2920, in sage.manifolds.chart_func.MultiCoordFunction.expr
> Failed example:
>     type(f.expr('sympy')[0])
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.MultiCoordFunction.expr[6]>", line 1, in <module>
>         type(f.expr('sympy')[Integer(0)])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in expr
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in <genexpr>
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 3188, in sage.manifolds.chart_func.MultiCoordFunction.jacobian_det
> Failed example:
>     g = X.multifunction(x*y^3, e^x)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.MultiCoordFunction.jacobian_det[10]>", line 1, in <module>
>         g = X.multifunction(x*y**Integer(3), e**x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1319, in multifunction
>         return MultiCoordFunction(self, expressions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2844, in __init__
>         self._functions = tuple(chart.function(express)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2844, in <genexpr>
>         self._functions = tuple(chart.function(express)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 3189, in sage.manifolds.chart_func.MultiCoordFunction.jacobian_det
> Failed example:
>     g.jacobian_det()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.MultiCoordFunction.jacobian_det[11]>", line 1, in <module>
>         g.jacobian_det()
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart_func.py", line 3191, in sage.manifolds.chart_func.MultiCoordFunction.jacobian_det
> Failed example:
>     type(g.jacobian_det().expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart_func.MultiCoordFunction.jacobian_det[12]>", line 1, in <module>
>         type(g.jacobian_det().expr())
>     NameError: name 'g' is not defined
> **********************************************************************
> 39 items had failures:
>    2 of  67 in sage.manifolds.chart_func.ChartFunction
>    3 of  14 in sage.manifolds.chart_func.ChartFunction.?
>    4 of  15 in sage.manifolds.chart_func.ChartFunction.__bool__
>    7 of  19 in sage.manifolds.chart_func.ChartFunction.__call__
>    2 of  17 in sage.manifolds.chart_func.ChartFunction.__eq__
>    2 of  15 in sage.manifolds.chart_func.ChartFunction.__invert__
>    5 of   7 in sage.manifolds.chart_func.ChartFunction.__neg__
>    7 of  18 in sage.manifolds.chart_func.ChartFunction.__pow__
>    9 of  23 in sage.manifolds.chart_func.ChartFunction._add_
>    4 of  17 in sage.manifolds.chart_func.ChartFunction._del_derived
>    4 of  19 in sage.manifolds.chart_func.ChartFunction._div_
>    3 of  12 in sage.manifolds.chart_func.ChartFunction._lmul_
>    6 of  17 in sage.manifolds.chart_func.ChartFunction._mul_
>    3 of  12 in sage.manifolds.chart_func.ChartFunction._rmul_
>    4 of  19 in sage.manifolds.chart_func.ChartFunction._sub_
>    5 of  15 in sage.manifolds.chart_func.ChartFunction.arccos
>    3 of  13 in sage.manifolds.chart_func.ChartFunction.arccosh
>    3 of  13 in sage.manifolds.chart_func.ChartFunction.arcsin
>    3 of  13 in sage.manifolds.chart_func.ChartFunction.arcsinh
>    3 of  13 in sage.manifolds.chart_func.ChartFunction.arctan
>    3 of  13 in sage.manifolds.chart_func.ChartFunction.arctanh
>    3 of  11 in sage.manifolds.chart_func.ChartFunction.collect
>    3 of  11 in sage.manifolds.chart_func.ChartFunction.collect_common_factors
>    2 of  11 in sage.manifolds.chart_func.ChartFunction.cos
>    2 of  11 in sage.manifolds.chart_func.ChartFunction.cosh
>    6 of  20 in sage.manifolds.chart_func.ChartFunction.diff
>    5 of  14 in sage.manifolds.chart_func.ChartFunction.exp
>    2 of  10 in sage.manifolds.chart_func.ChartFunction.expand
>    5 of  20 in sage.manifolds.chart_func.ChartFunction.expr
>    3 of  11 in sage.manifolds.chart_func.ChartFunction.factor
>    6 of  16 in sage.manifolds.chart_func.ChartFunction.log
>    2 of  10 in sage.manifolds.chart_func.ChartFunction.set_expr
>    9 of  40 in sage.manifolds.chart_func.ChartFunction.simplify
>    3 of  15 in sage.manifolds.chart_func.ChartFunction.sin
>    2 of  11 in sage.manifolds.chart_func.ChartFunction.sinh
>    4 of  13 in sage.manifolds.chart_func.ChartFunction.tan
>    2 of  11 in sage.manifolds.chart_func.ChartFunction.tanh
>    2 of   9 in sage.manifolds.chart_func.MultiCoordFunction.expr
>    3 of  19 in sage.manifolds.chart_func.MultiCoordFunction.jacobian_det
>     [785 tests, 149 failures, 13.71 s]
> sage -t --long src/sage/manifolds/chart.py
> **********************************************************************
> File "src/sage/manifolds/chart.py", line 1073, in sage.manifolds.chart.Chart.?
> Failed example:
>     g = X.function(x^2 + x*cos(y), calc_method='sympy')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart.Chart.?[7]>", line 1, in <module>
>         g = X.function(x**Integer(2) + x*cos(y), calc_method='sympy')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart.py", line 1074, in sage.manifolds.chart.Chart.?
> Failed example:
>     g._express
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart.Chart.?[8]>", line 1, in <module>
>         g._express
>     NameError: name 'g' is not defined
> **********************************************************************
> File "src/sage/manifolds/chart.py", line 1246, in sage.manifolds.chart.Chart.calculus_method
> Failed example:
>     f.expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart.Chart.calculus_method[9]>", line 1, in <module>
>         f.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart.py", line 1248, in sage.manifolds.chart.Chart.calculus_method
> Failed example:
>     type(f.expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart.Chart.calculus_method[10]>", line 1, in <module>
>         type(f.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart.py", line 1250, in sage.manifolds.chart.Chart.calculus_method
> Failed example:
>     parent(f.expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart.Chart.calculus_method[11]>", line 1, in <module>
>         parent(f.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/chart.py", line 1252, in sage.manifolds.chart.Chart.calculus_method
> Failed example:
>     f.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.chart.Chart.calculus_method[12]>", line 1, in <module>
>         f.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 678, in display
>         expr = self.expr(curr)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> 2 items had failures:
>    2 of  34 in sage.manifolds.chart.Chart.?
>    4 of  16 in sage.manifolds.chart.Chart.calculus_method
>     [526 tests, 6 failures, 53.90 s]
> sage -t --long src/sage/libs/gap/test_long.py
>     [6 tests, 45.42 s]
> sage -t --long src/sage/manifolds/differentiable/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/manifolds/catalog.py
>     [31 tests, 42.35 s]
> sage -t --long src/sage/manifolds/continuous_map.py
> **********************************************************************
> File "src/sage/manifolds/continuous_map.py", line 1038, in sage.manifolds.continuous_map.ContinuousMap.display
> Failed example:
>     Phi.display(c_xy, c_cart)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.continuous_map.ContinuousMap.display[19]>", line 1, in <module>
>         Phi.display(c_xy, c_cart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/continuous_map.py", line 1125, in display
>         _display_expression(self, chart1, chart2, result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/continuous_map.py", line 1061, in _display_expression
>         expression = coord_func.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in expr
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in <genexpr>
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/continuous_map.py", line 1042, in sage.manifolds.continuous_map.ContinuousMap.display
> Failed example:
>     latex(Phi.display(c_xy, c_cart))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.continuous_map.ContinuousMap.display[20]>", line 1, in <module>
>         latex(Phi.display(c_xy, c_cart))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/continuous_map.py", line 1125, in display
>         _display_expression(self, chart1, chart2, result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/continuous_map.py", line 1061, in _display_expression
>         expression = coord_func.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in expr
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2929, in <genexpr>
>         return tuple(func.expr(method=method) for func in self._functions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/continuous_map.py", line 1225, in sage.manifolds.continuous_map.ContinuousMap.coord_functions
> Failed example:
>     Phi = M.continuous_map(N, (u*v, u/v, u+v), name='Phi',
>                            latex_name=r'\Phi')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.continuous_map.ContinuousMap.coord_functions[28]>", line 1, in <module>
>         Phi = M.continuous_map(N, (u*v, u/v, u+v), name='Phi',
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 2048, in continuous_map
>         return homset(coord_functions, name=name, latex_name=latex_name)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold_homset.py", line 367, in __call__
>         return Parent.__call__(self, *args, **kwds)
>       File "sage/structure/parent.pyx", line 902, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9244)
>         return mor._call_with_args(x, args, kwds)
>       File "sage/structure/coerce_maps.pyx", line 180, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_with_args (build/cythonized/sage/structure/coerce_maps.c:5080)
>         raise
>       File "sage/structure/coerce_maps.pyx", line 170, in sage.structure.coerce_maps.DefaultConvertMap_unique._call_with_args (build/cythonized/sage/structure/coerce_maps.c:4870)
>         return C._element_constructor(x, **kwds)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold_homset.py", line 264, in _element_constructor_
>         return self.element_class(self, coord_functions=coord_functions,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/continuous_map.py", line 429, in __init__
>         chart_pair[0].multifunction(*expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1319, in multifunction
>         return MultiCoordFunction(self, expressions)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2844, in __init__
>         self._functions = tuple(chart.function(express)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 2844, in <genexpr>
>         self._functions = tuple(chart.function(express)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/continuous_map.py", line 1227, in sage.manifolds.continuous_map.ContinuousMap.coord_functions
> Failed example:
>     Phi.coord_functions(c_uv, c_xyz)
> Expected:
>     Coordinate functions (u*v, u/v, u + v) on the Chart (M, (u, v))
> Got:
>     <repr(<sage.manifolds.chart_func.MultiCoordFunction at 0x7fad9b39b190>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>
> **********************************************************************
> File "src/sage/manifolds/continuous_map.py", line 1229, in sage.manifolds.continuous_map.ContinuousMap.coord_functions
> Failed example:
>     Phi.coord_functions(c_UV, c_xyz)
> Expected:
>     Coordinate functions (-U**2/4 + V**2/4, -(U + V)/(U - V), V)
>      on the Chart (M, (U, V))
> Got:
>     <repr(<sage.manifolds.chart_func.MultiCoordFunction at 0x7fad9b2d6610>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>
> **********************************************************************
> File "src/sage/manifolds/continuous_map.py", line 1232, in sage.manifolds.continuous_map.ContinuousMap.coord_functions
> Failed example:
>     Phi.coord_functions(c_UV, c_XYZ)
> Expected:
>     Coordinate functions ((-U**3 + U**2*V + U*V**2 + 2*U*V + 6*U - V**3
>      - 2*V**2 + 6*V)/(2*(U - V)), (U**3/4 - U**2*V/4 - U*V**2/4 + U*V
>      - U + V**3/4 - V**2 - V)/(U - V), (U**3 - U**2*V - U*V**2 - 4*U*V
>      - 8*U + V**3 + 4*V**2 - 8*V)/(4*(U - V))) on the Chart (M, (U, V))
> Got:
>     <repr(<sage.manifolds.chart_func.MultiCoordFunction at 0x7fad9b2d6790>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>
> **********************************************************************
> 2 items had failures:
>    4 of  33 in sage.manifolds.continuous_map.ContinuousMap.coord_functions
>    2 of  22 in sage.manifolds.continuous_map.ContinuousMap.display
>     [375 tests, 6 failures, 33.07 s]
> sage -t --long src/sage/manifolds/differentiable/affine_connection.py
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 299, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     nab[0,0,0], nab[1,0,1] = x, x*y
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[53]>", line 1, in <module>
>         nab[Integer(0),Integer(0),Integer(0)], nab[Integer(1),Integer(0),Integer(1)] = x, x*y
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1047, in __setitem__
>         self.set_coef(frame)[args] = value
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 937, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 300, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     for i in M.irange():
>         for j in M.irange():
>             for k in M.irange():
>                 nab.add_coef(eV)[i,j,k] = nab.coef(eVW)[i,j,k,c_uvW].expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[54]>", line 4, in <module>
>         nab.add_coef(eV)[i,j,k] = nab.coef(eVW)[i,j,k,c_uvW].expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 665, in coef
>         nab_evi = self(ev[i])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1388, in __call__
>         return self._derive_paral(tensor_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1519, in _derive_paral
>         rsum = frame[p](tc[[ind0]])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/vectorfield.py", line 1715, in __call__
>         res += v[i, chart] * f.diff(i)
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 308, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     nab.coef(eU)[:]
> Expected:
>     [[[x, 0], [0, 0]], [[0, x*y], [0, 0]]]
> Got:
>     [[[<repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>,
>        <repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>],
>       [<repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>,
>        <repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>]],
>      [[<repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>,
>        <repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>],
>       [<repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>,
>        <repr(<sage.manifolds.chart_func.ChartFunctionRing_with_category.element_class at 0x7fad9f6ec400>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>]]]
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 310, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     nab.coef(eV)[:]
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[56]>", line 1, in <module>
>         nab.coef(eV)[:]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 665, in coef
>         nab_evi = self(ev[i])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1388, in __call__
>         return self._derive_paral(tensor_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1451, in _derive_paral
>         raise ValueError("no common frame found for the computation")
>     ValueError: no common frame found for the computation
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 318, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     a = M.vector_field({eU: [-y,x]}, name='a')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[57]>", line 1, in <module>
>         a = M.vector_field({eU: [-y,x]}, name='a')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/manifold.py", line 1748, in vector_field
>         resu._init_components(*comp, **kwargs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 754, in _init_components
>         self.add_comp(frame)[:, chart] = components
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 920, in __setitem__
>         self._set_list(indices, format_type, value)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 984, in _set_list
>         self[i, format_type] = values[i-start]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 937, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 319, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     a.add_comp_by_continuation(eV, W, c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[58]>", line 1, in <module>
>         a.add_comp_by_continuation(eV, W, c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1458, in add_comp_by_continuation
>         resu[[ind]] = dom.scalar_field({chart: scomp[[ind]].expr(schart)})
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 320, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     a.display(eU)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[59]>", line 1, in <module>
>         a.display(eU)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/alternating_contr_tensor.py", line 414, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 322, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     a.display(eV)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[60]>", line 1, in <module>
>         a.display(eV)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/alternating_contr_tensor.py", line 414, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 324, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     da = nab(a) ; da
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[61]>", line 1, in <module>
>         da = nab(a) ; da
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1398, in __call__
>         resu_rst.append(self.__call__(rst))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1388, in __call__
>         return self._derive_paral(tensor_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/affine_connection.py", line 1519, in _derive_paral
>         rsum = frame[p](tc[[ind0]])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/vectorfield.py", line 1715, in __call__
>         res += v[i, chart] * f.diff(i)
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 327, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     da.display(eU)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[62]>", line 1, in <module>
>         da.display(eU)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/affine_connection.py", line 329, in sage.manifolds.differentiable.affine_connection.AffineConnection
> Failed example:
>     da.display(eV)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.affine_connection.AffineConnection[63]>", line 1, in <module>
>         da.display(eV)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> 1 item had failures:
>   11 of  65 in sage.manifolds.differentiable.affine_connection.AffineConnection
>     [446 tests, 11 failures, 199.31 s]
> sage -t --long src/sage/manifolds/differentiable/bundle_connection.py
>     [168 tests, 5.77 s]
> sage -t --long src/sage/manifolds/differentiable/automorphismfield_group.py
>     [136 tests, 14.64 s]
> sage -t --long src/sage/manifolds/differentiable/chart.py
>     [217 tests, 10.06 s]
> sage -t --long src/sage/manifolds/differentiable/characteristic_class.py
>     [127 tests, 22.85 s]
> sage -t --long src/sage/manifolds/differentiable/curve.py
>     [154 tests, 15.20 s]
> sage -t --long src/sage/manifolds/differentiable/automorphismfield.py
>     [312 tests, 49.45 s]
> sage -t --long src/sage/manifolds/differentiable/diff_form_module.py
>     [188 tests, 7.72 s]
> sage -t --long src/sage/manifolds/differentiable/differentiable_submanifold.py
>     [28 tests, 3.27 s]
> sage -t --long src/sage/manifolds/differentiable/diff_map.py
>     [192 tests, 16.03 s]
> sage -t --long src/sage/manifolds/differentiable/diff_form.py
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 216, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a[eU,0,1] = x*y^2 + 2*x
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[42]>", line 1, in <module>
>         a[eU,Integer(0),Integer(1)] = x*y**Integer(2) + Integer(2)*x
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1982, in __setitem__
>         self.set_comp(frame)[args] = value
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 3297, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 217, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a.add_comp_by_continuation(eV, W, c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[43]>", line 1, in <module>
>         a.add_comp_by_continuation(eV, W, c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1458, in add_comp_by_continuation
>         resu[[ind]] = dom.scalar_field({chart: scomp[[ind]].expr(schart)})
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 218, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a.display(eU)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[44]>", line 1, in <module>
>         a.display(eU)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 568, in display
>         exp = self._display_expansion(basis=basis, format_spec=format_spec)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 404, in _display_expansion
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 220, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a.display(eV)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[45]>", line 1, in <module>
>         a.display(eV)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 568, in display
>         exp = self._display_expansion(basis=basis, format_spec=format_spec)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 404, in _display_expansion
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 225, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a = M.one_form(-y, x, name='a')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[46]>", line 1, in <module>
>         a = M.one_form(-y, x, name='a')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/manifold.py", line 2341, in one_form
>         resu._init_components(*comp, **kwargs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 765, in _init_components
>         self.add_comp(frame)[:, chart] = comp
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 920, in __setitem__
>         self._set_list(indices, format_type, value)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 984, in _set_list
>         self[i, format_type] = values[i-start]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 937, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 226, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a.add_comp_by_continuation(eV, W, c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[47]>", line 1, in <module>
>         a.add_comp_by_continuation(eV, W, c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1458, in add_comp_by_continuation
>         resu[[ind]] = dom.scalar_field({chart: scomp[[ind]].expr(schart)})
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 227, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a.display(eU)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[48]>", line 1, in <module>
>         a.display(eU)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 568, in display
>         exp = self._display_expansion(basis=basis, format_spec=format_spec)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 404, in _display_expansion
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 229, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     a.display(eV)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[49]>", line 1, in <module>
>         a.display(eV)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 568, in display
>         exp = self._display_expansion(basis=basis, format_spec=format_spec)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 404, in _display_expansion
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 235, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     da.display(eU)
> Expected:
>     da = 2 dx/\dy
> Got:
>     da = 0
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 237, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     da.display(eV)
> Expected:
>     da = -du/\dv
> Got:
>     da = 0
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 242, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     b = M.one_form(1+x*y, x^2, name='b')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[53]>", line 1, in <module>
>         b = M.one_form(Integer(1)+x*y, x**Integer(2), name='b')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/manifold.py", line 2341, in one_form
>         resu._init_components(*comp, **kwargs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 765, in _init_components
>         self.add_comp(frame)[:, chart] = comp
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 920, in __setitem__
>         self._set_list(indices, format_type, value)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 984, in _set_list
>         self[i, format_type] = values[i-start]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 937, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 243, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     b.add_comp_by_continuation(eV, W, c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[54]>", line 1, in <module>
>         b.add_comp_by_continuation(eV, W, c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1458, in add_comp_by_continuation
>         resu[[ind]] = dom.scalar_field({chart: scomp[[ind]].expr(schart)})
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 247, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s = a + b
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[55]>", line 1, in <module>
>         s = a + b
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1255, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11176)
>         raise bin_op_exception(op, x, y)
>     TypeError: unsupported operand parent(s) for +: 'Module Omega^2(M) of 2-forms on the 2-dimensional differentiable manifold M' and 'Module Omega^1(M) of 1-forms on the 2-dimensional differentiable manifold M'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 248, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s.display(eU)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[56]>", line 1, in <module>
>         s.display(eU)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 568, in display
>         exp = self._display_expansion(basis=basis, format_spec=format_spec)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 404, in _display_expansion
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 250, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s.display(eV)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[57]>", line 1, in <module>
>         s.display(eV)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 568, in display
>         exp = self._display_expansion(basis=basis, format_spec=format_spec)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_alt_form.py", line 404, in _display_expansion
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 256, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s.display(eU)
> Expected:
>     a/\b = -x*(2*x*y + 1) dx/\dy
> Got:
>     zero = 0
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 258, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s.display(eV)
> Expected:
>     a/\b = (u**3/8 + u**2*v/8 - u*v**2/8 + u/4 - v**3/8 + v/4) du/\dv
> Got:
>     zero = 0
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 263, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     f = M.scalar_field({c_xy: (x+y)^2, c_uv: u^2}, name='f')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[61]>", line 1, in <module>
>         f = M.scalar_field({c_xy: (x+y)**Integer(2), c_uv: u**Integer(2)}, name='f')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1723, in scalar_field
>         return alg.element_class(alg, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/scalarfield.py", line 635, in __init__
>         ScalarField.__init__(self, parent, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1101, in __init__
>         self._express[chart] = chart.function(expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 264, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s = f*a
> Exception raised:
>     Traceback (most recent call last):
>       File "sage/structure/coerce.pyx", line 1196, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:9942)
>         action = self._action_maps.get(xp, yp, op)
>       File "sage/structure/coerce_dict.pyx", line 1328, in sage.structure.coerce_dict.TripleDict.get (build/cythonized/sage/structure/coerce_dict.c:7916)
>         raise KeyError((k1, k2, k3))
>     KeyError: (Algebra of differentiable scalar fields on the 2-dimensional differentiable manifold M, Module Omega^2(M) of 2-forms on the 2-dimensional differentiable manifold M, <built-in function mul>)
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "sage/structure/coerce.pyx", line 1196, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:9942)
>         action = self._action_maps.get(xp, yp, op)
>       File "sage/structure/coerce_dict.pyx", line 1328, in sage.structure.coerce_dict.TripleDict.get (build/cythonized/sage/structure/coerce_dict.c:7916)
>         raise KeyError((k1, k2, k3))
>     KeyError: (Algebra of differentiable scalar fields on the Open subset U of the 2-dimensional differentiable manifold M, Free module Omega^2(U) of 2-forms on the Open subset U of the 2-dimensional differentiable manifold M, <built-in function mul>)
> 
>     During handling of the above exception, another exception occurred:
> 
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.diff_form.DiffForm[62]>", line 1, in <module>
>         s = f*a
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1198, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:9992)
>         action = self.get_action(xp, yp, op, x, y)
>       File "sage/structure/coerce.pyx", line 1726, in sage.structure.coerce.CoercionModel.get_action (build/cythonized/sage/structure/coerce.c:16779)
>         action = self.discover_action(R, S, op, r, s)
>       File "sage/structure/coerce.pyx", line 1862, in sage.structure.coerce.CoercionModel.discover_action (build/cythonized/sage/structure/coerce.c:18266)
>         action = (<Parent>S).get_action(R, op, False, s, r)
>       File "sage/structure/parent.pyx", line 2459, in sage.structure.parent.Parent.get_action (build/cythonized/sage/structure/parent.c:19744)
>         action = self.discover_action(S, op, self_on_left, self_el, S_el)
>       File "sage/structure/parent.pyx", line 2538, in sage.structure.parent.Parent.discover_action (build/cythonized/sage/structure/parent.c:20721)
>         action = detect_element_action(self, S, self_on_left, self_el, S_el)
>       File "sage/structure/coerce_actions.pyx", line 217, in sage.structure.coerce_actions.detect_element_action (build/cythonized/sage/structure/coerce_actions.c:5024)
>         return (RightModuleAction if X_on_left else LeftModuleAction)(Y, X, y, x)
>       File "sage/structure/coerce_actions.pyx", line 363, in sage.structure.coerce_actions.ModuleAction.__init__ (build/cythonized/sage/structure/coerce_actions.c:6776)
>         res = self.act(g, a)
>       File "sage/categories/action.pyx", line 215, in sage.categories.action.Action.act (build/cythonized/sage/categories/action.c:4114)
>         return self._act_convert(g, x)
>       File "sage/categories/action.pyx", line 171, in sage.categories.action.Action._act_convert (build/cythonized/sage/categories/action.c:3758)
>         return self._act_(g, x)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2561, in _rmul_
>         resu._restrictions[dom] = scalar.restrict(dom) * rst
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1198, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:9992)
>         action = self.get_action(xp, yp, op, x, y)
>       File "sage/structure/coerce.pyx", line 1726, in sage.structure.coerce.CoercionModel.get_action (build/cythonized/sage/structure/coerce.c:16779)
>         action = self.discover_action(R, S, op, r, s)
>       File "sage/structure/coerce.pyx", line 1862, in sage.structure.coerce.CoercionModel.discover_action (build/cythonized/sage/structure/coerce.c:18266)
>         action = (<Parent>S).get_action(R, op, False, s, r)
>       File "sage/structure/parent.pyx", line 2459, in sage.structure.parent.Parent.get_action (build/cythonized/sage/structure/parent.c:19744)
>         action = self.discover_action(S, op, self_on_left, self_el, S_el)
>       File "sage/structure/parent.pyx", line 2538, in sage.structure.parent.Parent.discover_action (build/cythonized/sage/structure/parent.c:20721)
>         action = detect_element_action(self, S, self_on_left, self_el, S_el)
>       File "sage/structure/coerce_actions.pyx", line 217, in sage.structure.coerce_actions.detect_element_action (build/cythonized/sage/structure/coerce_actions.c:5024)
>         return (RightModuleAction if X_on_left else LeftModuleAction)(Y, X, y, x)
>       File "sage/structure/coerce_actions.pyx", line 363, in sage.structure.coerce_actions.ModuleAction.__init__ (build/cythonized/sage/structure/coerce_actions.c:6776)
>         res = self.act(g, a)
>       File "sage/categories/action.pyx", line 215, in sage.categories.action.Action.act (build/cythonized/sage/categories/action.c:4114)
>         return self._act_convert(g, x)
>       File "sage/categories/action.pyx", line 171, in sage.categories.action.Action._act_convert (build/cythonized/sage/categories/action.c:3758)
>         return self._act_(g, x)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2196, in _rmul_
>         result._components[basis] = other * self._components[basis]
>       File "sage/structure/element.pyx", line 1529, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12162)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1249, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11100)
>         res = mul_method(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1878, in __rmul__
>         if other == 0:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1285, in __eq__
>         return self.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1148, in __bool__
>         if not funct.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 265, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s.display(eU)
> Expected:
>     f*a = -y*(x**2 + 2*x*y + y**2) dx + x*(x**2 + 2*x*y + y**2) dy
> Got:
>     zero = 0
> **********************************************************************
> File "src/sage/manifolds/differentiable/diff_form.py", line 267, in sage.manifolds.differentiable.diff_form.DiffForm
> Failed example:
>     s.display(eV)
> Expected:
>     f*a = u**2*v/2 du - u**3/2 dv
> Got:
>     zero = 0
> **********************************************************************
> 1 item had failures:
>   21 of  66 in sage.manifolds.differentiable.diff_form.DiffForm
>     [370 tests, 21 failures, 61.01 s]
> sage -t --long src/sage/manifolds/differentiable/integrated_curve.py
>     [413 tests, 48.50 s]
> sage -t --long src/sage/manifolds/differentiable/levi_civita_connection.py
>     [108 tests, 34.33 s]
> sage -t --long src/sage/manifolds/differentiable/manifold.py
>     [538 tests, 25.97 s]
> sage -t --long src/sage/manifolds/differentiable/manifold_homset.py
>     [344 tests, 22.46 s]
> sage -t --long src/sage/manifolds/differentiable/mixed_form.py
>     [371 tests, 23.78 s]
> sage -t --long src/sage/manifolds/differentiable/mixed_form_algebra.py
>     [70 tests, 13.18 s]
> sage -t --long src/sage/manifolds/differentiable/multivector_module.py
>     [160 tests, 6.93 s]
> sage -t --long src/sage/manifolds/differentiable/euclidean.py
>     [395 tests, 133.57 s]
> sage -t --long src/sage/manifolds/differentiable/metric.py
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1040, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.riemann
> Failed example:
>     g[1,1], g[2,2] = a**2, a**2*sin(th)**2
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.riemann[12]>", line 1, in <module>
>         g[Integer(1),Integer(1)], g[Integer(2),Integer(2)] = a**Integer(2), a**Integer(2)*sin(th)**Integer(2)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 1631, in __setitem__
>         self.set_comp(basis)[args] = value
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 4857, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2708, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1041, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.riemann
> Failed example:
>     g.riemann()[:]
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.riemann[13]>", line 1, in <module>
>         g.riemann()[:]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1048, in riemann
>         return self.connection().riemann(name, latex_name)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 789, in connection
>         self._connection = LeviCivitaConnection(self, name,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/levi_civita_connection.py", line 231, in __init__
>         self.coef(chart._frame)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/levi_civita_connection.py", line 491, in coef
>         ginv = self._metric.inverse().comp(frame)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 2393, in inverse
>         gmat_inv = gmat.inverse()
>       File "sage/matrix/matrix2.pyx", line 8902, in sage.matrix.matrix2.Matrix.inverse (build/cythonized/sage/matrix/matrix2.c:67166)
>         return ~self
>       File "sage/matrix/matrix0.pyx", line 5433, in sage.matrix.matrix0.Matrix.__invert__ (build/cythonized/sage/matrix/matrix0.c:36184)
>         raise ZeroDivisionError("input matrix must be nonsingular")
>     ZeroDivisionError: input matrix must be nonsingular
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1476, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.determinant
> Failed example:
>     g[1,1], g[1, 2], g[2, 2] = 1+x, x*y , 1-y
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.determinant[20]>", line 1, in <module>
>         g[Integer(1),Integer(1)], g[Integer(1), Integer(2)], g[Integer(2), Integer(2)] = Integer(1)+x, x*y , Integer(1)-y
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 1631, in __setitem__
>         self.set_comp(basis)[args] = value
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 4857, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1477, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.determinant
> Failed example:
>     s = g.determinant()  # determinant in M's default frame
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.determinant[21]>", line 1, in <module>
>         s = g.determinant()  # determinant in M's default frame
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1501, in determinant
>         resu.add_expr(detgm, chart=chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1478, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.determinant
> Failed example:
>     s.expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.determinant[22]>", line 1, in <module>
>         s.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1581, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det
> Failed example:
>     g[1,1], g[1, 2], g[2, 2] = 1+x, x*y , 1-y
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det[24]>", line 1, in <module>
>         g[Integer(1),Integer(1)], g[Integer(1), Integer(2)], g[Integer(2), Integer(2)] = Integer(1)+x, x*y , Integer(1)-y
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 1631, in __setitem__
>         self.set_comp(basis)[args] = value
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 4857, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1582, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det
> Failed example:
>     g.sqrt_abs_det().expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det[25]>", line 1, in <module>
>         g.sqrt_abs_det().expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1599, in sqrt_abs_det
>         detg = self.determinant(frame)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1501, in determinant
>         resu.add_expr(detgm, chart=chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1584, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det
> Failed example:
>     g.sqrt_abs_det(Y.frame()).expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det[26]>", line 1, in <module>
>         g.sqrt_abs_det(Y.frame()).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1599, in sqrt_abs_det
>         detg = self.determinant(frame)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1501, in determinant
>         resu.add_expr(detgm, chart=chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 1586, in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det
> Failed example:
>     g.sqrt_abs_det(Y.frame()).expr(Y)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det[27]>", line 1, in <module>
>         g.sqrt_abs_det(Y.frame()).expr(Y)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1599, in sqrt_abs_det
>         detg = self.determinant(frame)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 1501, in determinant
>         resu.add_expr(detgm, chart=chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 2303, in sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse
> Failed example:
>     g[1,1], g[1,2], g[2,2] = 1+x, x*y, 1-x
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse[10]>", line 1, in <module>
>         g[Integer(1),Integer(1)], g[Integer(1),Integer(2)], g[Integer(2),Integer(2)] = Integer(1)+x, x*y, Integer(1)-x
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 1631, in __setitem__
>         self.set_comp(basis)[args] = value
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 4857, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 2304, in sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse
> Failed example:
>     g[:]  # components in the manifold's default frame
> Expected:
>     [x + 1   x*y]
>     [  x*y 1 - x]
> Got:
>     <repr(<sage.matrix.matrix_generic_dense.Matrix_generic_dense at 0x7fad9aa93dd0>) failed: AttributeError: module 'sympy.core' has no attribute 'all_classes'>
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 2307, in sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse
> Failed example:
>     g.inverse()[:]
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse[12]>", line 1, in <module>
>         g.inverse()[:]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/metric.py", line 2399, in inverse
>         cinv_scal[(i,j)].add_expr(val, chart=chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 2333, in sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse
> Failed example:
>     g.inverse(expansion_symbol=e)[:]
> Expected:
>     [-1  e  0  0]
>     [ e  1 -e  0]
>     [ 0 -e  1 -e]
>     [ 0  0 -e  1]
> Got:
>     [-1  0  0  0]
>     [ 0  1  0  0]
>     [ 0  0  1  0]
>     [ 0  0  0  1]
> **********************************************************************
> File "src/sage/manifolds/differentiable/metric.py", line 2342, in sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse
> Failed example:
>     g.inverse()[:]
> Expected:
>     [-1  e  0  0]
>     [ e  1 -e  0]
>     [ 0 -e  1 -e]
>     [ 0  0 -e  1]
> Got:
>     [-1  0  0  0]
>     [ 0  1  0  0]
>     [ 0  0  1  0]
>     [ 0  0  0  1]
> **********************************************************************
> 4 items had failures:
>    3 of  24 in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.determinant
>    2 of  15 in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.riemann
>    4 of  29 in sage.manifolds.differentiable.metric.PseudoRiemannianMetric.sqrt_abs_det
>    5 of  25 in sage.manifolds.differentiable.metric.PseudoRiemannianMetricParal.inverse
>     [463 tests, 14 failures, 115.54 s]
> sage -t --long src/sage/manifolds/differentiable/pseudo_riemannian.py
>     [140 tests, 24.19 s]
> sage -t --long src/sage/manifolds/differentiable/real_line.py
>     [177 tests, 2.97 s]
> sage -t --long src/sage/manifolds/differentiable/scalarfield.py
>     [263 tests, 26.82 s]
> sage -t --long src/sage/manifolds/differentiable/scalarfield_algebra.py
>     [98 tests, 9.34 s]
> sage -t --long src/sage/manifolds/differentiable/tangent_space.py
>     [63 tests, 2.96 s]
> sage -t --long src/sage/manifolds/differentiable/tensorfield.py
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 284, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     t = M.tensor_field(0, 2, {eU:  [[1,0], [-2,3]]}, name='t')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[47]>", line 1, in <module>
>         t = M.tensor_field(Integer(0), Integer(2), {eU:  [[Integer(1),Integer(0)], [-Integer(2),Integer(3)]]}, name='t')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/manifold.py", line 1872, in tensor_field
>         resu._init_components(args[2], **kwargs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 754, in _init_components
>         self.add_comp(frame)[:, chart] = components
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 920, in __setitem__
>         self._set_list(indices, format_type, value)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 990, in _set_list
>         self._set_value_list([i], format_type, values[i-si])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1025, in _set_value_list
>         self._set_value_list(ind + [i], format_type, val[i-si])
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1020, in _set_value_list
>         self[ind] = val
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 937, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/map.pyx", line 1694, in sage.categories.map.FormalCompositeMap._call_ (build/cythonized/sage/categories/map.c:11606)
>         x = f._call_(x)
>       File "sage/categories/morphism.pyx", line 549, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8488)
>         cpdef Element _call_(self, x):
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2708, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 285, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     t.display(eU)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[48]>", line 1, in <module>
>         t.display(eU)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 287, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     t.add_comp_by_continuation(eV, W, chart=c_uv)  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[49]>", line 1, in <module>
>         t.add_comp_by_continuation(eV, W, chart=c_uv)  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1458, in add_comp_by_continuation
>         resu[[ind]] = dom.scalar_field({chart: scomp[[ind]].expr(schart)})
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 288, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     t.display(eV)  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[50]>", line 1, in <module>
>         t.display(eV)  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 301, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     t[eV,1,1,c_uv].expr() # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[51]>", line 1, in <module>
>         t[eV,Integer(1),Integer(1),c_uv].expr() # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 304, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     type(t[eV,1,1,c_uv].expr()) # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[52]>", line 1, in <module>
>         type(t[eV,Integer(1),Integer(1),c_uv].expr()) # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 309, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     a = M.vector_field({eU: [-y, x]}, name='a')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[53]>", line 1, in <module>
>         a = M.vector_field({eU: [-y, x]}, name='a')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/manifold.py", line 1748, in vector_field
>         resu._init_components(*comp, **kwargs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 754, in _init_components
>         self.add_comp(frame)[:, chart] = components
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 920, in __setitem__
>         self._set_list(indices, format_type, value)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 984, in _set_list
>         self[i, format_type] = values[i-start]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 937, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 310, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     a.add_comp_by_continuation(eV, W, chart=c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[54]>", line 1, in <module>
>         a.add_comp_by_continuation(eV, W, chart=c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1458, in add_comp_by_continuation
>         resu[[ind]] = dom.scalar_field({chart: scomp[[ind]].expr(schart)})
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 311, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     a.display(eV)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[55]>", line 1, in <module>
>         a.display(eV)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/alternating_contr_tensor.py", line 414, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 313, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     b = M.vector_field({eU: [y, -1]}, name='b')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[56]>", line 1, in <module>
>         b = M.vector_field({eU: [y, -Integer(1)]}, name='b')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/manifold.py", line 1748, in vector_field
>         resu._init_components(*comp, **kwargs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 754, in _init_components
>         self.add_comp(frame)[:, chart] = components
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 920, in __setitem__
>         self._set_list(indices, format_type, value)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 984, in _set_list
>         self[i, format_type] = values[i-start]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 937, in __setitem__
>         self._comp[ind] = self._ring(value)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 314, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     b.add_comp_by_continuation(eV, W, chart=c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[57]>", line 1, in <module>
>         b.add_comp_by_continuation(eV, W, chart=c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1458, in add_comp_by_continuation
>         resu[[ind]] = dom.scalar_field({chart: scomp[[ind]].expr(schart)})
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 315, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     b.display(eV)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[58]>", line 1, in <module>
>         b.display(eV)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/alternating_contr_tensor.py", line 414, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 322, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     f = t(a,b)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[59]>", line 1, in <module>
>         f = t(a,b)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2908, in __call__
>         resu_rr = self_rr(*args_rr)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield_paral.py", line 1695, in __call__
>         return FreeModuleTensor.__call__(self_r, *args_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2427, in __call__
>         prod *= v[i][[ind[i]]]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2563, in _mul_
>         result._express[chart] = self._express[chart] * other._express[chart]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 323, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     f.display()  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[60]>", line 1, in <module>
>         f.display()  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 331, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s = t(a.restrict(U), b)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[61]>", line 1, in <module>
>         s = t(a.restrict(U), b)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2895, in __call__
>         return self_r(*args_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield_paral.py", line 1695, in __call__
>         return FreeModuleTensor.__call__(self_r, *args_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2427, in __call__
>         prod *= v[i][[ind[i]]]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2563, in _mul_
>         result._express[chart] = self._express[chart] * other._express[chart]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 332, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s.display()  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[62]>", line 1, in <module>
>         s.display()  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 336, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s = t(a.restrict(U), b.restrict(W))  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[63]>", line 1, in <module>
>         s = t(a.restrict(U), b.restrict(W))  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2895, in __call__
>         return self_r(*args_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield_paral.py", line 1695, in __call__
>         return FreeModuleTensor.__call__(self_r, *args_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2427, in __call__
>         prod *= v[i][[ind[i]]]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2563, in _mul_
>         result._express[chart] = self._express[chart] * other._express[chart]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 337, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s.display()  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[64]>", line 1, in <module>
>         s.display()  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 345, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s = t.restrict(V)(a,b)  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[65]>", line 1, in <module>
>         s = t.restrict(V)(a,b)  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield_paral.py", line 1695, in __call__
>         return FreeModuleTensor.__call__(self_r, *args_r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2427, in __call__
>         prod *= v[i][[ind[i]]]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2563, in _mul_
>         result._express[chart] = self._express[chart] * other._express[chart]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 346, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s.display()  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[66]>", line 1, in <module>
>         s.display()  # long time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 353, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     f = M.scalar_field({c_xy: 1/(1+x^2+y^2),
>                         c_uv: (u^2 + v^2)/(u^2 + v^2 + 1)}, name='f')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[67]>", line 1, in <module>
>         f = M.scalar_field({c_xy: Integer(1)/(Integer(1)+x**Integer(2)+y**Integer(2)),
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1723, in scalar_field
>         return alg.element_class(alg, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/scalarfield.py", line 635, in __init__
>         ScalarField.__init__(self, parent, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1101, in __init__
>         self._express[chart] = chart.function(expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 355, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s = f*t # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[68]>", line 1, in <module>
>         s = f*t # long time
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2561, in _rmul_
>         resu._restrictions[dom] = scalar.restrict(dom) * rst
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2196, in _rmul_
>         result._components[basis] = other * self._components[basis]
>       File "sage/structure/element.pyx", line 1529, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12162)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1249, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11100)
>         res = mul_method(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1878, in __rmul__
>         if other == 0:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1285, in __eq__
>         return self.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1148, in __bool__
>         if not funct.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 356, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s[[0,0]] == f*t[[0,0]]  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[69]>", line 1, in <module>
>         s[[Integer(0),Integer(0)]] == f*t[[Integer(0),Integer(0)]]  # long time
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1211, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10139)
>         return PyObject_CallObject(op, xy)
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2563, in _mul_
>         result._express[chart] = self._express[chart] * other._express[chart]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 358, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s.restrict(U) == f.restrict(U) * t.restrict(U)  # long time
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[70]>", line 1, in <module>
>         s.restrict(U) == f.restrict(U) * t.restrict(U)  # long time
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2196, in _rmul_
>         result._components[basis] = other * self._components[basis]
>       File "sage/structure/element.pyx", line 1529, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12162)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1249, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11100)
>         res = mul_method(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1878, in __rmul__
>         if other == 0:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1285, in __eq__
>         return self.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1148, in __bool__
>         if not funct.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 360, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s = f*t.restrict(U)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[71]>", line 1, in <module>
>         s = f*t.restrict(U)
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2196, in _rmul_
>         result._components[basis] = other * self._components[basis]
>       File "sage/structure/element.pyx", line 1529, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12162)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1249, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11100)
>         res = mul_method(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1878, in __rmul__
>         if other == 0:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1285, in __eq__
>         return self.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1148, in __bool__
>         if not funct.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 361, in sage.manifolds.differentiable.tensorfield.TensorField
> Failed example:
>     s.restrict(U) == f.restrict(U) * t.restrict(U)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField[72]>", line 1, in <module>
>         s.restrict(U) == f.restrict(U) * t.restrict(U)
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2196, in _rmul_
>         result._components[basis] = other * self._components[basis]
>       File "sage/structure/element.pyx", line 1529, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12162)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1249, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11100)
>         res = mul_method(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1878, in __rmul__
>         if other == 0:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1285, in __eq__
>         return self.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1148, in __bool__
>         if not funct.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 2659, in sage.manifolds.differentiable.tensorfield.TensorField.__mul__
> Failed example:
>     f.add_expr_by_continuation(c_uv, U.intersection(V))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField.__mul__[29]>", line 1, in <module>
>         f.add_expr_by_continuation(c_uv, U.intersection(V))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1867, in add_expr_by_continuation
>         self._express[chart] = chart.function(self.expr(schart))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 2660, in sage.manifolds.differentiable.tensorfield.TensorField.__mul__
> Failed example:
>     s = a.__mul__(f); s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField.__mul__[30]>", line 1, in <module>
>         s = a.__mul__(f); s
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2679, in __mul__
>         return other * self
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2561, in _rmul_
>         resu._restrictions[dom] = scalar.restrict(dom) * rst
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2196, in _rmul_
>         result._components[basis] = other * self._components[basis]
>       File "sage/structure/element.pyx", line 1529, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12162)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1249, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11100)
>         res = mul_method(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1878, in __rmul__
>         if other == 0:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1285, in __eq__
>         return self.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1148, in __bool__
>         if not funct.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 2663, in sage.manifolds.differentiable.tensorfield.TensorField.__mul__
> Failed example:
>     s.display(e_xy)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField.__mul__[31]>", line 1, in <module>
>         s.display(e_xy)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 2665, in sage.manifolds.differentiable.tensorfield.TensorField.__mul__
> Failed example:
>     s.display(e_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField.__mul__[32]>", line 1, in <module>
>         s.display(e_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 1778, in display
>         return rst.display(frame, chart)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 727, in display
>         zero_coef = coef.is_trivial_zero()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 856, in is_trivial_zero
>         return self._calc_method.is_trivial_zero(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield.py", line 2670, in sage.manifolds.differentiable.tensorfield.TensorField.__mul__
> Failed example:
>     s == f*a
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield.TensorField.__mul__[33]>", line 1, in <module>
>         s == f*a
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield.py", line 2561, in _rmul_
>         resu._restrictions[dom] = scalar.restrict(dom) * rst
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/free_module_tensor.py", line 2196, in _rmul_
>         result._components[basis] = other * self._components[basis]
>       File "sage/structure/element.pyx", line 1529, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12162)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1249, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:11100)
>         res = mul_method(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tensor/modules/comp.py", line 1878, in __rmul__
>         if other == 0:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1285, in __eq__
>         return self.is_zero()
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1148, in __bool__
>         if not funct.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> 2 items had failures:
>   26 of  74 in sage.manifolds.differentiable.tensorfield.TensorField
>    5 of  35 in sage.manifolds.differentiable.tensorfield.TensorField.__mul__
>     [1015 tests, 31 failures, 185.23 s]
> sage -t --long src/sage/manifolds/differentiable/multivectorfield.py
>     [285 tests, 83.10 s]
> sage -t --long src/sage/manifolds/differentiable/tangent_vector.py
>     [89 tests, 17.88 s]
> sage -t --long src/sage/manifolds/differentiable/tensorfield_module.py
>     [154 tests, 7.70 s]
> sage -t --long src/sage/manifolds/differentiable/tensorfield_paral.py
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield_paral.py", line 2257, in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion
> Failed example:
>     g_ser = g.series_expansion(e, 2); g_ser
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion[10]>", line 1, in <module>
>         g_ser = g.series_expansion(e, Integer(2)); g_ser
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/differentiable/tensorfield_paral.py", line 2293, in series_expansion
>         decompo[inds] = comp[inds].expr().series(symbol,
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield_paral.py", line 2261, in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion
> Failed example:
>     g_ser[0][:]
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion[11]>", line 1, in <module>
>         g_ser[Integer(0)][:]
>     NameError: name 'g_ser' is not defined
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield_paral.py", line 2266, in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion
> Failed example:
>     g_ser[1][:]
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion[12]>", line 1, in <module>
>         g_ser[Integer(1)][:]
>     NameError: name 'g_ser' is not defined
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield_paral.py", line 2271, in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion
> Failed example:
>     g_ser[2][:]
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion[13]>", line 1, in <module>
>         g_ser[Integer(2)][:]
>     NameError: name 'g_ser' is not defined
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield_paral.py", line 2276, in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion
> Failed example:
>     all([g_ser[1] == h1, g_ser[2] == h2])
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion[14]>", line 1, in <module>
>         all([g_ser[Integer(1)] == h1, g_ser[Integer(2)] == h2])
>     NameError: name 'g_ser' is not defined
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield_paral.py", line 2351, in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.truncate
> Failed example:
>     g.truncate(e, 1)[:]
> Expected:
>     [-1  e  0  0]
>     [ e  1  e  0]
>     [ 0  e  1  e]
>     [ 0  0  e  1]
> Got:
>     [-1  0  0  0]
>     [ 0  1  0  0]
>     [ 0  0  1  0]
>     [ 0  0  0  1]
> **********************************************************************
> File "src/sage/manifolds/differentiable/tensorfield_paral.py", line 2411, in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.set_calc_order
> Failed example:
>     g[:]
> Expected:
>     [-1  e  0  0]
>     [ e  1  e  0]
>     [ 0  e  1  e]
>     [ 0  0  e  1]
> Got:
>     [-1  0  0  0]
>     [ 0  1  0  0]
>     [ 0  0  1  0]
>     [ 0  0  0  1]
> **********************************************************************
> 3 items had failures:
>    5 of  16 in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.series_expansion
>    1 of  15 in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.set_calc_order
>    1 of  13 in sage.manifolds.differentiable.tensorfield_paral.TensorFieldParal.truncate
>     [442 tests, 7 failures, 23.20 s]
> sage -t --long src/sage/manifolds/differentiable/vector_bundle.py
>     [248 tests, 21.33 s]
> sage -t --long src/sage/manifolds/differentiable/vectorfield_module.py
>     [304 tests, 10.14 s]
> sage -t --long src/sage/manifolds/differentiable/vectorframe.py
>     [341 tests, 10.65 s]
> sage -t --long src/sage/manifolds/local_frame.py
>     [294 tests, 5.45 s]
> sage -t --long src/sage/manifolds/manifold.py
> **********************************************************************
> File "src/sage/manifolds/manifold.py", line 2240, in sage.manifolds.manifold.TopologicalManifold.set_calculus_method
> Failed example:
>     f.expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.manifold.TopologicalManifold.set_calculus_method[8]>", line 1, in <module>
>         f.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/manifold.py", line 2242, in sage.manifolds.manifold.TopologicalManifold.set_calculus_method
> Failed example:
>     type(f.expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.manifold.TopologicalManifold.set_calculus_method[9]>", line 1, in <module>
>         type(f.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/manifold.py", line 2244, in sage.manifolds.manifold.TopologicalManifold.set_calculus_method
> Failed example:
>     parent(f.expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.manifold.TopologicalManifold.set_calculus_method[10]>", line 1, in <module>
>         parent(f.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/manifold.py", line 2246, in sage.manifolds.manifold.TopologicalManifold.set_calculus_method
> Failed example:
>     f.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.manifold.TopologicalManifold.set_calculus_method[11]>", line 1, in <module>
>         f.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/manifold.py", line 2377, in sage.manifolds.manifold.TopologicalManifold.set_simplify_function
> Failed example:
>     s = f + g
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.manifold.TopologicalManifold.set_simplify_function[23]>", line 1, in <module>
>         s = f + g
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2462, in _add_
>         result._express[chart] = self._express[chart] + other._express[chart]
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1251, in _add_
>         res = self._simplify(self.expr() + other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/manifold.py", line 2378, in sage.manifolds.manifold.TopologicalManifold.set_simplify_function
> Failed example:
>     s.expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.manifold.TopologicalManifold.set_simplify_function[24]>", line 1, in <module>
>         s.expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/manifold.py", line 2380, in sage.manifolds.manifold.TopologicalManifold.set_simplify_function
> Failed example:
>     type(s.expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.manifold.TopologicalManifold.set_simplify_function[25]>", line 1, in <module>
>         type(s.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> 2 items had failures:
>    4 of  15 in sage.manifolds.manifold.TopologicalManifold.set_calculus_method
>    3 of  27 in sage.manifolds.manifold.TopologicalManifold.set_simplify_function
>     [441 tests, 7 failures, 13.56 s]
> sage -t --long src/sage/manifolds/manifold_homset.py
>     [88 tests, 5.03 s]
> sage -t --long src/sage/manifolds/operators.py
>     [36 tests, 6.24 s]
> sage -t --long src/sage/manifolds/differentiable/vectorfield.py
>     [248 tests, 67.62 s]
> sage -t --long src/sage/manifolds/point.py
>     [204 tests, 32.17 s]
> sage -t --long src/sage/manifolds/scalarfield.py
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 621, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f = M.scalar_field({c_xy: 1/(1+x^2+y^2), c_uv: (u^2+v^2)/(1+u^2+v^2)},
>                        name='f') ; f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[133]>", line 1, in <module>
>         f = M.scalar_field({c_xy: Integer(1)/(Integer(1)+x**Integer(2)+y**Integer(2)), c_uv: (u**Integer(2)+v**Integer(2))/(Integer(1)+u**Integer(2)+v**Integer(2))},
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1723, in scalar_field
>         return alg.element_class(alg, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1101, in __init__
>         self._express[chart] = chart.function(expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 624, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.display()  # notice the SymPy display of exponents
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[134]>", line 1, in <module>
>         f.display()  # notice the SymPy display of exponents
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2028, in display
>         self.coord_function(sch)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1588, in coord_function
>         new_expr = self._express[known_chart].expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 628, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     type(f.coord_function(c_xy).expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[135]>", line 1, in <module>
>         type(f.coord_function(c_xy).expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 633, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     g = U.scalar_field({c_xy: x*y}, name='g')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[136]>", line 1, in <module>
>         g = U.scalar_field({c_xy: x*y}, name='g')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1723, in scalar_field
>         return alg.element_class(alg, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1101, in __init__
>         self._express[chart] = chart.function(expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 634, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     g.display() # again notice the SymPy display of exponents
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[137]>", line 1, in <module>
>         g.display() # again notice the SymPy display of exponents
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 641, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f = M.scalar_field(1/(1+x^2+y^2), chart=c_xy, name='f')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[138]>", line 1, in <module>
>         f = M.scalar_field(Integer(1)/(Integer(1)+x**Integer(2)+y**Integer(2)), chart=c_xy, name='f')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1723, in scalar_field
>         return alg.element_class(alg, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1113, in __init__
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 642, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.add_expr((u^2+v^2)/(1+u^2+v^2), chart=c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[139]>", line 1, in <module>
>         f.add_expr((u**Integer(2)+v**Integer(2))/(Integer(1)+u**Integer(2)+v**Integer(2)), chart=c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 643, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[140]>", line 1, in <module>
>         f.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2028, in display
>         self.coord_function(sch)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1588, in coord_function
>         new_expr = self._express[known_chart].expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 651, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.add_expr(1/(1+x^2+y^2), chart=c_xy)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[142]>", line 1, in <module>
>         f.add_expr(Integer(1)/(Integer(1)+x**Integer(2)+y**Integer(2)), chart=c_xy)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 652, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.add_expr((u^2+v^2)/(1+u^2+v^2), chart=c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[143]>", line 1, in <module>
>         f.add_expr((u**Integer(2)+v**Integer(2))/(Integer(1)+u**Integer(2)+v**Integer(2)), chart=c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1798, in add_expr
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 653, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.display()
> Expected:
>     f: M --> R
>     on U: (x, y) |--> 1/(x**2 + y**2 + 1)
>     on V: (u, v) |--> (u**2 + v**2)/(u**2 + v**2 + 1)
> Got:
>     f: M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 660, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f = M.scalar_field(1/(1+x^2+y^2), chart=c_xy, name='f')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[145]>", line 1, in <module>
>         f = M.scalar_field(Integer(1)/(Integer(1)+x**Integer(2)+y**Integer(2)), chart=c_xy, name='f')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1723, in scalar_field
>         return alg.element_class(alg, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1113, in __init__
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 661, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.add_expr_by_continuation(c_uv, U.intersection(V))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[146]>", line 1, in <module>
>         f.add_expr_by_continuation(c_uv, U.intersection(V))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1867, in add_expr_by_continuation
>         self._express[chart] = chart.function(self.expr(schart))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (W, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 662, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.display()
> Expected:
>     f: M --> R
>     on U: (x, y) |--> 1/(x**2 + y**2 + 1)
>     on V: (u, v) |--> (u**2 + v**2)/(u**2 + v**2 + 1)
> Got:
>     f: M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 670, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     h = U.scalar_field(function('H')(x, y), name='h') ; h
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[148]>", line 1, in <module>
>         h = U.scalar_field(function('H')(x, y), name='h') ; h
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1723, in scalar_field
>         return alg.element_class(alg, coord_expression=coord_expression,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1113, in __init__
>         self._express[chart] = chart.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 673, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     h.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[149]>", line 1, in <module>
>         h.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 681, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.expr(c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[150]>", line 1, in <module>
>         f.expr(c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (V, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 683, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     type(f.expr(c_uv))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[151]>", line 1, in <module>
>         type(f.expr(c_uv))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (V, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 690, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.coord_function(c_uv)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[152]>", line 1, in <module>
>         f.coord_function(c_uv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (V, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 692, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     type(f.coord_function(c_uv))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[153]>", line 1, in <module>
>         type(f.coord_function(c_uv))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (V, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 694, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.coord_function(c_uv).display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[154]>", line 1, in <module>
>         f.coord_function(c_uv).display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (V, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 700, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.expr(c_uv) is f.coord_function(c_uv).expr()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[155]>", line 1, in <module>
>         f.expr(c_uv) is f.coord_function(c_uv).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (V, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 705, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f.coord_function(c_uv).expr('SR')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[156]>", line 1, in <module>
>         f.coord_function(c_uv).expr('SR')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1611, in coord_function
>         raise ValueError("no starting chart could be found to " +
>     ValueError: no starting chart could be found to compute the expression in the Chart (V, (u, v))
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 710, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     c = M.constant_scalar_field(2, name='c')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[157]>", line 1, in <module>
>         c = M.constant_scalar_field(Integer(2), name='c')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1779, in constant_scalar_field
>         return alg.element_class(alg, coord_expression=value, name=name,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1111, in __init__
>         self._express[ch] = ch.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 711, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     c.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[158]>", line 1, in <module>
>         c.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 715, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     type(c.expr(c_xy))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[159]>", line 1, in <module>
>         type(c.expr(c_xy))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 722, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     c = M.constant_scalar_field(a, name='c')
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[161]>", line 1, in <module>
>         c = M.constant_scalar_field(a, name='c')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/manifold.py", line 1779, in constant_scalar_field
>         return alg.element_class(alg, coord_expression=value, name=name,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1111, in __init__
>         self._express[ch] = ch.function(coord_expression)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart.py", line 1086, in function
>         return parent.element_class(parent, expression, calc_method=calc_method,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 361, in __init__
>         self._express[calc_method] = self._calc_method._tranf[calc_method](
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 723, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     c.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[162]>", line 1, in <module>
>         c.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 727, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     type(c.expr(c_xy))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[163]>", line 1, in <module>
>         type(c.expr(c_xy))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 734, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     zer.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[165]>", line 1, in <module>
>         zer.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 738, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     type(zer.expr(c_xy))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[166]>", line 1, in <module>
>         type(zer.expr(c_xy))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 748, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f(N)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[171]>", line 1, in <module>
>         f(N)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2354, in __call__
>         raise ValueError("no common chart has been found to evaluate " +
>     ValueError: no common chart has been found to evaluate the action of Scalar field f on the 2-dimensional topological manifold M on the Point on the 2-dimensional topological manifold M
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 750, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f(S)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[172]>", line 1, in <module>
>         f(S)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2354, in __call__
>         raise ValueError("no common chart has been found to evaluate " +
>     ValueError: no common chart has been found to evaluate the action of Scalar field f on the 2-dimensional topological manifold M on the Point on the 2-dimensional topological manifold M
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 752, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f(E)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[173]>", line 1, in <module>
>         f(E)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2354, in __call__
>         raise ValueError("no common chart has been found to evaluate " +
>     ValueError: no common chart has been found to evaluate the action of Scalar field f on the 2-dimensional topological manifold M on the Point on the 2-dimensional topological manifold M
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 754, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     h(E)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[174]>", line 1, in <module>
>         h(E)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2356, in __call__
>         return self._express[chart](*(p._coordinates[chart]))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 756, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     c(E)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[175]>", line 1, in <module>
>         c(E)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2356, in __call__
>         return self._express[chart](*(p._coordinates[chart]))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in __call__
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 755, in <listcomp>
>         co = [calc._tranf['sympy'](c) for c in coords]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 770, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     g == x*y
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 772, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     c == a
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 791, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     sqrt(f).display()
> Expected:
>     sqrt(f): M --> R
>     on U: (x, y) |--> 1/sqrt(x**2 + y**2 + 1)
>     on V: (u, v) |--> sqrt(u**2 + v**2)/sqrt(u**2 + v**2 + 1)
> Got:
>     sqrt(f): M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 800, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     tan(f).display()
> Expected:
>     tan(f): M --> R
>     on U: (x, y) |--> tan(1/(x**2 + y**2 + 1))
>     on V: (u, v) |--> tan((u**2 + v**2)/(u**2 + v**2 + 1))
> Got:
>     tan(f): M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 822, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f + c ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[192]>", line 1, in <module>
>         s = f + c ; s
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2458, in _add_
>         raise ValueError("no common chart for the addition")
>     ValueError: no common chart for the addition
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 824, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[193]>", line 1, in <module>
>         s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 831, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f - c ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[194]>", line 1, in <module>
>         s = f - c ; s
>       File "sage/structure/element.pyx", line 1357, in sage.structure.element.Element.__sub__ (build/cythonized/sage/structure/element.c:11354)
>         return (<Element>left)._sub_(right)
>       File "sage/structure/element.pyx", line 2369, in sage.structure.element.ModuleElement._sub_ (build/cythonized/sage/structure/element.c:15403)
>         cpdef _sub_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2507, in _sub_
>         raise ValueError("no common chart for the subtraction")
>     ValueError: no common chart for the subtraction
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 833, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[195]>", line 1, in <module>
>         s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 842, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f - f == zer
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[197]>", line 1, in <module>
>         f - f == zer
>       File "sage/structure/element.pyx", line 1357, in sage.structure.element.Element.__sub__ (build/cythonized/sage/structure/element.c:11354)
>         return (<Element>left)._sub_(right)
>       File "sage/structure/element.pyx", line 2369, in sage.structure.element.ModuleElement._sub_ (build/cythonized/sage/structure/element.c:15403)
>         cpdef _sub_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2507, in _sub_
>         raise ValueError("no common chart for the subtraction")
>     ValueError: no common chart for the subtraction
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 844, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     f + (-f) == zer
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[198]>", line 1, in <module>
>         f + (-f) == zer
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2458, in _add_
>         raise ValueError("no common chart for the addition")
>     ValueError: no common chart for the addition
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 846, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     (f+c)-f == c
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[199]>", line 1, in <module>
>         (f+c)-f == c
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2458, in _add_
>         raise ValueError("no common chart for the addition")
>     ValueError: no common chart for the addition
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 848, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     (f-c)+c == f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[200]>", line 1, in <module>
>         (f-c)+c == f
>       File "sage/structure/element.pyx", line 1357, in sage.structure.element.Element.__sub__ (build/cythonized/sage/structure/element.c:11354)
>         return (<Element>left)._sub_(right)
>       File "sage/structure/element.pyx", line 2369, in sage.structure.element.ModuleElement._sub_ (build/cythonized/sage/structure/element.c:15403)
>         cpdef _sub_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2507, in _sub_
>         raise ValueError("no common chart for the subtraction")
>     ValueError: no common chart for the subtraction
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 854, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f + 1 ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[201]>", line 1, in <module>
>         s = f + Integer(1) ; s
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/categories/map.pyx", line 1694, in sage.categories.map.FormalCompositeMap._call_ (build/cythonized/sage/categories/map.c:11606)
>         x = f._call_(x)
>       File "sage/categories/morphism.pyx", line 549, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8488)
>         cpdef Element _call_(self, x):
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2708, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 856, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[202]>", line 1, in <module>
>         s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 860, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     (f+1)-1 == f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[203]>", line 1, in <module>
>         (f+Integer(1))-Integer(1) == f
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/categories/map.pyx", line 1694, in sage.categories.map.FormalCompositeMap._call_ (build/cythonized/sage/categories/map.c:11606)
>         x = f._call_(x)
>       File "sage/categories/morphism.pyx", line 549, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8488)
>         cpdef Element _call_(self, x):
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2708, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 865, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = a + f ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[204]>", line 1, in <module>
>         s = a + f ; s
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1318, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11582)
>         x_elt = (<Map>x_map)._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2708, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 867, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s == c + f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[205]>", line 1, in <module>
>         s == c + f
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2458, in _add_
>         raise ValueError("no common chart for the addition")
>     ValueError: no common chart for the addition
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 873, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f + x; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[206]>", line 1, in <module>
>         s = f + x; s
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 875, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[207]>", line 1, in <module>
>         s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 879, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f + u; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[208]>", line 1, in <module>
>         s = f + u; s
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 881, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[209]>", line 1, in <module>
>         s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 894, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f + g ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[212]>", line 1, in <module>
>         s = f + g ; s
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1211, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10139)
>         return PyObject_CallObject(op, xy)
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2458, in _add_
>         raise ValueError("no common chart for the addition")
>     ValueError: no common chart for the addition
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 899, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[214]>", line 1, in <module>
>         s.display()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2039, in display
>         _display_expression(self, ch.restrict(max_dom), result)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1987, in _display_expression
>         result._txt += repr(coords) + " |--> " + repr(expression) + "\n"
>       File "sage/structure/sage_object.pyx", line 194, in sage.structure.sage_object.SageObject.__repr__ (build/cythonized/sage/structure/sage_object.c:2431)
>         result = reprfunc()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 620, in _repr_
>         return str(self.expr(curr))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 906, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s == f.restrict(U) + g
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[215]>", line 1, in <module>
>         s == f.restrict(U) + g
>       File "sage/structure/element.pyx", line 1231, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10797)
>         return (<Element>left)._add_(right)
>       File "sage/structure/element.pyx", line 2346, in sage.structure.element.ModuleElement._add_ (build/cythonized/sage/structure/element.c:15168)
>         cpdef _add_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2458, in _add_
>         raise ValueError("no common chart for the addition")
>     ValueError: no common chart for the addition
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 914, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     M --> R
>     on U: (x, y) |--> 2/(x**2 + y**2 + 1)
>     on V: (u, v) |--> 2*(u**2 + v**2)/(u**2 + v**2 + 1)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 923, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     M --> R
>     on U: (x, y) |--> a/(x**2 + y**2 + 1)
>     on V: (u, v) |--> a*(u**2 + v**2)/(u**2 + v**2 + 1)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 933, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     M --> R
>     on U: (x, y) |--> x/(x**2 + y**2 + 1)
>     on W: (u, v) |--> u/(u**2 + v**2 + 1)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 939, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     M --> R
>     on W: (x, y) |--> x/(x**4 + 2*x**2*y**2 + x**2 + y**4 + y**2)
>     on V: (u, v) |--> u*(u**2 + v**2)/(u**2 + v**2 + 1)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 950, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     1*f == f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[226]>", line 1, in <module>
>         Integer(1)*f == f
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1288, in __eq__
>         raise ValueError("no common chart for the comparison")
>     ValueError: no common chart for the comparison
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 952, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     (-2)*f == - f - f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[227]>", line 1, in <module>
>         (-Integer(2))*f == - f - f
>       File "sage/structure/element.pyx", line 1357, in sage.structure.element.Element.__sub__ (build/cythonized/sage/structure/element.c:11354)
>         return (<Element>left)._sub_(right)
>       File "sage/structure/element.pyx", line 2369, in sage.structure.element.ModuleElement._sub_ (build/cythonized/sage/structure/element.c:15403)
>         cpdef _sub_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2507, in _sub_
>         raise ValueError("no common chart for the subtraction")
>     ValueError: no common chart for the subtraction
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 958, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f*f ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[228]>", line 1, in <module>
>         s = f*f ; s
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2559, in _mul_
>         raise ValueError("no common chart for the multiplication")
>     ValueError: no common chart for the multiplication
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 960, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     f*f: M --> R
>     on U: (x, y) |--> 1/(x**4 + 2*x**2*y**2 + 2*x**2 + y**4 + 2*y**2 + 1)
>     on V: (u, v) |--> (u**4 + 2*u**2*v**2 + v**4)/(u**4 + 2*u**2*v**2 + 2*u**2 + v**4 + 2*v**2 + 1)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 965, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = g*h ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[230]>", line 1, in <module>
>         s = g*h ; s
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2563, in _mul_
>         result._express[chart] = self._express[chart] * other._express[chart]
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1378, in _mul_
>         res = self._simplify(self.expr() * other.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 968, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     g*h: U --> R
>        (x, y) |--> x*y*H(x, y)
>     on W: (u, v) |--> u*v*H(u/(u**2 + v**2), v/(u**2 + v**2))/(u**4 + 2*u**2*v**2 + v**4)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 981, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f*g ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[233]>", line 1, in <module>
>         s = f*g ; s
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1211, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10139)
>         return PyObject_CallObject(op, xy)
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2559, in _mul_
>         raise ValueError("no common chart for the multiplication")
>     ValueError: no common chart for the multiplication
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 984, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     f*g: U --> R
>        (x, y) |--> x*y/(x**2 + y**2 + 1)
>     on W: (u, v) |--> u*v/(u**4 + 2*u**2*v**2 + u**2 + v**4 + v**2)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 989, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s == f.restrict(U)*g
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[235]>", line 1, in <module>
>         s == f.restrict(U)*g
>       File "sage/structure/element.pyx", line 1515, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:11992)
>         return (<Element>left)._mul_(right)
>       File "sage/structure/element.pyx", line 2546, in sage.structure.element.RingElement._mul_ (build/cythonized/sage/structure/element.c:17496)
>         cpdef _mul_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2559, in _mul_
>         raise ValueError("no common chart for the multiplication")
>     ValueError: no common chart for the multiplication
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 994, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f/c ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[236]>", line 1, in <module>
>         s = f/c ; s
>       File "sage/structure/element.pyx", line 1716, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12795)
>         return (<Element>left)._div_(right)
>       File "sage/structure/element.pyx", line 2647, in sage.structure.element.RingElement._div_ (build/cythonized/sage/structure/element.c:18141)
>         cpdef _div_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2611, in _div_
>         raise ValueError("no common chart for the division")
>     ValueError: no common chart for the division
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 996, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     f/c: M --> R
>     on U: (x, y) |--> 1/(a*(x**2 + y**2 + 1))
>     on V: (u, v) |--> (u**2 + v**2)/(a*(u**2 + v**2 + 1))
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1000, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = g/h ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[238]>", line 1, in <module>
>         s = g/h ; s
>       File "sage/structure/element.pyx", line 1716, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12795)
>         return (<Element>left)._div_(right)
>       File "sage/structure/element.pyx", line 2647, in sage.structure.element.RingElement._div_ (build/cythonized/sage/structure/element.c:18141)
>         cpdef _div_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2615, in _div_
>         result._express[chart] = self._express[chart] / other._express[chart]
>       File "sage/structure/element.pyx", line 1716, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12795)
>         return (<Element>left)._div_(right)
>       File "sage/structure/element.pyx", line 2647, in sage.structure.element.RingElement._div_ (build/cythonized/sage/structure/element.c:18141)
>         cpdef _div_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1515, in _div_
>         if other.is_zero():
>       File "sage/structure/element.pyx", line 1037, in sage.structure.element.Element.is_zero (build/cythonized/sage/structure/element.c:9776)
>         return not self
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 805, in __bool__
>         val = self.expr(curr).is_zero
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1003, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     g/h: U --> R
>        (x, y) |--> x*y/H(x, y)
>     on W: (u, v) |--> u*v/((u**4 + 2*u**2*v**2 + v**4)*H(u/(u**2 + v**2), v/(u**2 + v**2)))
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1008, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = f/g ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[240]>", line 1, in <module>
>         s = f/g ; s
>       File "sage/structure/element.pyx", line 1718, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12830)
>         return coercion_model.bin_op(left, right, truediv)
>       File "sage/structure/coerce.pyx", line 1211, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10139)
>         return PyObject_CallObject(op, xy)
>       File "sage/structure/element.pyx", line 1716, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12795)
>         return (<Element>left)._div_(right)
>       File "sage/structure/element.pyx", line 2647, in sage.structure.element.RingElement._div_ (build/cythonized/sage/structure/element.c:18141)
>         cpdef _div_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2611, in _div_
>         raise ValueError("no common chart for the division")
>     ValueError: no common chart for the division
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1011, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     f/g: U --> R
>        (x, y) |--> 1/(x*y*(x**2 + y**2 + 1))
>     on W: (u, v) |--> (u**6 + 3*u**4*v**2 + 3*u**2*v**4 + v**6)/(u*v*(u**2 + v**2 + 1))
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1015, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s == f.restrict(U)/g
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[242]>", line 1, in <module>
>         s == f.restrict(U)/g
>       File "sage/structure/element.pyx", line 1716, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12795)
>         return (<Element>left)._div_(right)
>       File "sage/structure/element.pyx", line 2647, in sage.structure.element.RingElement._div_ (build/cythonized/sage/structure/element.c:18141)
>         cpdef _div_(self, other):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2611, in _div_
>         raise ValueError("no common chart for the division")
>     ValueError: no common chart for the division
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1021, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = g + x^2 - y ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[243]>", line 1, in <module>
>         s = g + x**Integer(2) - y ; s
>       File "sage/structure/element.pyx", line 1234, in sage.structure.element.Element.__add__ (build/cythonized/sage/structure/element.c:10832)
>         return coercion_model.bin_op(left, right, add)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1322, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11631)
>         y_elt = (<Map>y_map)._call_(y)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1023, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     U --> R
>     (x, y) |--> x**2 + x*y - y
>     on W: (u, v) |--> (-u**2*v + u**2 + u*v - v**3)/(u**4 + 2*u**2*v**2 + v**4)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1031, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = g*x ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[245]>", line 1, in <module>
>         s = g*x ; s
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1203, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10077)
>         return (<Action>action)._act_(y, x)
>       File "sage/structure/coerce_actions.pyx", line 632, in sage.structure.coerce_actions.RightModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8625)
>         return (<ModuleElement>a)._lmul_(<Element>g)  # a * g
>       File "sage/structure/element.pyx", line 2402, in sage.structure.element.ModuleElement._lmul_ (build/cythonized/sage/structure/element.c:15919)
>         cpdef _lmul_(self, Element right):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1034, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     U --> R
>     (x, y) |--> x**2*y
>     on W: (u, v) |--> u**2*v/(u**6 + 3*u**4*v**2 + 3*u**2*v**4 + v**6)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1041, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = g/x ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[247]>", line 1, in <module>
>         s = g/x ; s
>       File "sage/structure/element.pyx", line 1718, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12830)
>         return coercion_model.bin_op(left, right, truediv)
>       File "sage/structure/coerce.pyx", line 1203, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10077)
>         return (<Action>action)._act_(y, x)
>       File "sage/categories/action.pyx", line 369, in sage.categories.action.InverseAction._act_ (build/cythonized/sage/categories/action.c:5715)
>         return self._action._act_(~g, x)
>       File "sage/structure/coerce_actions.pyx", line 632, in sage.structure.coerce_actions.RightModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8625)
>         return (<ModuleElement>a)._lmul_(<Element>g)  # a * g
>       File "sage/structure/element.pyx", line 2402, in sage.structure.element.ModuleElement._lmul_ (build/cythonized/sage/structure/element.c:15919)
>         cpdef _lmul_(self, Element right):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1044, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     U --> R
>     (x, y) |--> y
>     on W: (u, v) |--> v/(u**2 + v**2)
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1048, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s = x/g ; s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField[249]>", line 1, in <module>
>         s = x/g ; s
>       File "sage/structure/element.pyx", line 1718, in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12830)
>         return coercion_model.bin_op(left, right, truediv)
>       File "sage/structure/coerce.pyx", line 1207, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10116)
>         xy = self.canonical_coercion(x, y)
>       File "sage/structure/coerce.pyx", line 1318, in sage.structure.coerce.CoercionModel.canonical_coercion (build/cythonized/sage/structure/coerce.c:11582)
>         x_elt = (<Map>x_map)._call_(x)
>       File "sage/categories/morphism.pyx", line 568, in sage.categories.morphism.SetMorphism._call_ (build/cythonized/sage/categories/morphism.c:8438)
>         return self._function(x)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/categories/unital_algebras.py", line 70, in from_base_ring
>         return self.one()._lmul_(r)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 2704, in _lmul_
>         result._express[chart] = number * expr
>       File "sage/structure/element.pyx", line 1517, in sage.structure.element.Element.__mul__ (build/cythonized/sage/structure/element.c:12027)
>         return coercion_model.bin_op(left, right, mul)
>       File "sage/structure/coerce.pyx", line 1201, in sage.structure.coerce.CoercionModel.bin_op (build/cythonized/sage/structure/coerce.c:10053)
>         return (<Action>action)._act_(x, y)
>       File "sage/structure/coerce_actions.pyx", line 599, in sage.structure.coerce_actions.LeftModuleAction._act_ (build/cythonized/sage/structure/coerce_actions.c:8312)
>         return (<ModuleElement>a)._rmul_(<Element>g)  # g * a
>       File "sage/structure/element.pyx", line 2392, in sage.structure.element.ModuleElement._rmul_ (build/cythonized/sage/structure/element.c:15777)
>         cpdef _rmul_(self, Element left):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 1420, in _rmul_
>         other = self._calc_method._tranf[curr](other)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1051, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     s.display()
> Expected:
>     U --> R
>     (x, y) |--> 1/y
>     on W: (u, v) |--> u**2/v + v
> Got:
>     M --> R
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1058, in sage.manifolds.scalarfield.ScalarField
> Failed example:
>     TestSuite(f).run()
> Expected nothing
> Got:
>     Failure in _test_pickling:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sage_unittest.py", line 296, in run
>         test_method(tester=tester)
>       File "sage/structure/sage_object.pyx", line 630, in sage.structure.sage_object.SageObject._test_pickling (build/cythonized/sage/structure/sage_object.c:4824)
>         tester.assertEqual(loads(dumps(self)), self)
>       File "/usr/lib/python3.8/unittest/case.py", line 912, in assertEqual
>         assertion_func(first, second, msg=msg)
>       File "/usr/lib/python3.8/unittest/case.py", line 902, in _baseAssertEqual
>         if not first == second:
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1288, in __eq__
>         raise ValueError("no common chart for the comparison")
>     ValueError: no common chart for the comparison
>     ------------------------------------------------------------
>     The following tests failed: _test_pickling
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1674, in sage.manifolds.scalarfield.ScalarField.expr
> Failed example:
>     type(f.expr())
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField.expr[13]>", line 1, in <module>
>         type(f.expr())
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> File "src/sage/manifolds/scalarfield.py", line 1676, in sage.manifolds.scalarfield.ScalarField.expr
> Failed example:
>     f.expr()  # note the SymPy exponent notation
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.manifolds.scalarfield.ScalarField.expr[14]>", line 1, in <module>
>         f.expr()  # note the SymPy exponent notation
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/scalarfield.py", line 1680, in expr
>         return self.coord_function(chart, from_chart).expr()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/chart_func.py", line 552, in expr
>         self._express[method] = self._calc_method._tranf[method](vv)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/manifolds/calculus_method.py", line 68, in _SR_to_Sympy
>         if type(expression) in sympy.core.all_classes:
>     AttributeError: module 'sympy.core' has no attribute 'all_classes'
> **********************************************************************
> 2 items had failures:
>   89 of 254 in sage.manifolds.scalarfield.ScalarField
>    2 of  16 in sage.manifolds.scalarfield.ScalarField.expr
>     [743 tests, 91 failures, 21.88 s]
> sage -t --long src/sage/manifolds/differentiable/pseudo_riemannian_submanifold.py
>     [354 tests, 198.76 s]
> sage -t --long src/sage/manifolds/scalarfield_algebra.py
>     [126 tests, 8.15 s]
> sage -t --long src/sage/manifolds/structure.py
>     [21 tests, 0.31 s]
> sage -t --long src/sage/manifolds/section_module.py
>     [180 tests, 5.90 s]
> sage -t --long src/sage/manifolds/subset.py
>     [209 tests, 2.78 s]
> sage -t --long src/sage/manifolds/topological_submanifold.py
>     [124 tests, 9.42 s]
> sage -t --long src/sage/manifolds/utilities.py
>     [261 tests, 4.47 s]
> sage -t --long src/sage/manifolds/trivialization.py
>     [204 tests, 18.55 s]
> sage -t --long src/sage/manifolds/vector_bundle_fiber.py
>     [68 tests, 3.27 s]
> sage -t --long src/sage/manifolds/vector_bundle.py
>     [227 tests, 10.41 s]
> sage -t --long src/sage/matrix/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/action.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/action.pyx
>     [109 tests, 0.30 s]
> sage -t --long src/sage/matrix/all.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/matrix/args.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/manifolds/vector_bundle_fiber_element.py
>     [28 tests, 1.96 s]
> sage -t --long src/sage/matrix/args.pyx
>     [134 tests, 0.37 s]
> sage -t --long src/sage/matrix/berlekamp_massey.py
>     [5 tests, 0.03 s]
> sage -t --long src/sage/matrix/change_ring.pyx
>     [4 tests, 0.02 s]
> sage -t --long src/sage/matrix/compute_J_ideal.py
>     [99 tests, 2.26 s]
> sage -t --long src/sage/matrix/constructor.pyx
>     [132 tests, 0.63 s]
> sage -t --long src/sage/matrix/docs.py
>     [55 tests, 0.08 s]
> sage -t --long src/sage/matrix/echelon_matrix.pyx
>     [12 tests, 0.32 s]
> sage -t --long src/sage/matrix/matrix.pyx
>     [5 tests, 0.01 s]
> sage -t --long src/sage/matrix/matrix.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix0.pyx
>     [858 tests, 4.03 s]
> sage -t --long src/sage/matrix/matrix0.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/benchmark.py
>     [63 tests, 9.78 s]
> sage -t --long src/sage/matrix/matrix1.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix1.pyx
>     [391 tests, 2.42 s]
> sage -t --long src/sage/manifolds/section.py
>     [735 tests, 45.98 s]
> sage -t --long src/sage/matrix/matrix2.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_complex_ball_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_complex_ball_dense.pyx
>     [83 tests, 0.26 s]
> sage -t --long src/sage/matrix/matrix_complex_double_dense.pyx
>     [13 tests, 0.28 s]
> sage -t --long src/sage/matrix/matrix_complex_double_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_cyclo_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_dense.pyx
>     [39 tests, 1.67 s]
> sage -t --long src/sage/matrix/matrix_domain_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_domain_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_double_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_cyclo_dense.pyx
>     [233 tests, 2.51 s]
> sage -t --long src/sage/matrix/matrix_gap.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_double_dense.pyx
> **********************************************************************
> File "src/sage/matrix/matrix_double_dense.pyx", line 2524, in sage.matrix.matrix_double_dense.Matrix_double_dense.is_unitary
> Failed example:
>     P.is_unitary(algorithm='orthonormal')
> Expected:
>     Traceback (most recent call last):
>     ...
>     error: ((lwork==-1)||(lwork >= MAX(1,2*n))) failed for 3rd keyword lwork: zgees:lwork=0
> Got:
>     <BLANKLINE>
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.matrix.matrix_double_dense.Matrix_double_dense.is_unitary[23]>", line 1, in <module>
>         P.is_unitary(algorithm='orthonormal')
>       File "sage/matrix/matrix_double_dense.pyx", line 2575, in sage.matrix.matrix_double_dense.Matrix_double_dense.is_unitary (build/cythonized/sage/matrix/matrix_double_dense.c:16168)
>         _, T = self.schur(base_ring=sage.rings.complex_double.CDF)
>       File "sage/matrix/matrix_double_dense.pyx", line 3275, in sage.matrix.matrix_double_dense.Matrix_double_dense.schur (build/cythonized/sage/matrix/matrix_double_dense.c:19290)
>         T._matrix_numpy, Q._matrix_numpy = scipy.linalg.schur(self._matrix_numpy, output=format)
>       File "/usr/lib/python3/dist-packages/scipy/linalg/decomp_schur.py", line 139, in schur
>         result = gees(lambda x: None, a1, lwork=-1)
>     ValueError: On entry to ZGEES parameter number 6 had an illegal value
> **********************************************************************
> 1 item had failures:
>    1 of  29 in sage.matrix.matrix_double_dense.Matrix_double_dense.is_unitary
>     [650 tests, 1 failure, 1.48 s]
> sage -t --long src/sage/matrix/matrix_generic_dense.pyx
>     [65 tests, 0.41 s]
> sage -t --long src/sage/matrix/matrix_generic_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_generic_sparse.pyx
>     [77 tests, 0.29 s]
> sage -t --long src/sage/matrix/matrix_generic_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_gf2e_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_gap.pyx
>     [116 tests, 2.80 s]
> sage -t --long src/sage/matrix/matrix_gfpn_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_gf2e_dense.pyx
>     [306 tests, 6.15 s]
> sage -t --long src/sage/matrix/matrix_integer_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix2.pyx
>     [2470 tests, 16.05 s]
> sage -t --long src/sage/matrix/matrix_integer_dense_saturation.py
>     [38 tests, 0.23 s]
> sage -t --long src/sage/matrix/matrix_integer_sparse.pyx
>     [147 tests, 2.05 s]
> sage -t --long src/sage/matrix/matrix_integer_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_misc.py
>     [22 tests, 0.05 s]
> sage -t --long src/sage/matrix/matrix_integer_dense.pyx
>     [641 tests, 16.57 s]
> sage -t --long src/sage/matrix/matrix_mod2_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_modn_dense_double.pyx
>     [30 tests, 0.05 s]
> sage -t --long src/sage/matrix/matrix_modn_dense_double.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_modn_dense_float.pyx
>     [20 tests, 0.06 s]
> sage -t --long src/sage/matrix/matrix_modn_dense_float.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_mod2_dense.pyx
>     [348 tests, 9.65 s]
> sage -t --long src/sage/matrix/matrix_modn_dense_template_header.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_modn_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_modn_sparse.pyx
>     [135 tests, 2.43 s]
> sage -t --long src/sage/matrix/matrix_mpolynomial_dense.pyx
>     [76 tests, 0.50 s]
> sage -t --long src/sage/matrix/matrix_mpolynomial_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_modn_dense_template.pxi
>     [507 tests, 4.43 s]
> sage -t --long src/sage/matrix/matrix_polynomial_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_polynomial_dense.pyx
>     [217 tests, 0.46 s]
> sage -t --long src/sage/matrix/matrix_rational_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_rational_sparse.pyx
>     [54 tests, 0.28 s]
> sage -t --long src/sage/matrix/matrix_rational_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_real_double_dense.pyx
>     [13 tests, 0.25 s]
> sage -t --long src/sage/matrix/matrix_real_double_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_rational_dense.pyx
>     [293 tests, 2.83 s]
> sage -t --long src/sage/matrix/matrix_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_sparse.pyx
>     [168 tests, 3.51 s]
> sage -t --long src/sage/matrix/matrix_space.py
>     [383 tests, 6.06 s]
> sage -t --long src/sage/matrix/matrix_symbolic_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_window.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_window.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/misc.pyx
>     [31 tests, 0.07 s]
> sage -t --long src/sage/matrix/operation_table.py
>     [176 tests, 0.51 s]
> sage -t --long src/sage/matrix/special.py
>     [442 tests, 1.03 s]
> sage -t --long src/sage/matrix/strassen.pyx
>     [69 tests, 1.24 s]
> sage -t --long src/sage/matrix/symplectic_basis.py
>     [46 tests, 0.25 s]
> sage -t --long src/sage/matrix/template.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/tests.py
>     [18 tests, 0.38 s]
> sage -t --long src/sage/matroids/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/advanced.py
>     [1 test, 0.02 s]
> sage -t --long src/sage/matroids/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/basis_exchange_matroid.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/basis_exchange_matroid.pyx
>     [190 tests, 0.36 s]
> sage -t --long src/sage/matroids/basis_matroid.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/basis_matroid.pyx
>     [152 tests, 0.30 s]
> sage -t --long src/sage/matrix/matrix_symbolic_dense.pyx
>     [205 tests, 6.26 s]
> sage -t --long src/sage/matroids/circuit_closures_matroid.pyx
>     [82 tests, 0.25 s]
> sage -t --long src/sage/matroids/circuit_closures_matroid.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/constructor.py
>     [145 tests, 0.34 s]
> sage -t --long src/sage/matroids/dual_matroid.py
>     [83 tests, 0.06 s]
> sage -t --long src/sage/matroids/extension.pyx
>     [48 tests, 0.10 s]
> sage -t --long src/sage/matroids/extension.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/graphic_matroid.py
>     [358 tests, 0.83 s]
> sage -t --long src/sage/matroids/lean_matrix.pyx
>     [249 tests, 0.39 s]
> sage -t --long src/sage/matroids/lean_matrix.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/linear_matroid.pyx
>     [654 tests, 0.93 s]
> sage -t --long src/sage/matroids/linear_matroid.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/matroid.pyx
>     [869 tests, 2.44 s]
> sage -t --long src/sage/matroids/matroid.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/matroids_catalog.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/matroids_plot_helpers.py
>     [73 tests, 1.34 s]
> sage -t --long src/sage/matroids/minor_matroid.py
>     [83 tests, 0.07 s]
> sage -t --long src/sage/matroids/named_matroids.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/rank_matroid.py
>     [59 tests, 0.08 s]
> sage -t --long src/sage/matroids/set_system.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/set_system.pyx
>     [78 tests, 0.10 s]
> sage -t --long src/sage/matroids/union_matroid.pyx
>     [35 tests, 0.03 s]
> sage -t --long src/sage/matroids/union_matroid.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/unpickling.pyx
>     [61 tests, 0.30 s]
> sage -t --long src/sage/matroids/utilities.py
>     [67 tests, 0.28 s]
> sage -t --long src/sage/media/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/media/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/media/channels.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/media/wav.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/abstract_method.py
>     [33 tests, 0.02 s]
> sage -t --long src/sage/misc/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/allocator.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/allocator.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/banner.py
>     [12 tests, 0.01 s]
> sage -t --long src/sage/misc/benchmark.py
>     [18 tests, 2.29 s]
> sage -t --long src/sage/misc/binary_tree.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/binary_tree.pyx
>     [61 tests, 1.00 s]
> sage -t --long src/sage/misc/bindable_class.py
>     [49 tests, 0.69 s]
> sage -t --long src/sage/misc/c3.pyx
>     [40 tests, 0.03 s]
> sage -t --long src/sage/misc/c3_controlled.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_integer_dense_hnf.py
>     [125 tests, 48.26 s]
> sage -t --long src/sage/misc/cachefunc.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/c3_controlled.pyx
>     [221 tests, 1.85 s]
> sage -t --long src/sage/misc/callable_dict.pyx
>     [12 tests, 0.01 s]
> sage -t --long src/sage/misc/citation.pyx
>     [13 tests, 1.36 s]
> sage -t --long src/sage/misc/classcall_metaclass.pyx
>     [87 tests, 0.03 s]
> sage -t --long src/sage/misc/classcall_metaclass.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/classgraph.py
>     [8 tests, 0.26 s]
> sage -t --long src/sage/misc/compat.py
>     [2 tests, 0.10 s]
> sage -t --long src/sage/misc/constant_function.pyx
>     [21 tests, 0.01 s]
> sage -t --long src/sage/misc/converting_dict.py
>     [64 tests, 0.39 s]
> sage -t --long src/sage/misc/copying.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matrix/matrix_gfpn_dense.pyx
>     [185 tests, 58.26 s]
> sage -t --long src/sage/misc/decorators.py
>     [130 tests, 0.06 s]
> sage -t --long src/sage/misc/defaults.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/misc/derivative.pyx
>     [29 tests, 0.02 s]
> sage -t --long src/sage/misc/dev_tools.py
>     [60 tests, 0.65 s]
> sage -t --long src/sage/misc/displayhook.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/misc/dist.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/misc/edit_module.py
>     [16 tests, 0.19 s]
> sage -t --long src/sage/misc/element_with_label.py
>     [50 tests, 0.49 s]
> sage -t --long src/sage/misc/explain_pickle.py
>     [329 tests, 0.12 s]
> sage -t --long src/sage/misc/fast_methods.pyx
>     [80 tests, 0.04 s]
> sage -t --long src/sage/misc/fast_methods.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/flatten.py
>     [15 tests, 0.03 s]
> sage -t --long src/sage/misc/fpickle.pyx
>     [11 tests, 0.01 s]
> sage -t --long src/sage/misc/func_persist.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/function_mangling.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/function_mangling.pyx
>     [33 tests, 0.02 s]
> sage -t --long src/sage/misc/cachefunc.pyx
>     [825 tests, 17.69 s]
> sage -t --long src/sage/misc/getusage.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/misc/cython.py
>     [48 tests, 15.01 s]
> sage -t --long src/sage/misc/html.py
>     [24 tests, 0.01 s]
> sage -t --long src/sage/misc/gperftools.py
>     [36 tests, 0.47 s]
> sage -t --long src/sage/misc/inherit_comparison.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/inline_fortran.py
>     [18 tests, 1.47 s]
> sage -t --long src/sage/misc/latex.py
>     [302 tests, 0.61 s]
> sage -t --long src/sage/misc/latex_macros.py
>     [11 tests, 0.03 s]
> sage -t --long src/sage/misc/inherit_comparison.pyx
>     [7 tests, 2.69 s]
> sage -t --long src/sage/misc/lazy_format.py
>     [23 tests, 0.01 s]
> sage -t --long src/sage/misc/lazy_import.pyx
>     [265 tests, 0.29 s]
> sage -t --long src/sage/misc/lazy_import_cache.py
>     [8 tests, 0.01 s]
> sage -t --long src/sage/misc/lazy_list.pyx
>     [238 tests, 0.08 s]
> sage -t --long src/sage/misc/lazy_list.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/lazy_string.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/lazy_string.pyx
>     [141 tests, 0.05 s]
> sage -t --long src/sage/misc/log.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/map_threaded.py
>     [5 tests, 0.02 s]
> sage -t --long src/sage/misc/mathml.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/messaging.py
>     [2 tests, 0.00 s]
> sage -t --long src/sage/misc/method_decorator.py
>     [13 tests, 0.04 s]
> sage -t --long src/sage/misc/functional.py
>     [348 tests, 14.99 s]
> sage -t --long src/sage/misc/misc_c.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/misc_c.pyx
>     [121 tests, 0.55 s]
> sage -t --long src/sage/misc/mrange.py
>     [98 tests, 0.06 s]
> sage -t --long src/sage/misc/multireplace.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/misc.py
> **********************************************************************
> File "src/sage/misc/misc.py", line 1620, in sage.misc.misc.AttrCallObject.__call__
> Failed example:
>     series(sin(x), 4)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.misc.misc.AttrCallObject.__call__[3]>", line 1, in <module>
>         series(sin(x), Integer(4))
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/misc.py", line 1623, in __call__
>         return getattr(x, self.name)(*(self.args + args), **self.kwds)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> 1 item had failures:
>    1 of   5 in sage.misc.misc.AttrCallObject.__call__
>     [277 tests, 1 failure, 1.62 s]
> sage -t --long src/sage/misc/nested_class.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/nested_class_test.py
>     [18 tests, 0.03 s]
> sage -t --long src/sage/misc/notes/bernoulli_mod_p.tex
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/object_multiplexer.py
>     [15 tests, 0.01 s]
> sage -t --long src/sage/misc/package.py
>     [17 tests, 0.01 s]
> sage -t --long src/sage/misc/lazy_attribute.pyx
>     [123 tests, 3.06 s]
> sage -t --long src/sage/misc/pager.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/parser.pyx
>     [176 tests, 0.09 s]
> sage -t --long src/sage/misc/pickle_old.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/nested_class.pyx
>     [72 tests, 1.38 s]
> sage -t --long src/sage/misc/profiler.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/proof.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/python.py
>     [7 tests, 0.01 s]
> sage -t --long src/sage/misc/random_testing.py
>     [19 tests, 0.02 s]
> sage -t --long src/sage/misc/prandom.py
>     [49 tests, 1.06 s]
> sage -t --long src/sage/misc/randstate.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/remote_file.py
>     [1 test, 0.00 s]
> sage -t --long src/sage/misc/persist.pyx
>     [161 tests, 2.06 s]
> sage -t --long src/sage/misc/rest_index_of_methods.py
>     [26 tests, 0.08 s]
> sage -t --long src/sage/misc/sage_eval.py
>     [43 tests, 0.33 s]
> sage -t --long src/sage/misc/reset.pyx
>     [34 tests, 1.41 s]
> sage -t --long src/sage/misc/sage_ostools.pyx
>     [42 tests, 0.04 s]
> sage -t --long src/sage/misc/sage_input.py
>     [732 tests, 0.45 s]
> sage -t --long src/sage/misc/sage_timeit.py
>     [44 tests, 2.06 s]
> sage -t --long src/sage/misc/sage_unittest.py
>     [88 tests, 0.29 s]
> sage -t --long src/sage/misc/sage_timeit_class.pyx
>     [7 tests, 5.86 s]
> sage -t --long src/sage/misc/randstate.pyx
>     [144 tests, 11.65 s]
> sage -t --long src/sage/misc/search.pyx
>     [4 tests, 0.01 s]
> sage -t --long src/sage/misc/search.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/misc/session.pyx
>     [54 tests, 2.28 s]
> sage -t --long src/sage/misc/sh.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/misc/six.py
>     [26 tests, 0.01 s]
> sage -t --long src/sage/misc/sphinxify.py
> **********************************************************************
> File "src/sage/misc/sphinxify.py", line 52, in sage.misc.sphinxify.sphinxify
> Failed example:
>     sphinxify('A test')
> Expected:
>     '<div class="docstring">\n    \n  <p>A test</p>\n\n\n</div>'
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.misc.sphinxify.sphinxify[1]>", line 1, in <module>
>         sphinxify('A test')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sphinxify.py", line 123, in sphinxify
>         sphinx_app.build(None, [rst_name])
>       File "/usr/lib/python3/dist-packages/sphinx/application.py", line 340, in build
>         self.builder.build_specific(filenames)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 287, in build_specific
>         self.build(to_write, method='specific',
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 364, in build
>         self.finish()
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 630, in finish
>         self.finish_tasks.add_task(self.gen_additional_pages)
>       File "/usr/lib/python3/dist-packages/sphinx/util/parallel.py", line 49, in add_task
>         res = task_func()
>       File "/usr/lib/python3/dist-packages/sphinx/util/__init__.py", line 686, in wrapper
>         return f(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 665, in gen_additional_pages
>         self.handle_page('search', {}, 'search.html')
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 1023, in handle_page
>         output = self.templates.render(templatename, ctx)
>       File "/usr/lib/python3/dist-packages/sphinx/jinja2glue.py", line 192, in render
>         return self.environment.get_template(template).render(context)
>       File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1088, in render
>         return concat(self.root_render_func(self.new_context(vars)))
>       File "/<<PKGBUILDDIR>>/sage/src/doc/common/themes/sage/search.html", line 23, in root
>         <p>
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 131, in __add__
>         ret += other
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 122, in __iadd__
>         warnings.warn('To modify script_files in the theme is deprecated. '
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     sphinx.deprecation.RemovedInSphinx30Warning: To modify script_files in the theme is deprecated. Please insert a <script> tag directly in your theme instead.
>     '<div class="docstring">\n    \n  <p>A test</p>\n\n\n</div>'
> **********************************************************************
> File "src/sage/misc/sphinxify.py", line 54, in sage.misc.sphinxify.sphinxify
> Failed example:
>     sphinxify('**Testing**\n`monospace`')
> Expected:
>     '<div class="docstring"...<strong>Testing</strong>\n<span class="math...</p>\n\n\n</div>'
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.misc.sphinxify.sphinxify[2]>", line 1, in <module>
>         sphinxify('**Testing**\n`monospace`')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sphinxify.py", line 123, in sphinxify
>         sphinx_app.build(None, [rst_name])
>       File "/usr/lib/python3/dist-packages/sphinx/application.py", line 340, in build
>         self.builder.build_specific(filenames)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 287, in build_specific
>         self.build(to_write, method='specific',
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 364, in build
>         self.finish()
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 630, in finish
>         self.finish_tasks.add_task(self.gen_additional_pages)
>       File "/usr/lib/python3/dist-packages/sphinx/util/parallel.py", line 49, in add_task
>         res = task_func()
>       File "/usr/lib/python3/dist-packages/sphinx/util/__init__.py", line 686, in wrapper
>         return f(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 665, in gen_additional_pages
>         self.handle_page('search', {}, 'search.html')
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 1023, in handle_page
>         output = self.templates.render(templatename, ctx)
>       File "/usr/lib/python3/dist-packages/sphinx/jinja2glue.py", line 192, in render
>         return self.environment.get_template(template).render(context)
>       File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1088, in render
>         return concat(self.root_render_func(self.new_context(vars)))
>       File "/<<PKGBUILDDIR>>/sage/src/doc/common/themes/sage/search.html", line 23, in root
>         <p>
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 131, in __add__
>         ret += other
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 122, in __iadd__
>         warnings.warn('To modify script_files in the theme is deprecated. '
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     sphinx.deprecation.RemovedInSphinx30Warning: To modify script_files in the theme is deprecated. Please insert a <script> tag directly in your theme instead.
>     '<div class="docstring">\n    \n  <p><strong>Testing</strong>\n<span class="math notranslate nohighlight">monospace</span></p>\n\n\n</div>'
> **********************************************************************
> File "src/sage/misc/sphinxify.py", line 56, in sage.misc.sphinxify.sphinxify
> Failed example:
>     sphinxify('`x=y`')
> Expected:
>     '<div class="docstring">\n    \n  <p><span class="math notranslate nohighlight">x=y</span></p>\n\n\n</div>'
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.misc.sphinxify.sphinxify[3]>", line 1, in <module>
>         sphinxify('`x=y`')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sphinxify.py", line 123, in sphinxify
>         sphinx_app.build(None, [rst_name])
>       File "/usr/lib/python3/dist-packages/sphinx/application.py", line 340, in build
>         self.builder.build_specific(filenames)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 287, in build_specific
>         self.build(to_write, method='specific',
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 364, in build
>         self.finish()
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 630, in finish
>         self.finish_tasks.add_task(self.gen_additional_pages)
>       File "/usr/lib/python3/dist-packages/sphinx/util/parallel.py", line 49, in add_task
>         res = task_func()
>       File "/usr/lib/python3/dist-packages/sphinx/util/__init__.py", line 686, in wrapper
>         return f(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 665, in gen_additional_pages
>         self.handle_page('search', {}, 'search.html')
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 1023, in handle_page
>         output = self.templates.render(templatename, ctx)
>       File "/usr/lib/python3/dist-packages/sphinx/jinja2glue.py", line 192, in render
>         return self.environment.get_template(template).render(context)
>       File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1088, in render
>         return concat(self.root_render_func(self.new_context(vars)))
>       File "/<<PKGBUILDDIR>>/sage/src/doc/common/themes/sage/search.html", line 23, in root
>         <p>
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 131, in __add__
>         ret += other
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 122, in __iadd__
>         warnings.warn('To modify script_files in the theme is deprecated. '
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     sphinx.deprecation.RemovedInSphinx30Warning: To modify script_files in the theme is deprecated. Please insert a <script> tag directly in your theme instead.
>     '<div class="docstring">\n    \n  <p><span class="math notranslate nohighlight">x=y</span></p>\n\n\n</div>'
> **********************************************************************
> File "src/sage/misc/sphinxify.py", line 66, in sage.misc.sphinxify.sphinxify
> Failed example:
>     _ = sphinxify('A test')
> Expected nothing
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.misc.sphinxify.sphinxify[7]>", line 1, in <module>
>         _ = sphinxify('A test')
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sphinxify.py", line 123, in sphinxify
>         sphinx_app.build(None, [rst_name])
>       File "/usr/lib/python3/dist-packages/sphinx/application.py", line 340, in build
>         self.builder.build_specific(filenames)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 287, in build_specific
>         self.build(to_write, method='specific',
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 364, in build
>         self.finish()
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 630, in finish
>         self.finish_tasks.add_task(self.gen_additional_pages)
>       File "/usr/lib/python3/dist-packages/sphinx/util/parallel.py", line 49, in add_task
>         res = task_func()
>       File "/usr/lib/python3/dist-packages/sphinx/util/__init__.py", line 686, in wrapper
>         return f(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 665, in gen_additional_pages
>         self.handle_page('search', {}, 'search.html')
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 1023, in handle_page
>         output = self.templates.render(templatename, ctx)
>       File "/usr/lib/python3/dist-packages/sphinx/jinja2glue.py", line 192, in render
>         return self.environment.get_template(template).render(context)
>       File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1088, in render
>         return concat(self.root_render_func(self.new_context(vars)))
>       File "/<<PKGBUILDDIR>>/sage/src/doc/common/themes/sage/search.html", line 23, in root
>         <p>
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 131, in __add__
>         ret += other
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 122, in __iadd__
>         warnings.warn('To modify script_files in the theme is deprecated. '
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     sphinx.deprecation.RemovedInSphinx30Warning: To modify script_files in the theme is deprecated. Please insert a <script> tag directly in your theme instead.
> **********************************************************************
> 1 item had failures:
>    4 of  10 in sage.misc.sphinxify.sphinxify
>     [9 tests, 4 failures, 1.08 s]
> sage -t --long src/sage/misc/stopgap.pyx
>     [11 tests, 0.01 s]
> sage -t --long src/sage/misc/superseded.py
>     [60 tests, 3.05 s]
> sage -t --long src/sage/misc/table.py
>     [77 tests, 0.06 s]
> sage -t --long src/sage/misc/temporary_file.py
>     [73 tests, 1.71 s]
> sage -t --long src/sage/misc/test_class_pickling.py
>     [14 tests, 0.01 s]
> sage -t --long src/sage/misc/trace.py
>     [12 tests, 3.03 s]
> sage -t --long src/sage/misc/unknown.py
>     [23 tests, 0.03 s]
> sage -t --long src/sage/misc/viewer.py
>     [52 tests, 0.02 s]
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9a8710a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 2977.
> sage -t --long src/sage/misc/weak_dict.pyx
>     [271 tests, 0.73 s]
> sage -t --long src/sage/misc/weak_dict.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/abvar/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/matroids/catalog.py
>     [206 tests, 77.20 s]
> sage -t --long src/sage/modular/abvar/abvar_ambient_jacobian.py
>     [53 tests, 1.31 s]
> sage -t --long src/sage/modular/abvar/abvar_newform.py
>     [32 tests, 1.00 s]
> sage -t --long src/sage/modular/abvar/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/abvar/constructor.py
>     [15 tests, 0.30 s]
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/markupsafe/_speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Stemmer.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstemmer.so.0d)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Visitor.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Tempita/_tempita.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/FlowControl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/_rinterface_cffi_api.abi3.so)
> (No debugging symbols found in /usr/lib/libR.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libicuuc.so.67)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libicui18n.so.67)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libicudata.so.67)
> (No debugging symbols found in /usr/lib/python3/dist-packages/_cffi_backend.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/R/library/methods/libs/methods.so)
> (No debugging symbols found in /usr/lib/R/library/utils/libs/utils.so)
> (No debugging symbols found in /usr/lib/R/library/grDevices/libs/grDevices.so)
> (No debugging symbols found in /usr/lib/R/library/graphics/libs/graphics.so)
> (No debugging symbols found in /usr/lib/R/library/stats/libs/stats.so)
> (No debugging symbols found in /usr/lib/R/library/tools/libs/tools.so)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9a8710a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0790, __pyx_v_self=0x7fad9f4f0790, 
>     __pyx_v_exc=0x7fad9aa00880) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0790, __pyx_args=0x7fad9aa00880, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9aa00880
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9a8710a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9a8710a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 2977) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_obxbix30.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> sage -t --long src/sage/modular/abvar/cuspidal_subgroup.py
>     [66 tests, 0.93 s]
> sage -t --long src/sage/misc/sageinspect.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=2977) failed:
> sage: from sage.misc.sageinspect import * ## line 16 ##
> sage: sage_getfile(sage.rings.rational) ## line 22 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/rational.pyx'
> sage: sage_getdoc(sage.rings.rational).lstrip() ## line 25 ##
> 'Rational Numbers\n\nAUTHORS:\n\n* William Stein (2005): first version\n\n* William Stein (2006-02-22): floor and ceil (pure fast GMP versions).\n\n* Gonzalo Tornaria and William Stein (2006-03-02): greatly improved\n  python/GMP conversion; hashing\n\n* William Stein and Naqi Jaffery (2006-03-06): height, sqrt examples,\n  and improve behavior of sqrt.\n\n* David Harvey (2006-09-15): added nth_root\n\n* Pablo De Napoli (2007-04-01): corrected the implementations of\n  multiplicative_order, is_one; optimized __nonzero__ ; documented:\n  lcm,gcd\n\n* John Cremona (2009-05-15): added support for local and global\n  logarithmic heights.\n\n* Travis Scrimshaw (2012-10-18): Added doctests for full coverage.\n\n* Vincent Delecroix (2013): continued fraction\n\n* Vincent Delecroix (2017-05-03): faster integer-rational comparison\n\n* Vincent Klein (2017-05-11): add __mpq__() to class Rational\n\n* Vincent Klein (2017-05-22): Rational constructor support gmpy2.mpq\n  or gmpy2.mpz parameter. Add __mpz__ to class Rational.\n'
> sage: sage_getsource(sage.rings.rational)[5:] ## line 28 ##
> 'Rational Numbers\n\nAUTHORS:\n\n- William Stein (2005): first version\n\n- William Stein (2006-02-22): floor and ceil (pure fast GMP versions).\n\n- Gonzalo Tornaria and William Stein (2006-03-02): greatly improved\n  python/GMP conversion; hashing\n\n- William Stein and Naqi Jaffery (2006-03-06): height, sqrt examples,\n  and improve behavior of sqrt.\n\n- David Harvey (2006-09-15): added nth_root\n\n- Pablo De Napoli (2007-04-01): corrected the implementations of\n  multiplicative_order, is_one; optimized __nonzero__ ; documented:\n  lcm,gcd\n\n- John Cremona (2009-05-15): added support for local and global\n  logarithmic heights.\n\n- Travis Scrimshaw (2012-10-18): Added doctests for full coverage.\n\n- Vincent Delecroix (2013): continued fraction\n\n- Vincent Delecroix (2017-05-03): faster integer-rational comparison\n\n- Vincent Klein (2017-05-11): add __mpq__() to class Rational\n\n- Vincent Klein (2017-05-22): Rational constructor support gmpy2.mpq\n  or gmpy2.mpz parameter. Add __mpz__ to class Rational.\n\nTESTS::\n\n    sage: a = -2/3\n    sage: a == loads(dumps(a))\n    True\n"""\n\n#*****************************************************************************\n#       Copyright (C) 2004, 2006 William Stein <wstein at gmail.com>\n#       Copyright (C) 2017 Vincent Delecroix <20100.delecroix at gmail.com>\n#\n#  Distributed under the terms of the GNU General Public License (GPL)\n#  as published by the Free Software Foundation; either version 2 of\n#  the License, or (at your option) any later version.\n#                  http://www.gnu.org/licenses/\n#*****************************************************************************\n\ncimport cython\nfrom cpython cimport *\nfrom cpython.object cimport Py_EQ, Py_NE\n\nfrom cysignals.signals cimport sig_on, sig_off\n\nimport sys\nimport operator\nimport fractions\n\nfrom sage.misc.mathml import mathml\nfrom sage.arith.long cimport pyobject_to_long, integer_check_long_py\nfrom sage.cpython.string cimport char_to_str, str_to_bytes\n\nimport sage.misc.misc as misc\nfrom sage.structure.sage_object cimport SageObject\nfrom sage.structure.richcmp cimport rich_to_bool_sgn\nimport sage.rings.rational_field\n\ncimport sage.rings.integer as integer\nfrom .integer cimport Integer\n\nfrom cypari2.paridecl cimport *\nfrom cypari2.gen cimport Gen as pari_gen\nfrom sage.libs.pari.convert_gmp cimport INT_to_mpz, INTFRAC_to_mpq, new_gen_from_mpq_t\n\nfrom .integer_ring import ZZ\nfrom sage.arith.rational_reconstruction cimport mpq_rational_reconstruction\n\nfrom sage.structure.coerce cimport is_numpy_type\n\nfrom sage.libs.gmp.pylong cimport mpz_set_pylong\n\nfrom sage.structure.coerce cimport coercion_model\nfrom sage.structure.element cimport Element\nfrom sage.structure.element import coerce_binop\nfrom sage.structure.parent cimport Parent\nfrom sage.categories.morphism cimport Morphism\nfrom sage.categories.map cimport Map\n\n\n\nimport sage.rings.real_mpfr\nimport sage.rings.real_double\nfrom libc.stdint cimport uint64_t\nfrom sage.libs.gmp.binop cimport mpq_add_z, mpq_mul_z, mpq_div_zz\n\nfrom cpython.int cimport PyInt_AS_LONG\n\ncimport sage.rings.fast_arith\nimport  sage.rings.fast_arith\n\ncdef sage.rings.fast_arith.arith_int ai\nai = sage.rings.fast_arith.arith_int()\n\ncdef object numpy_long_interface = {\'typestr\': \'=i4\' if sizeof(long) == 4 else \'=i8\' }\ncdef object numpy_int64_interface = {\'typestr\': \'=i8\'}\ncdef object numpy_object_interface = {\'typestr\': \'|O\'}\ncdef object numpy_double_interface = {\'typestr\': \'=f8\'}\n\nfrom libc.math cimport ldexp\nfrom sage.libs.gmp.all cimport *\n\ncimport gmpy2\ngmpy2.import_gmpy2()\n\n\ncdef class Rational(sage.structure.element.FieldElement)\n'
> sage: sage_getfile(sage.misc.sageinspect) ## line 33 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sageinspect.py'
> sage: print(sage_getdoc(sage.misc.sageinspect).lstrip()[:40]) ## line 36 ##
> Inspect Python, Sage, and Cython objects
> sage: sage_getsource(sage.misc.sageinspect).lstrip()[5:-1] ## line 39 ##
> 'Inspect Python, Sage, and Cython objects\n\nThis module extends parts of Python\'s inspect module to Cython objects.\n\nAUTHORS:\n\n- originally taken from Fernando Perez\'s IPython\n- William Stein (extensive modifications)\n- Nick Alexander (extensions)\n- Nick Alexander (testing)\n- Simon King (some extension for Cython, generalisation of SageArgSpecVisitor)\n\nEXAMPLES::\n\n    sage: from sage.misc.sageinspect import *\n\nTest introspection of modules defined in Python and Cython files:\n\nCython modules::\n\n    sage: sage_getfile(sage.rings.rational)\n    \'.../rational.pyx\'\n\n    sage: sage_getdoc(sage.rings.rational).lstrip()\n    \'Rational Numbers...\'\n\n    sage: sage_getsource(sage.rings.rational)[5:]\n    \'Rational Numbers...\'\n\nPython modules::\n\n    sage: sage_getfile(sage.misc.sageinspect)\n    \'.../sageinspect.py\'\n\n    sage: print(sage_getdoc(sage.misc.sageinspect).lstrip()[:40])\n    Inspect Python, Sage, and Cython objects\n\n    sage: sage_getsource(sage.misc.sageinspect).lstrip()[5:-1]\n    \'Inspect Python, Sage, and Cython objects...\'\n\nTest introspection of classes defined in Python and Cython files:\n\nCython classes::\n\n    sage: sage_getfile(sage.rings.rational.Rational)\n    \'.../rational.pyx\'\n\n    sage: sage_getdoc(sage.rings.rational.Rational).lstrip()\n    \'A rational number...\'\n\n    sage: sage_getsource(sage.rings.rational.Rational)\n    \'cdef class Rational...\'\n\nPython classes::\n\n    sage: sage_getfile(BlockFinder)\n    \'.../sage/misc/sageinspect.py\'\n\n    sage: sage_getdoc(BlockFinder).lstrip()\n    \'Provide a tokeneater() method to detect the...\'\n\n    sage: sage_getsource(BlockFinder)\n    \'class BlockFinder:...\'\n\nTest introspection of functions defined in Python and Cython files:\n\nCython functions::\n\n    sage: sage_getdef(sage.rings.rational.make_rational, obj_name=\'mr\')\n    \'mr(s)\'\n\n    sage: sage_getfile(sage.rings.rational.make_rational)\n    \'.../rational.pyx\'\n\n    sage: sage_getdoc(sage.rings.rational.make_rational).lstrip()\n    \'Make a rational number ...\'\n\n    sage: sage_getsource(sage.rings.rational.make_rational)[4:]\n    \'make_rational(s):...\'\n\nPython functions::\n\n    sage: sage_getdef(sage.misc.sageinspect.sage_getfile, obj_name=\'sage_getfile\')\n    \'sage_getfile(obj)\'\n\n    sage: sage_getfile(sage.misc.sageinspect.sage_getfile)\n    \'.../sageinspect.py\'\n\n    sage: sage_getdoc(sage.misc.sageinspect.sage_getfile).lstrip()\n    \'Get the full file name associated to "obj" as a string...\'\n\n    sage: sage_getsource(sage.misc.sageinspect.sage_getfile)[4:]\n    \'sage_getfile(obj):...\'\n\nUnfortunately, no argspec is extractable from builtins. Hence, we use a\ngeneric argspec::\n\n    sage: sage_getdef(\'\'.find, \'find\')\n    \'find(*args, **kwds)\'\n\n    sage: sage_getdef(str.find, \'find\')\n    \'find(*args, **kwds)\'\n\nBy :trac:`9976` and :trac:`14017`, introspection also works for interactively\ndefined Cython code, and with rather tricky argument lines::\n\n    sage: cython(\'def foo(unsigned int x=1, a=\\\')"\\\', b={not (2+1==3):\\\'bar\\\'}, *args, **kwds): return\')\n    sage: print(sage_getsource(foo))\n    def foo(unsigned int x=1, a=\')"\', b={not (2+1==3):\'bar\'}, *args, **kwds): return\n    sage: sage_getargspec(foo)\n    ArgSpec(args=[\'x\', \'a\', \'b\'], varargs=\'args\', keywords=\'kwds\', defaults=(1, \')"\', {False: \'bar\'}))\n\n"""\nfrom __future__ import print_function, absolute_import\n\nimport six\nfrom six import iteritems, string_types, class_types\nfrom six.moves import range\n\nimport ast\nimport inspect\nimport functools\nimport os\nimport sys\nimport tokenize\nimport re\nimport sysconfig\nEMBEDDED_MODE = False\nfrom sage.env import SAGE_LIB\n\ntry:\n    import importlib.machinery as import_machinery\nexcept ImportError:\n    pass\n\n\ndef loadable_module_extension():\n    r"""\n    Return the filename extension of loadable modules, including the dot.\n\n    It is \'.dll\' on cygwin, \'.so\' otherwise.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import loadable_module_extension\n        sage: sage.structure.sage_object.__file__.endswith(loadable_module_extension())\n        True\n    """\n    if six.PY2:\n        if sys.platform == \'cygwin\':\n            return os.path.extsep + \'dll\'\n        else:\n            return os.path.extsep + \'so\'\n    else:\n        # Return the full platform-specific extension module suffix\n        return import_machinery.EXTENSION_SUFFIXES[0]\n\n\ndef isclassinstance(obj):\n    r"""\n    Checks if argument is instance of non built-in class\n\n    INPUT: ``obj`` - object\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import isclassinstance\n        sage: isclassinstance(int)\n        False\n        sage: isclassinstance(FreeModule)\n        True\n        sage: class myclass: pass\n        sage: isclassinstance(myclass)\n        False\n        sage: class mymetaclass(type): pass\n        sage: class myclass2:\n        ....:     __metaclass__ = mymetaclass\n        sage: isclassinstance(myclass2)\n        False\n    """\n\n    builtin_mods = set([\'__builtin__\', \'builtins\', \'exceptions\'])\n\n    return (not inspect.isclass(obj) and\n            hasattr(obj, \'__class__\') and\n            hasattr(obj.__class__, \'__module__\') and\n            obj.__class__.__module__ not in builtin_mods)\n\n\n# Parse strings of form "File: sage/rings/rational.pyx (starting at line 1080)"\n# "\\ " protects a space in re.VERBOSE mode.\n__embedded_position_re = re.compile(r\'\'\'\n^                                           # anchor to the beginning of the line\nFile:\\ (?P<FILENAME>.*?)                    # match File: then filename\n\\ \\(starting\\ at\\ line\\ (?P<LINENO>\\d+)\\)   # match line number\n\\n?                                         # if there is a newline, eat it\n(?P<ORIGINAL>.*)                            # the original docstring is the end\n\\Z                                          # anchor to the end of the string\n\'\'\', re.MULTILINE | re.DOTALL | re.VERBOSE)\n\n# Parse Python identifiers\n__identifier_re = re.compile(r"^[^\\d\\W]\\w*")\n\ndef _extract_embedded_position(docstring):\n    r"""\n    If docstring has a Cython embedded position, return a tuple\n    (original_docstring, filename, line).  If not, return None.\n\n    INPUT: ``docstring`` (string)\n\n    EXAMPLES::\n\n       sage: from sage.misc.sageinspect import _extract_embedded_position\n       sage: import inspect\n       sage: _extract_embedded_position(inspect.getdoc(var))[1][-21:]\n       \'sage/calculus/var.pyx\'\n\n    TESTS:\n\n    The following has been fixed in :trac:`13916`::\n\n        sage: cython(\'\'\'cpdef test_funct(x,y): return\'\'\')\n        sage: func_doc = inspect.getdoc(test_funct)\n        sage: with open(_extract_embedded_position(func_doc)[1]) as f:\n        ....:     print(f.read())\n        cpdef test_funct(x,y): return\n\n    Ensure that the embedded filename of the compiled function is correct.  In\n    particular it should be relative to ``SPYX_TMP`` in order for certain\n    documentation functions to work properly.  See :trac:`24097`::\n\n        sage: from sage.env import DOT_SAGE\n        sage: from sage.misc.sage_ostools import restore_cwd\n        sage: with restore_cwd(DOT_SAGE):\n        ....:     cython(\'\'\'cpdef test_funct(x,y): return\'\'\')\n        sage: func_doc = inspect.getdoc(test_funct)\n        sage: with open(_extract_embedded_position(func_doc)[1]) as f:\n        ....:     print(f.read())\n        cpdef test_funct(x,y): return\n\n    AUTHORS:\n\n    - William Stein\n    - Extensions by Nick Alexander\n    - Extension for interactive Cython code by Simon King\n    """\n    try:\n        res = __embedded_position_re.search(docstring)\n    except TypeError:\n        return None\n\n    if res is None:\n        return None\n\n    raw_filename = res.group(\'FILENAME\')\n    filename = raw_filename\n\n    if not os.path.isabs(filename):\n        # Try some common path prefixes for Cython modules built by/for Sage\n        # 1) Module in the sage src tree\n        # 2) Module compiled by Sage\'s inline cython() compiler\n        from sage.misc.misc import SPYX_TMP\n        try_filenames = [\n            os.path.join(SAGE_LIB, raw_filename),\n            os.path.join(SPYX_TMP, \'_\'.join(raw_filename.split(\'_\')[:-1]),\n                         raw_filename)\n        ]\n        for try_filename in try_filenames:\n            if os.path.exists(try_filename):\n                filename = try_filename\n                break\n        # Otherwise we keep the relative path and just hope it\'s relative to\n        # the cwd; otherwise there\'s no way to be sure.\n\n    lineno = int(res.group(\'LINENO\'))\n    original = res.group(\'ORIGINAL\')\n    return (original, filename, lineno)\n\ndef _extract_embedded_signature(docstring, name):\n    r"""\n    If docstring starts with the embedded of a method called ``name``, return\n    a tuple (original_docstring, argspec).  If not, return (docstring, None).\n\n    See :trac:`17814`.\n\n    INPUT: ``docstring`` (string)\n\n    AUTHORS:\n\n    - Simon King\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import _extract_embedded_signature\n        sage: from sage.misc.nested_class import MainClass\n        sage: print(_extract_embedded_signature(MainClass.NestedClass.NestedSubClass.dummy.__doc__, \'dummy\')[0])\n        File: sage/misc/nested_class.pyx (starting at line ...)\n        ...\n        sage: _extract_embedded_signature(MainClass.NestedClass.NestedSubClass.dummy.__doc__, \'dummy\')[1]\n        ArgSpec(args=[\'self\', \'x\', \'r\'], varargs=\'args\', keywords=\'kwds\', defaults=((1, 2, 3.4),))\n        sage: _extract_embedded_signature(range.__call__.__doc__, \'__call__\')  # py2\n        (\'x.__call__(...) <==> x(...)\', None)\n        sage: _extract_embedded_signature(range.__call__.__doc__, \'__call__\')  # py3\n        (\'Call self as a function.\', None)\n\n    """\n    # If there is an embedded signature, it is in the first line\n    L = docstring.split(os.linesep, 1)\n    firstline = L[0]\n    # It is possible that the signature is of the form ClassName.method_name,\n    # and thus we need to do the following:\n    if name not in firstline:\n        return docstring, None\n    signature = firstline.split(name, 1)[-1]\n    if signature.startswith("(") and signature.endswith(")"):\n        docstring = L[1] if len(L)>1 else \'\' # Remove first line, keep the rest\n        def_string = "def "+name+signature+": pass"\n        try:\n            return docstring, inspect.ArgSpec(*_sage_getargspec_cython(def_string))\n        except SyntaxError:\n            docstring = os.linesep.join(L)\n    return docstring, None\n\nclass BlockFinder:\n    """\n    Provide a tokeneater() method to detect the end of a code block.\n\n    This is the Python library\'s :class:`inspect.BlockFinder` modified\n    to recognize Cython definitions.\n    """\n    def __init__(self):\n        self.indent = 0\n        self.islambda = False\n        self.started = False\n        self.passline = False\n        self.last = 1\n\n    def tokeneater(self, type, token, srow_scol, erow_ecol, line):\n        srow, scol = srow_scol\n        erow, ecol = erow_ecol\n        if not self.started:\n            # look for the first "(cp)def", "class" or "lambda"\n            if token in ("def", "cpdef", "class", "lambda"):\n                if token == "lambda":\n                    self.islambda = True\n                self.started = True\n            self.passline = True    # skip to the end of the line\n        elif type == tokenize.NEWLINE:\n            self.passline = False   # stop skipping when a NEWLINE is seen\n            self.last = srow\n            if self.islambda:       # lambdas always end at the first NEWLINE\n                raise inspect.EndOfBlock\n        elif self.passline:\n            pass\n        elif type == tokenize.INDENT:\n            self.indent = self.indent + 1\n            self.passline = True\n        elif type == tokenize.DEDENT:\n            self.indent = self.indent - 1\n            # the end of matching indent/dedent pairs end a block\n            # (note that this only works for "def"/"class" blocks,\n            #  not e.g. for "if: else:" or "try: finally:" blocks)\n            if self.indent <= 0:\n                raise inspect.EndOfBlock\n        elif self.indent == 0 and type not in (tokenize.COMMENT, tokenize.NL):\n            # any other token on the same indentation level end the previous\n            # block as well, except the pseudo-tokens COMMENT and NL.\n            raise inspect.EndOfBlock\n\n\ndef _getblock(lines):\n    """\n    Extract the block of code at the top of the given list of lines.\n\n    This is the Python library\'s :func:`inspect.getblock`, except that\n    it uses an instance of our custom :class:`BlockFinder`.\n    """\n    blockfinder = BlockFinder()\n    iter_lines = iter(lines)\n    if six.PY2:\n        tokenizer = tokenize.generate_tokens\n        readline = lambda: next(iter_lines)\n    else:\n        tokenizer = tokenize.tokenize\n        readline = lambda: next(iter_lines).encode(\'utf-8\')\n    try:\n        for tok in tokenizer(readline):\n            blockfinder.tokeneater(*tok)\n    except (inspect.EndOfBlock, IndentationError):\n        pass\n    return lines[:blockfinder.last]\n\n\ndef _extract_source(lines, lineno):\n    r"""\n    Given a list of lines or a multiline string and a starting lineno,\n    _extract_source returns [source_lines].  [source_lines] is the smallest\n    indentation block starting at lineno.\n\n    INPUT:\n\n    - ``lines`` - string or list of strings\n    - ``lineno`` - positive integer\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import _extract_source\n        sage: s2 = "#hello\\n\\n  class f():\\n    pass\\n\\n#goodbye"\n        sage: _extract_source(s2, 3)\n        [\'  class f():\\n\', \'    pass\\n\']\n    """\n    if lineno < 1:\n        raise ValueError("Line numbering starts at 1! (tried to extract line {})".format(lineno))\n    lineno -= 1\n\n    if isinstance(lines, string_types):\n        lines = lines.splitlines(True) # true keeps the \'\\n\'\n    if len(lines):\n        # Fixes an issue with getblock\n        lines[-1] += \'\\n\'\n\n    return _getblock(lines[lineno:])\n\n\nclass SageArgSpecVisitor(ast.NodeVisitor):\n    """\n    A simple visitor class that walks an abstract-syntax tree (AST)\n    for a Python function\'s argspec.  It returns the contents of nodes\n    representing the basic Python types: None, booleans, numbers,\n    strings, lists, tuples, and dictionaries.  We use this class in\n    :func:`_sage_getargspec_from_ast` to extract an argspec from a\n    function\'s or method\'s source code.\n\n    EXAMPLES::\n\n        sage: import ast, sage.misc.sageinspect as sms\n        sage: visitor = sms.SageArgSpecVisitor()\n        sage: visitor.visit(ast.parse(\'[1,2,3]\').body[0].value)\n        [1, 2, 3]\n        sage: v = visitor.visit(ast.parse("{\'a\':(\'e\',2,[None,({False:True},\'pi\')]), 37.0:\'temp\'}").body[0].value)\n        sage: sorted(v.items(), key=lambda x: str(x[0]))\n        [(37.0, \'temp\'), (\'a\', (\'e\', 2, [None, ({False: True}, \'pi\')]))]\n        sage: v = ast.parse("jc = [\'veni\', \'vidi\', \'vici\']").body[0]; v\n        <_ast.Assign object at ...>\n        sage: [x for x in dir(v) if not x.startswith(\'__\')]\n        [\'_attributes\', \'_fields\', \'col_offset\', \'end_col_offset\', \'end_lineno\', \'lineno\', \'targets\', \'type_comment\', \'value\']\n        sage: visitor.visit(v.targets[0])\n        \'jc\'\n        sage: visitor.visit(v.value)\n        [\'veni\', \'vidi\', \'vici\']\n    """\n    def visit_Name(self, node):\n        """\n        Visit a Python AST :class:`ast.Name` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - None, True, False, or the ``node``\'s name as a string.\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_Name(ast.parse(x).body[0].value)\n            sage: [vis(n) for n in [\'True\', \'False\', \'None\', \'foo\', \'bar\']]  # py2\n            [True, False, None, \'foo\', \'bar\']\n            sage: [type(vis(n)) for n in [\'True\', \'False\', \'None\', \'foo\', \'bar\']]  # py2\n            [<type \'bool\'>, <type \'bool\'>, <type \'NoneType\'>, <type \'str\'>, <type \'str\'>]\n            sage: [vis(n) for n in [\'foo\', \'bar\']]  # py3\n            [\'foo\', \'bar\']\n            sage: [type(vis(n)) for n in [\'foo\', \'bar\']]  # py3\n            [<type \'str\'>, <type \'str\'>]\n        """\n        if six.PY2:\n            what = node.id\n            if what == \'None\':\n                return None\n            elif what == \'True\':\n                return True\n            elif what == \'False\':\n                return False\n        return node.id\n\n    if six.PY3:\n        def visit_NameConstant(self, node):\n            """\n            Visit a Python AST :class:`ast.NameConstant` node.\n\n            This is an optimization added in Python 3.4 for the special cases\n            of True, False, and None.\n\n            INPUT:\n\n            - ``node`` - the node instance to visit\n\n            OUTPUT:\n\n            - None, True, False.\n\n            EXAMPLES::\n\n                sage: import ast, sage.misc.sageinspect as sms  # py3\n                sage: visitor = sms.SageArgSpecVisitor()  # py3\n                sage: vis = lambda x: visitor.visit_NameConstant(ast.parse(x).body[0].value)  # py3\n                sage: [vis(n) for n in [\'True\', \'False\', \'None\']]  # py3\n                [True, False, None]\n                sage: [type(vis(n)) for n in [\'True\', \'False\', \'None\']]  # py3\n                [<type \'bool\'>, <type \'bool\'>, <type \'NoneType\'>]\n            """\n\n            return node.value\n\n        def visit_arg(self, node):\n            r"""\n            Visit a Python AST :class:`ast.arg` node.\n\n            This node type is only on Python 3, where function arguments are\n            more complex than just an identifier (e.g. they may also include\n            annotations).\n\n            For now we simply return the argument identifier as a string.\n\n            INPUT:\n\n            - ``node`` -- the node instance to visit\n\n            OUTPUT:\n\n            the argument name\n\n            EXAMPLES::\n\n                sage: import ast, sage.misc.sageinspect as sms  # py3\n                sage: s = "def f(a, b=2, c={\'a\': [4, 5.5, False]}, d=(None, True)):\\n    return"  # py3\n                sage: visitor = sms.SageArgSpecVisitor()  # py3\n                sage: args = ast.parse(s).body[0].args.args  # py3\n                sage: [visitor.visit_arg(n) for n in args]  # py3\n                [\'a\', \'b\', \'c\', \'d\']\n            """\n            return node.arg\n\n    def visit_Num(self, node):\n        """\n        Visit a Python AST :class:`ast.Num` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - the number the ``node`` represents\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_Num(ast.parse(x).body[0].value)\n            sage: [vis(n) for n in [\'123\', \'0.0\', str(-pi.n())]]  # py2\n            [123, 0.0, -3.14159265358979]\n            sage: [vis(n) for n in [\'123\', \'0.0\']]  # py3\n            [123, 0.0]\n\n        .. NOTE::\n\n            On Python 3 negative numbers are parsed first, for some reason, as\n            a UnaryOp node.\n        """\n        return node.n\n\n    def visit_Str(self, node):\n        r"""\n        Visit a Python AST :class:`ast.Str` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - the string the ``node`` represents\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_Str(ast.parse(x).body[0].value)\n            sage: [vis(s) for s in [\'"abstract"\', "u\'syntax\'", r\'\'\'r"tr\\ee"\'\'\']]\n            [\'abstract\', u\'syntax\', \'tr\\\\ee\']\n        """\n        return node.s\n\n    def visit_List(self, node):\n        """\n        Visit a Python AST :class:`ast.List` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - the list the ``node`` represents\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_List(ast.parse(x).body[0].value)\n            sage: [vis(l) for l in [\'[]\', "[\'s\', \'t\', \'u\']", \'[[e], [], [pi]]\']]\n            [[], [\'s\', \'t\', \'u\'], [[\'e\'], [], [\'pi\']]]\n         """\n        t = []\n        for n in node.elts:\n            t.append(self.visit(n))\n        return t\n\n    def visit_Tuple(self, node):\n        """\n        Visit a Python AST :class:`ast.Tuple` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - the tuple the ``node`` represents\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_Tuple(ast.parse(x).body[0].value)\n            sage: [vis(t) for t in [\'()\', \'(x,y)\', \'("Au", "Al", "Cu")\']]\n            [(), (\'x\', \'y\'), (\'Au\', \'Al\', \'Cu\')]\n        """\n        t = []\n        for n in node.elts:\n            t.append(self.visit(n))\n        return tuple(t)\n\n    def visit_Dict(self, node):\n        """\n        Visit a Python AST :class:`ast.Dict` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - the dictionary the ``node`` represents\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_Dict(ast.parse(x).body[0].value)\n            sage: v = [vis(d) for d in [\'{}\', "{1:one, \'two\':2, other:bother}"]]\n            sage: [sorted(d.items(), key=lambda x: str(x[0])) for d in v]\n            [[], [(1, \'one\'), (\'other\', \'bother\'), (\'two\', 2)]]\n        """\n        d = {}\n        for k, v in zip(node.keys, node.values):\n            d[self.visit(k)] = self.visit(v)\n        return d\n\n    def visit_BoolOp(self, node):\n        """\n        Visit a Python AST :class:`ast.BoolOp` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - The result that ``node`` represents\n\n        AUTHOR:\n\n        - Simon King\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit(ast.parse(x).body[0].value)\n            sage: [vis(d) for d in [\'True and 1\', \'False or 3 or None\', \'3 and 4\']] #indirect doctest\n            [1, 3, 4]\n\n        """\n        op = node.op.__class__.__name__\n        L = list(node.values)\n        out = self.visit(L.pop(0))\n        if op == \'And\':\n            while L:\n                next = self.visit(L.pop(0))\n                out = out and next\n            return out\n        if op == \'Or\':\n            while L:\n                next = self.visit(L.pop(0))\n                out = out or next\n            return out\n\n    def visit_Compare(self, node):\n        """\n        Visit a Python AST :class:`ast.Compare` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - The result that ``node`` represents\n\n        AUTHOR:\n\n        - Simon King\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_Compare(ast.parse(x).body[0].value)\n            sage: [vis(d) for d in [\'1<2==2!=3\', \'1==1>2\', \'1<2>1\', \'1<3<2<4\']]\n            [True, False, True, False]\n\n        """\n        left = self.visit(node.left)\n        ops = list(node.ops)\n        comparators = list(node.comparators) # the things to be compared with.\n        while ops:\n            op = ops.pop(0).__class__.__name__\n            right = self.visit(comparators.pop(0))\n            if op==\'Lt\':\n                if not left<right:\n                    return False\n            elif op==\'LtE\':\n                if not left<=right:\n                    return False\n            elif op==\'Gt\':\n                if not left>right:\n                    return False\n            elif op==\'GtE\':\n                if not left>=right:\n                    return False\n            elif op==\'Eq\':\n                if not left==right:\n                    return False\n            elif op==\'NotEq\':\n                if not left!=right:\n                    return False\n            left = right\n        return True\n\n    def visit_BinOp(self, node):\n        """\n        Visit a Python AST :class:`ast.BinOp` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - The result that ``node`` represents\n\n        AUTHOR:\n\n        - Simon King\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit(ast.parse(x).body[0].value)\n            sage: [vis(d) for d in [\'(3+(2*4))\', \'7|8\', \'5^3\', \'7/3\', \'7//3\', \'3<<4\']] #indirect doctest # py2\n            [11, 15, 6, 2, 2, 48]\n            sage: [vis(d) for d in [\'(3+(2*4))\', \'7|8\', \'5^3\', \'7/3\', \'7//3\', \'3<<4\']] #indirect doctest # py3\n            [11, 15, 6, 2.3333333333333335, 2, 48]\n        """\n        op = node.op.__class__.__name__\n        if op == \'Add\':\n            return self.visit(node.left)+self.visit(node.right)\n        if op == \'Mult\':\n            return self.visit(node.left)*self.visit(node.right)\n        if op == \'BitAnd\':\n            return self.visit(node.left)&self.visit(node.right)\n        if op == \'BitOr\':\n            return self.visit(node.left) | self.visit(node.right)\n        if op == \'BitXor\':\n            return self.visit(node.left) ^ self.visit(node.right)\n        if op == \'Div\':\n            return self.visit(node.left) / self.visit(node.right)\n        if op == \'Eq\':\n            return self.visit(node.left) == self.visit(node.right)\n        if op == \'FloorDiv\':\n            return self.visit(node.left) // self.visit(node.right)\n        if op == \'NotEq\':\n            return self.visit(node.left) != self.visit(node.right)\n        if op == \'NotIn\':\n            return self.visit(node.left) not in self.visit(node.right)\n        if op == \'Pow\':\n            return self.visit(node.left) ** self.visit(node.right)\n        if op == \'RShift\':\n            return self.visit(node.left) >> self.visit(node.right)\n        if op == \'LShift\':\n            return self.visit(node.left) << self.visit(node.right)\n        if op == \'Sub\':\n            return self.visit(node.left) - self.visit(node.right)\n        if op == \'Gt\':\n            return self.visit(node.left) > self.visit(node.right)\n        if op == \'GtE\':\n            return self.visit(node.left) >= self.visit(node.right)\n        if op == \'In\':\n            return self.visit(node.left) in self.visit(node.right)\n        if op == \'Is\':\n            return self.visit(node.left) is self.visit(node.right)\n        if op == \'IsNot\':\n            return self.visit(node.left) is not self.visit(node.right)\n        if op == \'Lt\':\n            return self.visit(node.left) < self.visit(node.right)\n        if op == \'LtE\':\n            return self.visit(node.left) <= self.visit(node.right)\n        if op == \'Mod\':\n            return self.visit(node.left) % self.visit(node.right)\n\n    def visit_UnaryOp(self, node):\n        """\n        Visit a Python AST :class:`ast.BinOp` node.\n\n        INPUT:\n\n        - ``node`` - the node instance to visit\n\n        OUTPUT:\n\n        - The result that ``node`` represents\n\n        AUTHOR:\n\n        - Simon King\n\n        EXAMPLES::\n\n            sage: import ast, sage.misc.sageinspect as sms\n            sage: visitor = sms.SageArgSpecVisitor()\n            sage: vis = lambda x: visitor.visit_UnaryOp(ast.parse(x).body[0].value)\n            sage: [vis(d) for d in [\'+(3*2)\', \'-(3*2)\']]\n            [6, -6]\n\n        """\n        op = node.op.__class__.__name__\n        if op == \'Not\':\n            return not self.visit(node.operand)\n        if op == \'UAdd\':\n            return self.visit(node.operand)\n        if op == \'USub\':\n            return -self.visit(node.operand)\n\ndef _grep_first_pair_of_parentheses(s):\n    """\n    Return the first matching pair of parentheses in a code string.\n\n    INPUT:\n\n    A string\n\n    OUTPUT:\n\n    A substring of the input, namely the part between the first\n    (outmost) matching pair of parentheses (including the\n    parentheses).\n\n    Parentheses between single or double quotation marks do not\n    count. If no matching pair of parentheses can be found, a\n    ``SyntaxError`` is raised.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import _grep_first_pair_of_parentheses\n        sage: code = \'def foo(a="\\\'):", b=4):\\n    return\'\n        sage: _grep_first_pair_of_parentheses(code)\n        \'(a="\\\'):", b=4)\'\n        sage: code = \'def foo(a="%s):", \\\'b=4):\\n    return\'%("\'")\n        sage: _grep_first_pair_of_parentheses(code)\n        Traceback (most recent call last):\n        ...\n        SyntaxError: The given string does not contain balanced parentheses\n\n    """\n    out = []\n    single_quote = False\n    double_quote = False\n    escaped = False\n    level = 0\n    for c in s:\n        if level>0:\n            out.append(c)\n        if c==\'(\' and not single_quote and not double_quote and not escaped:\n            level += 1\n        elif c==\'"\' and not single_quote and not escaped:\n            double_quote = not double_quote\n        elif c=="\'" and not double_quote and not escaped:\n            single_quote = not single_quote\n        elif c==\')\' and not single_quote and not double_quote and not escaped:\n            if level == 1:\n                return \'(\'+\'\'.join(out)\n            level -= 1\n        elif c=="\\\\" and (single_quote or double_quote):\n            escaped = not escaped\n        else:\n            escaped = False\n    raise SyntaxError("The given string does not contain balanced parentheses")\n\ndef _split_syntactical_unit(s):\n    """\n    Split off a sub-expression from the start of a given string.\n\n    INPUT:\n\n    - ``s``, a string\n\n    OUTPUT:\n\n    A pair ``unit, s2``, such that ``unit`` is the string representation of a\n    string (single or double quoted) or of a sub-expression surrounded by\n    brackets (round, square or curly brackets), or of an identifier, or a\n    single character, if none of the above is available. The given string ``s``\n    is obtained by appending some whitespace followed by ``s2`` to ``unit``.\n\n    Blank space between the units is removed.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import _split_syntactical_unit\n        sage: s = "(Hel) lo_1=[)\\"!\\" ] \'\'\'? {world} \'\'\'?"\n        sage: while s:\n        ....:     u, s = _split_syntactical_unit(s)\n        ....:     print(u)\n        (Hel)\n        lo_1\n        =\n        [)"!"]\n        \'\'\'? {world} \'\'\'\n        ?\n\n    If the string ends before the unit is completed (mispatching parentheses\n    or missing quotation mark), then a syntax error is raised::\n\n        sage: s = "\'\'\'({SAGE}]"\n        sage: _split_syntactical_unit(s)\n        Traceback (most recent call last):\n        ...\n        SyntaxError: EOF while scanning string literal\n        sage: s = "({SAGE}]"\n        sage: _split_syntactical_unit(s)\n        Traceback (most recent call last):\n        ...\n        SyntaxError: Syntactical group starting with \'(\' did not end with \')\'\n\n    Numbers are not recognised::\n\n        sage: _split_syntactical_unit(\'123\')\n        (\'1\', \'23\')\n\n    TESTS:\n\n    The following was fixed in :trac:`16309`::\n\n        sage: _split_syntactical_unit(\'()): pass\')\n        (\'()\', \'): pass\')\n\n    """\n    s = s.strip()\n    if not s:\n        return s\n    # Split a given string at the next unescaped quotation mark\n    def split_string(s, quot):\n        escaped = False\n        l = len(quot)\n        for i in range(len(s)):\n            if s[i] == \'\\\\\':\n                escaped = not escaped\n                continue\n            if not escaped and s[i:i+l] == quot:\n                return s[:i], s[i+l:]\n            escaped = False\n        raise SyntaxError("EOF while scanning string literal")\n    # 1. s is a triple-quoted string\n    if s.startswith(\'"""\'):\n        a,b = split_string(s[3:], \'"""\')\n        return \'"""\'+a+\'"""\', b.strip()\n    if s.startswith(\'r"""\'):\n        a,b = split_string(s[4:], \'"""\')\n        return \'r"""\'+a+\'"""\', b.strip()\n    if s.startswith("\'\'\'"):\n        a,b = split_string(s[3:], "\'\'\'")\n        return "\'\'\'"+a+"\'\'\'", b.strip()\n    if s.startswith("r\'\'\'"):\n        a,b = split_string(s[4:], "\'\'\'")\n        return "r\'\'\'"+a+"\'\'\'", b.strip()\n\n    # 2. s is a single-quoted string\n    if s.startswith(\'"\'):\n        a,b = split_string(s[1:], \'"\')\n        return \'"\'+a+\'"\', b.strip()\n    if s.startswith("\'"):\n        a,b = split_string(s[1:], "\'")\n        return "\'"+a+"\'", b.strip()\n    if s.startswith(\'r"\'):\n        a,b = split_string(s[2:], \'"\')\n        return \'r"\'+a+\'"\', b.strip()\n    if s.startswith("r\'"):\n        a,b = split_string(s[2:], "\'")\n        return "r\'"+a+"\'", b.strip()\n\n    # 3. s is not a string\n    start = s[0]\n    out = [start]\n    if start == \'(\':\n        stop = \')\'\n    elif start == \'[\':\n        stop = \']\'\n    elif start == \'{\':\n        stop = \'}\'\n    elif start == \'\\\\\':\n        # note that python would raise a syntax error\n        # if the line contains anything but whitespace\n        # after the backslash. But we assume here that\n        # the input is syntactically correct.\n        return _split_syntactical_unit(s[1:])\n    elif start == \'#\':\n        linebreak = s.index(os.linesep)\n        if linebreak == -1:\n            return \'\',\'\'\n        return \'\', s[linebreak:].strip()\n    else:\n        M = __identifier_re.search(s)\n        if M is None:\n            return s[0], s[1:].strip()\n        return M.group(), s[M.end():].strip()\n\n    s = s[1:]\n    while s:\n        tmp_group, s = _split_syntactical_unit(s)\n        out.append(tmp_group)\n        s = s.strip()\n        if tmp_group==stop:\n            return \'\'.join(out), s\n        elif s.startswith(stop):\n            out.append(stop)\n            return \'\'.join(out), s[1:].strip()\n    raise SyntaxError("Syntactical group starting with %s did not end with %s"%(repr(start),repr(stop)))\n\ndef _sage_getargspec_from_ast(source):\n    r"""\n    Return an argspec for a Python function or method by compiling its\n    source to an abstract-syntax tree (AST) and walking its ``args``\n    subtrees with :class:`SageArgSpecVisitor`.  We use this in\n    :func:`_sage_getargspec_cython`.\n\n    INPUT:\n\n    - ``source`` - a string; the function\'s (or method\'s) source code\n      definition.  The function\'s body is ignored.\n\n    OUTPUT:\n\n    - an instance of :obj:`inspect.ArgSpec`, i.e., a named tuple\n\n    EXAMPLES::\n\n        sage: import warnings\n        sage: warnings.filterwarnings(\'ignore\',\n        ....:                         r\'inspect.getargspec\\(\\) is deprecated\',\n        ....:                         DeprecationWarning)\n        sage: import inspect, sage.misc.sageinspect as sms\n        sage: from_ast = sms._sage_getargspec_from_ast\n        sage: s = "def f(a, b=2, c={\'a\': [4, 5.5, False]}, d=(None, True)):\\n    return"\n        sage: from_ast(s)\n        ArgSpec(args=[\'a\', \'b\', \'c\', \'d\'], varargs=None, keywords=None, defaults=(2, {\'a\': [4, 5.5, False]}, (None, True)))\n        sage: context = {}\n        sage: exec compile(s, \'<string>\', \'single\') in context  # py2\n        sage: exec(compile(s, \'<string>\', \'single\'), context)  # py3\n        sage: inspect.getargspec(context[\'f\'])\n        ArgSpec(args=[\'a\', \'b\', \'c\', \'d\'], varargs=None, keywords=None, defaults=(2, {\'a\': [4, 5.5, False]}, (None, True)))\n        sage: from_ast(s) == inspect.getargspec(context[\'f\'])\n        True\n        sage: set(from_ast(sms.sage_getsource(x)) == inspect.getargspec(x) for x in [factor, identity_matrix, Graph.__init__])\n        {True}\n    """\n    ast_args = ast.parse(source.lstrip()).body[0].args\n\n    visitor = SageArgSpecVisitor()\n    args = [visitor.visit(a) for a in ast_args.args]\n    defaults = [visitor.visit(d) for d in ast_args.defaults]\n\n    if six.PY2:\n        vararg = ast_args.vararg\n        kwarg = ast_args.kwarg\n    else:\n        # vararg and kwarg may be None\n        vararg = getattr(ast_args.vararg, \'arg\', None)\n        kwarg = getattr(ast_args.kwarg, \'arg\', None)\n\n    return inspect.ArgSpec(args, vararg, kwarg,\n                           tuple(defaults) if defaults else None)\n\n\ndef _sage_getargspec_cython(source):\n    r"""\n    inspect.getargspec from source code.  That is, get the names and\n    default values of a function\'s arguments.\n\n    INPUT:\n\n    - ``source`` - a string; the function\'s (or method\'s) source code\n      definition.  The function\'s body is ignored. The definition may\n      contain type definitions for the function arguments.\n\n    OUTPUT:\n\n    - an instance of :obj:`inspect.ArgSpec`, i.e., a named tuple\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import _sage_getargspec_cython as sgc\n        sage: sgc("cpdef double abc(self, Element x=None, Parent base=0):")\n        ArgSpec(args=[\'self\', \'x\', \'base\'], varargs=None, keywords=None, defaults=(None, 0))\n        sage: sgc("def __init__(self, x=None, unsigned int base=0):")\n        ArgSpec(args=[\'self\', \'x\', \'base\'], varargs=None, keywords=None, defaults=(None, 0))\n        sage: sgc(\'def o(p, r={}, *q, **s) except? -1:\')\n        ArgSpec(args=[\'p\', \'r\'], varargs=\'q\', keywords=\'s\', defaults=({},))\n        sage: sgc(\'cpdef how(r=(None, "u:doing?")):\')\n        ArgSpec(args=[\'r\'], varargs=None, keywords=None, defaults=((None, \'u:doing?\'),))\n        sage: sgc(\'def _(x="):"):\')\n        ArgSpec(args=[\'x\'], varargs=None, keywords=None, defaults=(\'):\',))\n        sage: sgc(\'def f(z = {(1, 2, 3): True}):\\n    return z\')\n        ArgSpec(args=[\'z\'], varargs=None, keywords=None, defaults=({(1, 2, 3): True},))\n        sage: sgc(\'def f(double x, z = {(1, 2, 3): True}):\\n    return z\')\n        ArgSpec(args=[\'x\', \'z\'], varargs=None, keywords=None, defaults=({(1, 2, 3): True},))\n        sage: sgc(\'def f(*args): pass\')\n        ArgSpec(args=[], varargs=\'args\', keywords=None, defaults=None)\n        sage: sgc(\'def f(**args): pass\')\n        ArgSpec(args=[], varargs=None, keywords=\'args\', defaults=None)\n\n    Some malformed input is detected::\n\n        sage: sgc(\'def f(x,y\')\n        Traceback (most recent call last):\n        ...\n        SyntaxError: Unexpected EOF while parsing argument list\n        sage: sgc(\'def f(*x = 5, z = {(1,2,3): True}): pass\')\n        Traceback (most recent call last):\n        ...\n        SyntaxError: invalid syntax\n        sage: sgc(\'def f(int *x = 5, z = {(1,2,3): True}): pass\')\n        Traceback (most recent call last):\n        ...\n        SyntaxError: Pointer types not allowed in def or cpdef functions\n        sage: sgc(\'def f(x = , z = {(1,2,3): True}): pass\')\n        Traceback (most recent call last):\n        ...\n        SyntaxError: Definition of a default argument expected\n        sage: sgc(\'def f(int x = 5, , z = {(1,2,3): True}): pass\')\n        Traceback (most recent call last):\n        ...\n        SyntaxError: invalid syntax\n\n    TESTS:\n\n    Some input that is malformed in Python 2 but well formed in Cython or\n    Python 3 is correctly parsed::\n\n        sage: def dummy_python(self, *args, x=1): pass  # py2\n        Traceback (most recent call last):\n        ...\n        SyntaxError: invalid syntax\n        sage: def dummy_python(self, *args, x=1): pass  # py3\n        sage: sgc("def dummy_python(self, *args, x=1): pass")  # py3\n        ArgSpec(args=[\'self\', \'x\'], varargs=\'args\', keywords=None, defaults=(1,))\n        sage: cython("def dummy_cython(self, *args, x=1): pass")\n        sage: sgc("def dummy_cython(self, *args, x=1): pass")\n        ArgSpec(args=[\'self\', \'x\'], varargs=\'args\', keywords=None, defaults=(1,))\n\n    In some examples above, a syntax error was raised when a type\n    definition contains a pointer. An exception is made for ``char*``,\n    since C strings are acceptable input in public Cython functions::\n\n        sage: sgc(\'def f(char *x = "a string", z = {(1,2,3): True}): pass\')\n        ArgSpec(args=[\'x\', \'z\'], varargs=None, keywords=None, defaults=(\'a string\', {(1, 2, 3): True}))\n\n\n    AUTHORS:\n\n    - Nick Alexander: original version\n    - Simon King (02-2013): recognise varargs and default values in\n      cython code, and return an ``ArgSpec``.\n\n    """\n    defpos = source.find(\'def \')\n    assert defpos > -1, "The given source does not contain \'def\'"\n    s = source[defpos:].strip()\n    while s:\n        if s.startswith(\'(\'):\n            break\n        _, s = _split_syntactical_unit(s)\n    s = s[1:].strip()\n    if not s:\n        raise SyntaxError("Function definition must contain an argument list")\n\n    # We remove the type declarations, build a dummy Python function, and\n    # then call _get_argspec_from_ast. This should be\n    # better than creating a complete parser for Cython syntax,\n    # even though _split_syntactical_unit does part of the parsing work anyway.\n\n    cy_units = []\n    while not s.startswith(\')\'):\n        if not s:\n            raise SyntaxError("Unexpected EOF while parsing argument list")\n        u, s = _split_syntactical_unit(s)\n        cy_units.append(u)\n\n    py_units = []\n    name = None\n    i = 0\n    l = len(cy_units)\n    expect_default = False\n    nb_stars = 0\n    varargs = None\n    keywords = None\n    while (i<l):\n        unit = cy_units[i]\n        if expect_default:\n            if unit in (\'=\',\'*\',\',\'):\n                raise SyntaxError("Definition of a default argument expected")\n            while unit != \',\':\n                py_units.append(unit)\n                i += 1\n                if i==l:\n                    break\n                unit = cy_units[i]\n            expect_default = False\n            name = None\n            if nb_stars:\n                raise SyntaxError("The %s argument has no default"%(\'varargs\' if nb_stars==1 else \'keywords\'))\n            continue\n        i += 1\n        if unit == \'*\':\n            if name:\n                if name != \'char\':\n                    raise SyntaxError("Pointer types not allowed in def or cpdef functions")\n                else:\n                    continue\n            else:\n                nb_stars += 1\n            continue\n        elif unit == \',\':\n            if expect_default:\n                raise SyntaxError("Unexpected EOF while parsing argument list")\n            name = None\n            if nb_stars:\n                nb_stars = 0\n                continue\n        elif unit == \'=\':\n            expect_default = True\n            name = None\n            if nb_stars:\n                raise SyntaxError("The %s argument has no default"%(\'varargs\' if nb_stars==1 else \'keywords\'))\n        else:\n            name = unit\n        if name is not None:\n            # Is "name" part of a type definition?\n            # If it is the last identifier before \'=\' or \',\',\n            # then it *is* a variable name,\n            if i==l or cy_units[i] in (\'=\',\',\'):\n                if nb_stars == 0:\n                    py_units.append(name)\n                elif nb_stars == 1:\n                    if varargs is None:\n                        varargs = name\n                        # skip the "=" or ",", since varargs\n                        # is treated separately\n                        i += 1\n                        name = None\n                        nb_stars = 0\n                    else:\n                        raise SyntaxError("varargs can\'t be defined twice")\n                elif nb_stars == 2:\n                    if keywords is None:\n                        keywords = name\n                        # skip the "=" or ",", since varargs\n                        # is treated separately\n                        i += 1\n                        name = None\n                        nb_stars = 0\n                    else:\n                        raise SyntaxError("varargs can\'t be defined twice")\n                else:\n                    raise SyntaxError("variable declaration comprises at most two \'*\'")\n        else:\n            py_units.append(unit)\n    if varargs is None:\n        varargs = \'\'\n    elif not py_units or py_units[-1] == \',\':\n        varargs = \'*\'+varargs\n    else:\n        varargs = \',*\'+varargs\n    if keywords is None:\n        keywords = \'\'\n    elif varargs or (py_units and py_units[-1] != \',\'):\n        keywords = \',**\'+keywords\n    else:\n        keywords = \'**\'+keywords\n    return _sage_getargspec_from_ast(\'def dummy(\'+\'\'.join(py_units)\n                                     +varargs+keywords+\'): pass\')\n\ndef sage_getfile(obj):\n    r"""\n    Get the full file name associated to ``obj`` as a string.\n\n    INPUT: ``obj``, a Sage object, module, etc.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getfile\n        sage: sage_getfile(sage.rings.rational)[-23:]\n        \'sage/rings/rational.pyx\'\n        sage: sage_getfile(Sq)[-42:]\n        \'sage/algebras/steenrod/steenrod_algebra.py\'\n\n    The following tests against some bugs fixed in :trac:`9976`::\n\n        sage: obj = sage.combinat.partition_algebra.SetPartitionsAk\n        sage: obj = sage.combinat.partition_algebra.SetPartitionsAk\n        sage: sage_getfile(obj)\n        \'...sage/combinat/partition_algebra.py\'\n\n    And here is another bug, fixed in :trac:`11298`::\n\n        sage: P.<x,y> = QQ[]\n        sage: sage_getfile(P)\n        \'...sage/rings/polynomial/multi_polynomial_libsingular...\'\n\n    A problem fixed in :trac:`16309`::\n\n        sage: cython(\'\'\'\n        ....: class Bar: pass\n        ....: cdef class Foo: pass\n        ....: \'\'\')\n        sage: sage_getfile(Bar)\n        \'...pyx\'\n        sage: sage_getfile(Foo)\n        \'...pyx\'\n\n    By :trac:`18249`, we return an empty string for Python builtins. In that\n    way, there is no error when the user types, for example, ``range?``::\n\n        sage: sage_getfile(range)\n        \'\'\n\n    AUTHORS:\n\n    - Nick Alexander\n    - Simon King\n    """\n    # We try to extract from docstrings, but not using Python\'s inspect\n    # because _sage_getdoc_unformatted is more robust.\n    d = _sage_getdoc_unformatted(obj)\n    pos = _extract_embedded_position(d)\n    if pos is not None:\n        (_, filename, _) = pos\n        return filename\n\n    # The instance case\n    if isclassinstance(obj):\n        if isinstance(obj, functools.partial):\n            return sage_getfile(obj.func)\n        return sage_getfile(obj.__class__) #inspect.getabsfile(obj.__class__)\n\n    # No go? fall back to inspect.\n    try:\n        sourcefile = inspect.getabsfile(obj)\n    except TypeError: # this happens for Python builtins\n        return \'\'\n    if sourcefile.endswith(loadable_module_extension()):\n        sourcefile = sourcefile[:-len(loadable_module_extension())]\n        # remove Debian\'s python multiarch extension module naming conventions\n        multiarchsuffix = "." + sysconfig.get_config_vars("MULTIARCH")[0]\n        if sourcefile.endswith(multiarchsuffix):\n            sourcefile = sourcefile[:-len(multiarchsuffix)]\n        return sourcefile+os.path.extsep+\'pyx\'\n    return sourcefile\n\ndef sage_getargspec(obj):\n    r"""\n    Return the names and default values of a function\'s arguments.\n\n    INPUT:\n\n    ``obj``, any callable object\n\n    OUTPUT:\n\n    An ``ArgSpec`` is returned. This is a named tuple\n    ``(args, varargs, keywords, defaults)``.\n\n    - ``args`` is a list of the argument names (it may contain nested lists).\n\n    - ``varargs`` and ``keywords`` are the names of the ``*`` and ``**``\n      arguments or ``None``.\n\n    - ``defaults`` is an `n`-tuple of the default values of the last `n` arguments.\n\n    NOTE:\n\n    If the object has a method ``_sage_argspec_`` then the output of\n    that method is transformed into a named tuple and then returned.\n\n    If a class instance has a method ``_sage_src_`` then its output\n    is  studied to determine the argspec. This is because currently\n    the :class:`~sage.misc.cachefunc.CachedMethod` decorator has\n    no ``_sage_argspec_`` method.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getargspec\n        sage: def f(x, y, z=1, t=2, *args, **keywords):\n        ....:     pass\n        sage: sage_getargspec(f)\n        ArgSpec(args=[\'x\', \'y\', \'z\', \'t\'], varargs=\'args\', keywords=\'keywords\', defaults=(1, 2))\n\n    We now run sage_getargspec on some functions from the Sage library::\n\n        sage: sage_getargspec(identity_matrix)\n        ArgSpec(args=[\'ring\', \'n\', \'sparse\'], varargs=None, keywords=None, defaults=(0, False))\n        sage: sage_getargspec(factor)\n        ArgSpec(args=[\'n\', \'proof\', \'int_\', \'algorithm\', \'verbose\'], varargs=None, keywords=\'kwds\', defaults=(None, False, \'pari\', 0))\n\n    In the case of a class or a class instance, the ``ArgSpec`` of the\n    ``__new__``, ``__init__`` or ``__call__`` method is returned::\n\n        sage: P.<x,y> = QQ[]\n        sage: sage_getargspec(P)\n        ArgSpec(args=[\'base_ring\', \'n\', \'names\', \'order\'], varargs=None, keywords=None, defaults=(\'degrevlex\',))\n        sage: sage_getargspec(P.__class__)\n        ArgSpec(args=[\'self\', \'x\'], varargs=\'args\', keywords=\'kwds\', defaults=(0,))\n\n    The following tests against various bugs that were fixed in\n    :trac:`9976`::\n\n        sage: from sage.rings.polynomial.real_roots import bernstein_polynomial_factory_ratlist\n        sage: sage_getargspec(bernstein_polynomial_factory_ratlist.coeffs_bitsize)\n        ArgSpec(args=[\'self\'], varargs=None, keywords=None, defaults=None)\n        sage: from sage.rings.polynomial.pbori import BooleanMonomialMonoid\n        sage: sage_getargspec(BooleanMonomialMonoid.gen)\n        ArgSpec(args=[\'self\', \'i\'], varargs=None, keywords=None, defaults=(0,))\n        sage: I = P*[x,y]\n        sage: sage_getargspec(I.groebner_basis)\n        ArgSpec(args=[\'self\', \'algorithm\', \'deg_bound\', \'mult_bound\', \'prot\'],\n        varargs=\'args\', keywords=\'kwds\', defaults=(\'\', None, None, False))\n        sage: cython("cpdef int foo(x,y) except -1: return 1")\n        sage: sage_getargspec(foo)\n        ArgSpec(args=[\'x\', \'y\'], varargs=None, keywords=None, defaults=None)\n\n    If a ``functools.partial`` instance is involved, we see no other meaningful solution\n    than to return the argspec of the underlying function::\n\n        sage: def f(a,b,c,d=1):\n        ....:     return a+b+c+d\n        sage: import functools\n        sage: f1 = functools.partial(f, 1,c=2)\n        sage: sage_getargspec(f1)\n        ArgSpec(args=[\'a\', \'b\', \'c\', \'d\'], varargs=None, keywords=None, defaults=(1,))\n\n    TESTS:\n\n    By :trac:`9976`, rather complicated cases work. In the\n    following example, we dynamically create an extension class\n    that returns some source code, and the example shows that\n    the source code is taken for granted, i.e., the argspec of\n    an instance of that class does not coincide with the argspec\n    of its call method. That behaviour is intended, since a\n    decorated method appears to have the generic signature\n    ``*args,**kwds``, but in fact it is only supposed to be called\n    with the arguments requested by the underlying undecorated\n    method. We saw an easy example above, namely ``I.groebner_basis``.\n    Here is a more difficult one::\n\n        sage: cython_code = [\n        ....: \'cdef class MyClass:\',\n        ....: \'    def _sage_src_(self):\',\n        ....: \'        return "def foo(x, a=\\\\\\\')\\\\\\"\\\\\\\', b={(2+1):\\\\\\\'bar\\\\\\\', not 1:3, 3<<4:5}): return\\\\n"\',\n        ....: \'    def __call__(self, m,n): return "something"\']\n        sage: cython(\'\\n\'.join(cython_code))\n        sage: O = MyClass()\n        sage: print(sage.misc.sageinspect.sage_getsource(O))\n        def foo(x, a=\')"\', b={(2+1):\'bar\', not 1:3, 3<<4:5}): return\n        sage: spec = sage.misc.sageinspect.sage_getargspec(O)\n        sage: spec.args, spec.varargs, spec.keywords\n        ([\'x\', \'a\', \'b\'], None, None)\n        sage: spec.defaults[0]\n        \')"\'\n        sage: sorted(spec.defaults[1].items(), key=lambda x: str(x))\n        [(3, \'bar\'), (48, 5), (False, 3)]\n        sage: sage.misc.sageinspect.sage_getargspec(O.__call__)\n        ArgSpec(args=[\'self\', \'m\', \'n\'], varargs=None, keywords=None, defaults=None)\n\n    ::\n\n        sage: cython(\'def foo(x, a=\\\'\\\\\\\')"\\\', b={not (2+1==3):\\\'bar\\\'}): return\')\n        sage: print(sage.misc.sageinspect.sage_getsource(foo))\n        def foo(x, a=\'\\\')"\', b={not (2+1==3):\'bar\'}): return\n        <BLANKLINE>\n        sage: sage.misc.sageinspect.sage_getargspec(foo)\n        ArgSpec(args=[\'x\', \'a\', \'b\'], varargs=None, keywords=None, defaults=(\'\\\')"\', {False: \'bar\'}))\n\n    The following produced a syntax error before the patch at :trac:`11913`,\n    see also :trac:`26906`::\n\n        sage: sage.misc.sageinspect.sage_getargspec(r.lm)\n        ArgSpec(args=[\'self\'], varargs=\'args\', keywords=\'kwds\', defaults=None)\n\n    The following was fixed in :trac:`16309`::\n\n        sage: cython(\'\'\'\n        ....: class Foo:\n        ....:     @staticmethod\n        ....:     def join(categories, bint as_list = False, tuple ignore_axioms=(), tuple axioms=()): pass\n        ....: cdef class Bar:\n        ....:     @staticmethod\n        ....:     def join(categories, bint as_list = False, tuple ignore_axioms=(), tuple axioms=()): pass\n        ....:     cpdef meet(categories, bint as_list = False, tuple ignore_axioms=(), tuple axioms=()): pass\n        ....: \'\'\')\n        sage: sage_getargspec(Foo.join)\n        ArgSpec(args=[\'categories\', \'as_list\', \'ignore_axioms\', \'axioms\'], varargs=None, keywords=None, defaults=(False, (), ()))\n        sage: sage_getargspec(Bar.join)\n        ArgSpec(args=[\'categories\', \'as_list\', \'ignore_axioms\', \'axioms\'], varargs=None, keywords=None, defaults=(False, (), ()))\n        sage: sage_getargspec(Bar.meet)\n        ArgSpec(args=[\'categories\', \'as_list\', \'ignore_axioms\', \'axioms\'], varargs=None, keywords=None, defaults=(False, (), ()))\n\n    Test that :trac:`17009` is fixed::\n\n        sage: sage_getargspec(gap)\n        ArgSpec(args=[\'self\', \'x\', \'name\'], varargs=None, keywords=None, defaults=(None,))\n\n    By :trac:`17814`, the following gives the correct answer (previously, the\n    defaults would have been found ``None``)::\n\n        sage: from sage.misc.nested_class import MainClass\n        sage: sage_getargspec(MainClass.NestedClass.NestedSubClass.dummy)\n        ArgSpec(args=[\'self\', \'x\', \'r\'], varargs=\'args\', keywords=\'kwds\', defaults=((1, 2, 3.4),))\n\n    In :trac:`18249` was decided to return a generic signature for Python\n    builtin functions, rather than to raise an error (which is what Python\'s\n    inspect module does)::\n\n        sage: import inspect\n        sage: inspect.getargspec(range)  # py2\n        Traceback (most recent call last):\n        ...\n        TypeError: <built-in function range> is not a Python function\n        sage: sage_getargspec(range)\n        ArgSpec(args=[], varargs=\'args\', keywords=\'kwds\', defaults=None)\n\n    Test that :trac:`28524` is fixed::\n\n        sage: from sage.repl.interpreter import get_test_shell\n        sage: shell = get_test_shell()\n        sage: shell.run_cell(\n        ....:     \'class Foo:\\n\'\n        ....:     \'    def __call__(self):\\n\'\n        ....:     \'        return None\\n\'\n        ....:     \'    def _sage_src_(self):\\n\'\n        ....:     \'        return "the source code string"\')\n        sage: shell.run_cell(\'f = Foo()\')\n        sage: shell.run_cell(\'f??\')\n        ...the source code string...\n\n    AUTHORS:\n\n    - William Stein: a modified version of inspect.getargspec from the\n      Python Standard Library, which was taken from IPython for use in Sage.\n    - Extensions by Nick Alexander\n    - Simon King: Return an ``ArgSpec``, fix some bugs.\n    """\n    from sage.misc.lazy_attribute import lazy_attribute\n    from sage.misc.abstract_method import AbstractMethod\n    if inspect.isclass(obj):\n        return sage_getargspec(obj.__call__)\n    if isinstance(obj, (lazy_attribute, AbstractMethod)):\n        source = sage_getsource(obj)\n        return inspect.ArgSpec(*_sage_getargspec_cython(source))\n    if not callable(obj):\n        raise TypeError("obj is not a code object")\n    try:\n        return inspect.ArgSpec(*obj._sage_argspec_())\n    except (AttributeError, TypeError):\n        pass\n    # If we are lucky, the function signature is embedded in the docstring.\n    docstring = _sage_getdoc_unformatted(obj)\n    try:\n        name = obj.__name__\n    except AttributeError:\n        name = type(obj).__name__\n    argspec = _extract_embedded_signature(docstring, name)[1]\n    if argspec is not None:\n        return argspec\n    if hasattr(obj, \'__code__\'):\n        # Note that this may give a wrong result for the constants!\n        try:\n            args, varargs, varkw = inspect.getargs(obj.__code__)\n            return inspect.ArgSpec(args, varargs, varkw, obj.__defaults__)\n        except (TypeError, AttributeError):\n            pass\n    if isclassinstance(obj):\n        if hasattr(obj,\'_sage_src_\'): #it may be a decorator!\n            source = sage_getsource(obj)\n            try:\n                # we try to find the definition and parse it by\n                # _sage_getargspec_ast\n                proxy = \'def dummy\' + _grep_first_pair_of_parentheses(source) \\\n                        + \':\\n    return\'\n                return _sage_getargspec_from_ast(proxy)\n            except SyntaxError:\n                # To fix trac #10860. See #11913 for more information.\n                # See also #26906 and #28524.\n                pass\n        if isinstance(obj, functools.partial):\n            base_spec = sage_getargspec(obj.func)\n            return base_spec\n        return sage_getargspec(obj.__class__.__call__)\n    elif (hasattr(obj, \'__objclass__\') and hasattr(obj, \'__name__\') and\n          obj.__name__ == \'next\'):\n        # Handle sage.rings.ring.FiniteFieldIterator.next and similar\n        # slot wrappers.  This is mainly to suppress Sphinx warnings.\n        return [\'self\'], None, None, None\n    else:\n        # We try to get the argspec by reading the source, which may be\n        # expensive, but should only be needed for functions defined outside\n        # of the Sage library (since otherwise the signature should be\n        # embedded in the docstring)\n        try:\n            source = sage_getsource(obj)\n        except TypeError: # happens for Python builtins\n            source = \'\'\n        if source:\n            return inspect.ArgSpec(*_sage_getargspec_cython(source))\n        else:\n            func_obj = obj\n\n    # Otherwise we\'re (hopefully!) plain Python, so use inspect\n    try:\n        args, varargs, varkw = inspect.getargs(func_obj.__code__)\n    except AttributeError:\n        try:\n            args, varargs, varkw = inspect.getargs(func_obj)\n        except TypeError: # arg is not a code object\n            # The above "hopefully" was wishful thinking:\n            try:\n                return inspect.ArgSpec(*_sage_getargspec_cython(sage_getsource(obj)))\n            except TypeError: # This happens for Python builtins\n                # The best we can do is to return a generic argspec\n                args = []\n                varargs = \'args\'\n                varkw = \'kwds\'\n    try:\n        defaults = func_obj.__defaults__\n    except AttributeError:\n        defaults = None\n    return inspect.ArgSpec(args, varargs, varkw, defaults)\n\ndef formatannotation(annotation, base_module=None):\n    """\n    This is taken from Python 3.7\'s inspect.py; the only change is to\n    add documentation.\n\n    INPUT:\n\n    - ``annotation`` -- annotation for a function\n    - ``base_module`` (optional, default ``None``)\n\n    This is only relevant with Python 3, so the doctests are marked\n    accordingly.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import formatannotation\n        sage: import inspect\n        sage: def foo(a, *, b:int, **kwargs): # py3\n        ....:     pass\n        ....:\n        sage: s = inspect.signature(foo) # py3\n\n        sage: a = s.parameters[\'a\'].annotation # py3\n        sage: a # py3\n        <class \'inspect._empty\'>\n        sage: formatannotation(a) # py3\n        \'inspect._empty\'\n\n        sage: b = s.parameters[\'b\'].annotation # py3\n        sage: b # py3\n        <class \'int\'>\n        sage: formatannotation(b) # py3\n        \'int\'\n    """\n    if getattr(annotation, \'__module__\', None) == \'typing\':\n        return repr(annotation).replace(\'typing.\', \'\')\n    if isinstance(annotation, type):\n        if annotation.__module__ in (\'builtins\', base_module):\n            return annotation.__qualname__\n        return annotation.__module__+\'.\'+annotation.__qualname__\n    return repr(annotation)\n\ndef sage_formatargspec(args, varargs=None, varkw=None, defaults=None,\n                       kwonlyargs=(), kwonlydefaults={}, annotations={},\n                       formatarg=str,\n                       formatvarargs=lambda name: \'*\' + name,\n                       formatvarkw=lambda name: \'**\' + name,\n                       formatvalue=lambda value: \'=\' + repr(value),\n                       formatreturns=lambda text: \' -> \' + text,\n                       formatannotation=formatannotation):\n    """\n    Format an argument spec from the values returned by getfullargspec.\n\n    The first seven arguments are (args, varargs, varkw, defaults,\n    kwonlyargs, kwonlydefaults, annotations).  The other five arguments\n    are the corresponding optional formatting functions that are called to\n    turn names and values into strings.  The last argument is an optional\n    function to format the sequence of arguments.\n\n    This is taken from Python 3.7\'s inspect.py, where it is\n    deprecated. The only change, aside from documentation (this\n    paragraph and the next, plus doctests), is to remove the\n    deprecation warning.\n\n    Sage uses this function to format arguments, as obtained by\n    :func:`sage_getargspec`. Since :func:`sage_getargspec` works for\n    Cython functions while Python\'s inspect module does not, it makes\n    sense to keep this function for formatting instances of\n    ``inspect.ArgSpec``.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_formatargspec\n        sage: from inspect import formatargspec # deprecated in Python 3\n        sage: args = [\'a\', \'b\', \'c\']\n        sage: defaults = [3]\n        sage: sage_formatargspec(args, defaults=defaults)\n        \'(a, b, c=3)\'\n        sage: formatargspec(args, defaults=defaults) == sage_formatargspec(args, defaults=defaults) # py2\n        True\n        sage: formatargspec(args, defaults=defaults) == sage_formatargspec(args, defaults=defaults) # py3\n        doctest:...: DeprecationWarning: `formatargspec` is deprecated since Python 3.5. Use `signature` and the `Signature` object directly\n        True\n    """\n    def formatargandannotation(arg):\n        result = formatarg(arg)\n        if arg in annotations:\n            result += \': \' + formatannotation(annotations[arg])\n        return result\n    specs = []\n    if defaults:\n        firstdefault = len(args) - len(defaults)\n    for i, arg in enumerate(args):\n        spec = formatargandannotation(arg)\n        if defaults and i >= firstdefault:\n            spec = spec + formatvalue(defaults[i - firstdefault])\n        specs.append(spec)\n    if varargs is not None:\n        specs.append(formatvarargs(formatargandannotation(varargs)))\n    else:\n        if kwonlyargs:\n            specs.append(\'*\')\n    if kwonlyargs:\n        for kwonlyarg in kwonlyargs:\n            spec = formatargandannotation(kwonlyarg)\n            if kwonlydefaults and kwonlyarg in kwonlydefaults:\n                spec += formatvalue(kwonlydefaults[kwonlyarg])\n            specs.append(spec)\n    if varkw is not None:\n        specs.append(formatvarkw(formatargandannotation(varkw)))\n    result = \'(\' + \', \'.join(specs) + \')\'\n    if \'return\' in annotations:\n        result += formatreturns(formatannotation(annotations[\'return\']))\n    return result\n\n\ndef sage_getdef(obj, obj_name=\'\'):\n    r"""\n    Return the definition header for any callable object.\n\n    INPUT:\n\n    - ``obj`` - function\n    - ``obj_name`` - string (optional, default \'\')\n\n    ``obj_name`` is prepended to the output.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getdef\n        sage: sage_getdef(identity_matrix)\n        \'(ring, n=0, sparse=False)\'\n        sage: sage_getdef(identity_matrix, \'identity_matrix\')\n        \'identity_matrix(ring, n=0, sparse=False)\'\n\n    Check that :trac:`6848` has been fixed::\n\n        sage: sage_getdef(RDF.random_element)\n        \'(min=-1, max=1)\'\n\n    If an exception is generated, None is returned instead and the\n    exception is suppressed.\n\n    AUTHORS:\n\n    - William Stein\n    - extensions by Nick Alexander\n    """\n    try:\n        spec = sage_getargspec(obj)\n        s = str(sage_formatargspec(*spec))\n        s = s.strip(\'(\').strip(\')\').strip()\n        if s[:4] == \'self\':\n            s = s[4:]\n        s = s.lstrip(\',\').strip()\n        # for use with typesetting the definition with the notebook:\n        # sometimes s contains "*args" or "**keywds", and the\n        # asterisks confuse ReST/sphinx/docutils, so escape them:\n        # change * to \\*, and change ** to \\**.\n        if EMBEDDED_MODE:\n            s = s.replace(\'**\', \'\\\\**\')  # replace ** with \\**\n            t = \'\'\n            while True:  # replace * with \\*\n                i = s.find(\'*\')\n                if i == -1:\n                    break\n                elif i > 0 and s[i-1] == \'\\\\\':\n                    if s[i+1] == "*":\n                        t += s[:i+2]\n                        s = s[i+2:]\n                    else:\n                        t += s[:i+1]\n                        s = s[i+1:]\n                    continue\n                elif i > 0 and s[i-1] == \'*\':\n                    t += s[:i+1]\n                    s = s[i+1:]\n                    continue\n                else:\n                    t += s[:i] + \'\\\\*\'\n                    s = s[i+1:]\n            s = t + s\n        return obj_name + \'(\' + s + \')\'\n    except (AttributeError, TypeError, ValueError):\n        return \'%s( [noargspec] )\'%obj_name\n\ndef _sage_getdoc_unformatted(obj):\n    r"""\n    Return the unformatted docstring associated to ``obj`` as a\n    string.\n\n    If ``obj`` is a Cython object with an embedded position in its\n    docstring, the embedded position is **not** stripped.\n\n    INPUT:\n\n    - ``obj`` -- a function, module, etc.: something with a docstring.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import _sage_getdoc_unformatted\n        sage: print(_sage_getdoc_unformatted(sage.rings.integer.Integer))\n        Integer(x=None, base=0)\n        File: sage/rings/integer.pyx (starting at line ...)\n        <BLANKLINE>\n            The ``Integer`` class represents arbitrary precision\n            integers. It derives from the ``Element`` class, so\n            integers can be used as ring elements anywhere in Sage.\n        ...\n\n    TESTS:\n\n    Test that we suppress useless built-in output (:trac:`3342`)::\n\n        sage: from sage.misc.sageinspect import _sage_getdoc_unformatted\n        sage: _sage_getdoc_unformatted(isinstance.__class__)\n        \'\'\n\n    Construct an object raising an exception when accessing the\n    ``__doc__`` attribute. This should not give an error in\n    ``_sage_getdoc_unformatted``, see :trac:`19671`::\n\n        sage: class NoSageDoc(object):\n        ....:     @property\n        ....:     def __doc__(self):\n        ....:         raise Exception("no doc here")\n        sage: obj = NoSageDoc()\n        sage: obj.__doc__\n        Traceback (most recent call last):\n        ...\n        Exception: no doc here\n        sage: _sage_getdoc_unformatted(obj)\n        \'\'\n\n    AUTHORS:\n\n    - William Stein\n    - extensions by Nick Alexander\n    """\n    if obj is None:\n        return \'\'\n    try:\n        r = obj.__doc__\n    except Exception:\n        return \'\'\n\n    # Check if the __doc__ attribute was actually a string, and\n    # not a \'getset_descriptor\' or similar.\n    if isinstance(r, string_types):\n        return r\n    else:\n        # Not a string of any kind\n        return \'\'\n\n\ndef sage_getdoc_original(obj):\n    r"""\n    Return the unformatted docstring associated to ``obj`` as a\n    string.\n\n    If ``obj`` is a Cython object with an embedded position or signature in\n    its docstring, the embedded information is stripped. If the stripped\n    docstring is empty, then the stripped docstring of ``obj.__init__`` is\n    returned instead.\n\n    Feed the results from this into the function\n    :func:`sage.misc.sagedoc.format` for printing to the screen.\n\n    INPUT:\n\n    - ``obj`` -- a function, module, etc.: something with a docstring.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getdoc_original\n\n    Here is a class that has its own docstring::\n\n        sage: print(sage_getdoc_original(sage.rings.integer.Integer))\n        <BLANKLINE>\n            The ``Integer`` class represents arbitrary precision\n            integers. It derives from the ``Element`` class, so\n            integers can be used as ring elements anywhere in Sage.\n        ...\n\n    If the class does not have a docstring, the docstring of the\n    ``__init__`` method is used, but not the ``__init__`` method\n    of the base class (this was fixed in :trac:`24936`)::\n\n        sage: from sage.categories.category import Category\n        sage: class A(Category):\n        ....:     def __init__(self):\n        ....:         \'\'\'The __init__ docstring\'\'\'\n        sage: sage_getdoc_original(A)\n        \'The __init__ docstring\'\n        sage: class B(Category):\n        ....:     pass\n        sage: sage_getdoc_original(B)\n        \'\'\n\n    Old-style classes are supported::\n\n        sage: class OldStyleClass:\n        ....:     def __init__(self):\n        ....:         \'\'\'The __init__ docstring\'\'\'\n        ....:         pass\n        sage: print(sage_getdoc_original(OldStyleClass))\n        The __init__ docstring\n\n    When there is no ``__init__`` method, we just get an empty string::\n\n        sage: class OldStyleClass:\n        ....:     pass\n        sage: sage_getdoc_original(OldStyleClass)\n        \'\'\n\n    If an instance of a class does not have its own docstring, the docstring\n    of its class results::\n\n        sage: sage_getdoc_original(sage.plot.colors.aliceblue) == sage_getdoc_original(sage.plot.colors.Color)\n        True\n\n    """\n    # typ is the type corresponding to obj, which is obj itself if\n    # that was a type or old-style class\n    if isinstance(obj, class_types):\n        typ = obj\n    else:\n        typ = type(obj)\n\n    s,argspec = _extract_embedded_signature(_sage_getdoc_unformatted(obj), typ.__name__)\n    if s:\n        pos = _extract_embedded_position(s)\n        if pos is not None:\n            s = pos[0]\n    if not s:\n        # The docstring of obj is empty. To get something, we want to use\n        # the documentation of the __init__ method, but only if it belongs\n        # to (the type of) obj.\n        init = typ.__dict__.get("__init__")\n        if init:\n            return sage_getdoc_original(init)\n    return s\n\n\ndef sage_getdoc(obj, obj_name=\'\', embedded_override=False):\n    r"""\n    Return the docstring associated to ``obj`` as a string.\n\n    If ``obj`` is a Cython object with an embedded position in its\n    docstring, the embedded position is stripped.\n\n    If optional argument ``embedded_override`` is False (its default\n    value), then the string is formatted according to the value of\n    EMBEDDED_MODE.  If this argument is True, then it is formatted as\n    if EMBEDDED_MODE were True.\n\n    INPUT:\n\n    - ``obj`` -- a function, module, etc.: something with a docstring.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getdoc\n        sage: sage_getdoc(identity_matrix)[87:124]\n        \'Return the n x n identity matrix over\'\n        sage: def f(a,b,c,d=1): return a+b+c+d\n        ...\n        sage: import functools\n        sage: f1 = functools.partial(f, 1,c=2)\n        sage: f.__doc__ = "original documentation"\n        sage: f1.__doc__ = "specialised documentation"\n        sage: sage_getdoc(f)\n        \'original documentation\\n\'\n        sage: sage_getdoc(f1)\n        \'specialised documentation\\n\'\n\n    AUTHORS:\n\n    - William Stein\n    - extensions by Nick Alexander\n    """\n    import sage.misc.sagedoc\n    if obj is None:\n        return \'\'\n    r = sage_getdoc_original(obj)\n    s = sage.misc.sagedoc.format(r, embedded=(embedded_override or EMBEDDED_MODE))\n\n    # Fix object naming\n    if obj_name != \'\':\n        i = obj_name.find(\'.\')\n        if i != -1:\n            obj_name = obj_name[:i]\n        s = s.replace(\'self.\',\'%s.\'%obj_name)\n\n    return s\n\ndef sage_getsource(obj):\n    r"""\n    Return the source code associated to obj as a string, or None.\n\n    INPUT:\n\n    - ``obj`` -- function, etc.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getsource\n        sage: sage_getsource(identity_matrix)[19:60]\n        \'identity_matrix(ring, n=0, sparse=False):\'\n        sage: sage_getsource(identity_matrix)[19:60]\n        \'identity_matrix(ring, n=0, sparse=False):\'\n\n    AUTHORS:\n\n    - William Stein\n    - extensions by Nick Alexander\n    """\n    #First we should check if the object has a _sage_src_\n    #method.  If it does, we just return the output from\n    #that.  This is useful for getting pexpect interface\n    #elements to behave similar to regular Python objects\n    #with respect to introspection.\n    try:\n        return obj._sage_src_()\n    except (AttributeError, TypeError):\n        pass\n\n    t = sage_getsourcelines(obj)\n    if not t:\n        return None\n    (source_lines, lineno) = t\n    return \'\'.join(source_lines)\n\n\ndef _sage_getsourcelines_name_with_dot(obj):\n    r"""\n    Get the source lines of an object whose name\n    contains a dot and whose source lines can not\n    be obtained by different methods.\n\n    EXAMPLES::\n\n        sage: C = Rings()\n        sage: from sage.misc.sageinspect import sage_getsource\n        sage: print(sage_getsource(C.parent_class))  #indirect doctest\n        class ParentMethods:\n        ...\n                Returns the Lie bracket `[x, y] = x y - y x` of `x` and `y`.\n        ...\n\n    TESTS:\n\n    The following was fixed in :trac:`16309`::\n\n        sage: cython(\'\'\'\n        ....: class A:\n        ....:     def __init__(self):\n        ....:         "some init doc"\n        ....:         pass\n        ....: class B:\n        ....:     "some class doc"\n        ....:     class A(A):\n        ....:         pass\n        ....: \'\'\')\n        sage: B.A.__name__\n        \'A\'\n        sage: B.A.__qualname__\n        \'B.A\'\n        sage: sage_getsource(B.A)\n        \'    class A(A):\\n        pass\\n\\n\'\n\n    Note that for this example to work, it is essential that the class ``B``\n    has a docstring. Otherwise, the code of ``B`` could not be found (Cython\n    inserts embedding information into the docstring) and thus the code of\n    ``B.A`` couldn\'t be found either.\n\n    AUTHOR:\n\n    - Simon King (2011-09)\n    """\n    # First, split the name:\n    if \'.\' in obj.__name__:\n        splitted_name = obj.__name__.split(\'.\')\n    elif hasattr(obj, \'__qualname__\'):\n        splitted_name = obj.__qualname__.split(\'.\')\n    else:\n        splitted_name = obj.__name__\n    path = obj.__module__.split(\'.\')+splitted_name[:-1]\n    name = splitted_name[-1]\n    try:\n        M = __import__(path.pop(0))\n    except ImportError:\n        try:\n            B = obj.__base__\n            if B is None:\n                raise AttributeError\n        except AttributeError:\n            raise IOError("could not get source code")\n        return sage_getsourcelines(B)\n    # M should just be the top-most module.\n    # Hence, normally it is just \'sage\'\n    try:\n        while path:\n            M = getattr(M, path.pop(0))\n    except AttributeError:\n        try:\n            B = obj.__base__\n            if B is None:\n                raise AttributeError\n        except AttributeError:\n            raise IOError("could not get source code")\n        return sage_getsourcelines(B)\n\n    lines, base_lineno = sage_getsourcelines(M)\n    # the rest of the function is copied from\n    # inspect.findsource\n    if not lines:\n        raise IOError(\'could not get source code\')\n\n    if inspect.ismodule(obj):\n        return lines, base_lineno\n\n    if inspect.isclass(obj):\n        pat = re.compile(r\'^(\\s*)class\\s*\' + name + r\'\\b\')\n        # make some effort to find the best matching class definition:\n        # use the one with the least indentation, which is the one\n        # that\'s most probably not inside a function definition.\n        candidates = []\n        for i in range(len(lines)):\n            match = pat.match(lines[i])\n            if match:\n                # if it\'s at toplevel, it\'s already the best one\n                if lines[i][0] == \'c\':\n                    return inspect.getblock(lines[i:]), i+base_lineno\n                # else add whitespace to candidate list\n                candidates.append((match.group(1), i))\n        if candidates:\n            # this will sort by whitespace, and by line number,\n            # less whitespace first\n            candidates.sort()\n            return inspect.getblock(lines[candidates[0][1]:]), candidates[0][1]+base_lineno\n        else:\n            raise IOError(\'could not find class definition\')\n\n    if inspect.ismethod(obj):\n        obj = obj.__func__\n    if inspect.isfunction(obj):\n        obj = obj.__code__\n    if inspect.istraceback(obj):\n        obj = obj.tb_frame\n    if inspect.isframe(obj):\n        obj = obj.f_code\n    if inspect.iscode(obj):\n        if not hasattr(obj, \'co_firstlineno\'):\n            raise IOError(\'could not find function definition\')\n        pat = re.compile(r\'^(\\s*def\\s)|(.*(?<!\\w)lambda(:|\\s))|^(\\s*@)\')\n        pmatch = pat.match\n        # fperez - fix: sometimes, co_firstlineno can give a number larger than\n        # the length of lines, which causes an error.  Safeguard against that.\n        lnum = min(obj.co_firstlineno,len(lines))-1\n        while lnum > 0:\n            if pmatch(lines[lnum]):\n                break\n            lnum -= 1\n\n        return inspect.getblock(lines[lnum:]), lnum+base_lineno\n    raise IOError(\'could not find code object\')\n\n\ndef sage_getsourcelines(obj):\n    r"""\n    Return a pair ([source_lines], starting line number) of the source\n    code associated to obj, or None.\n\n    INPUT:\n\n    - ``obj`` -- function, etc.\n\n    OUTPUT:\n\n    (source_lines, lineno) or None: ``source_lines`` is a list of\n    strings, and ``lineno`` is an integer.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getsourcelines\n        sage: sage_getsourcelines(matrix)[1]\n        20\n        sage: sage_getsourcelines(matrix)[0][0]\n        \'def matrix(*args, **kwds):\\n\'\n\n    Some classes customize this using a ``_sage_src_lines_`` method,\n    which gives the source lines of a class instance, but not the class\n    itself. We demonstrate this for :class:`CachedFunction`::\n\n        sage: cachedfib = cached_function(fibonacci)\n        sage: sage_getsourcelines(cachedfib)[0][0]\n        \'def fibonacci(n, algorithm="pari"):\\n\'\n        sage: sage_getsourcelines(type(cachedfib))[0][0]\n        \'cdef class CachedFunction(object):\\n\'\n\n    TESTS::\n\n        sage: cython(\'\'\'cpdef test_funct(x,y): return\'\'\')\n        sage: sage_getsourcelines(test_funct)\n        ([\'cpdef test_funct(x,y): return\\n\'], 1)\n\n    The following tests that an instance of ``functools.partial`` is correctly\n    dealt with (see :trac:`9976`)::\n\n        sage: from sage.tests.functools_partial_src import test_func\n        sage: sage_getsourcelines(test_func)\n        ([\'def base(x):\\n\',\n        ...\n        \'    return x\\n\'], 7)\n\n    Here are some cases that were covered in :trac:`11298`;\n    note that line numbers may easily change, and therefore we do\n    not test them::\n\n        sage: P.<x,y> = QQ[]\n        sage: I = P*[x,y]\n        sage: sage_getsourcelines(P)\n        ([\'cdef class MPolynomialRing_libsingular(MPolynomialRing_base):\\n\',\n          \'\\n\',\n          \'    def __cinit__(self):\\n\',\n        ...)\n        sage: sage_getsourcelines(I)\n        ([\'class MPolynomialIdeal( MPolynomialIdeal_singular_repr, \\\\\\n\',\n        ...)\n        sage: x = var(\'x\')\n        sage: sage_getsourcelines(x)\n        ([\'cdef class Expression(CommutativeRingElement):\\n\',\n          \'    cpdef object pyobject(self):\\n\',\n        ...)\n        sage: sage_getsourcelines(x)[0][-1]    # last line\n        \'        return S\\n\'\n\n    We show some enhancements provided by :trac:`11768`. First, we\n    use a dummy parent class that has defined an element class by a\n    nested class definition::\n\n        sage: from sage.misc.nested_class_test import TestNestedParent\n        sage: from sage.misc.sageinspect import sage_getsource\n        sage: P = TestNestedParent()\n        sage: E = P.element_class\n        sage: E.__bases__\n        (<class \'sage.misc.nested_class_test.TestNestedParent.Element\'>,\n         <class \'sage.categories.sets_cat.Sets.element_class\'>)\n        sage: print(sage_getsource(E))\n            class Element(object):\n                "This is a dummy element class"\n                pass\n        sage: print(sage_getsource(P))\n        class TestNestedParent(UniqueRepresentation, Parent):\n            ...\n            class Element(object):\n                "This is a dummy element class"\n                pass\n\n    Here is another example that relies on a nested class definition\n    in the background::\n\n        sage: C = AdditiveMagmas()\n        sage: HC = C.Homsets()\n        sage: sage_getsourcelines(HC)\n        ([\'    class Homsets(HomsetsCategory):\\n\', ...], ...)\n\n    Testing against a bug that has occured during work on :trac:`11768`::\n\n        sage: P.<x,y> = QQ[]\n        sage: I = P*[x,y]\n        sage: sage_getsourcelines(I)\n        ([\'class MPolynomialIdeal( MPolynomialIdeal_singular_repr, \\\\\\n\',\n          \'                        MPolynomialIdeal_macaulay2_repr, \\\\\\n\',\n          \'                        MPolynomialIdeal_magma_repr, \\\\\\n\',\n          \'                        Ideal_generic ):\\n\',\n          \'    def __init__(self, ring, gens, coerce=True):\\n\',\n          ...)\n\n    AUTHORS:\n\n    - William Stein\n    - Extensions by Nick Alexander\n    - Extension to interactive Cython code by Simon King\n    - Simon King: If a class has no docstring then let the class\n      definition be found starting from the ``__init__`` method.\n    - Simon King: Get source lines for dynamic classes.\n    """\n    # First try the method _sage_src_lines_(), which is meant to give\n    # the source lines of an object (not of its type!).\n    try:\n        sage_src_lines = obj._sage_src_lines_\n    except AttributeError:\n        pass\n    else:\n        try:\n            return sage_src_lines()\n        except (NotImplementedError, TypeError):\n            # NotImplementedError can be raised by _sage_src_lines_()\n            # to indicate that it didn\'t find the source lines.\n            #\n            # TypeError can happen when obj is a type and\n            # obj._sage_src_lines_ is an unbound method. In this case,\n            # we don\'t want to use _sage_src_lines_(), we just want to\n            # get the source of the type itself.\n            pass\n\n    # Check if we deal with an instance\n    if isclassinstance(obj):\n        if isinstance(obj,functools.partial):\n            return sage_getsourcelines(obj.func)\n        else:\n            return sage_getsourcelines(obj.__class__)\n\n    # First, we deal with nested classes. Their name contains a dot, and we\n    # have a special function for that purpose.\n    # This is the case for ParentMethods of categories, for example.\n    if (inspect.isclass(obj) and\n            (\'.\' in obj.__name__ or \'.\' in getattr(obj, \'__qualname__\', \'\'))):\n        return _sage_getsourcelines_name_with_dot(obj)\n\n    # Next, we try _sage_getdoc_unformatted()\n    d = _sage_getdoc_unformatted(obj)\n    pos = _extract_embedded_position(d)\n    if pos is None:\n        try:\n            # BEWARE HERE\n            # inspect gives str (=bytes) in python2\n            # and str (=unicode) in python3\n            return inspect.getsourcelines(obj)\n\n        except (IOError, TypeError) as err:\n            try:\n                objinit = obj.__init__\n            except AttributeError:\n                pass\n            else:\n                d = _sage_getdoc_unformatted(objinit)\n                pos = _extract_embedded_position(d)\n                if pos is None:\n                    if inspect.isclass(obj):\n                        try:\n                            B = obj.__base__\n                        except AttributeError:\n                            B = None\n                        if B is not None and B is not obj:\n                            return sage_getsourcelines(B)\n                    if obj.__class__ != type:\n                        return sage_getsourcelines(obj.__class__)\n                    raise err\n\n    (orig, filename, lineno) = pos\n    try:\n        with open(filename) as f:\n            source_lines = f.readlines()\n    except IOError:\n        try:\n            from sage.misc.misc import SPYX_TMP\n            raw_name = filename.split(\'/\')[-1]\n            newname = os.path.join(SPYX_TMP, \'_\'.join(raw_name.split(\'_\')[:-1]), raw_name)\n            with open(newname) as f:\n                source_lines = f.readlines()\n        except IOError:\n            return None\n\n    # It is possible that the source lines belong to the __init__ method,\n    # rather than to the class. So, we try to look back and find the class\n    # definition.\n    first_line = source_lines[lineno-1]\n    leading_blanks = len(first_line)-len(first_line.lstrip())\n    if first_line.lstrip().startswith(\'def \') and "__init__" in first_line and obj.__name__!=\'__init__\':\n        ignore = False\n        double_quote = None\n        for lnb in range(lineno, 0, -1):\n            new_first_line = source_lines[lnb-1]\n            nfl_strip = new_first_line.lstrip()\n            if nfl_strip.startswith(\'"""\'):\n                if double_quote is None:\n                    double_quote=True\n                if double_quote:\n                    ignore = not ignore\n            elif nfl_strip.startswith("\'\'\'"):\n                if double_quote is None:\n                    double_quote=False\n                if double_quote is False:\n                    ignore = not ignore\n            if ignore:\n                continue\n            if len(new_first_line)-len(nfl_strip)<leading_blanks and nfl_strip:\n                # We are not inside a doc string. So, if the indentation\n                # is less than the indentation of the __init__ method\n                # then we must be at the class definition!\n                lineno = lnb\n                break\n    return _extract_source(source_lines, lineno), lineno\n\ndef sage_getvariablename(self, omit_underscore_names=True):\n    """\n    Attempt to get the name of a Sage object.\n\n    INPUT:\n\n    - ``self`` -- any object.\n\n    - ``omit_underscore_names`` -- boolean, default ``True``.\n\n    OUTPUT:\n\n    If the user has assigned an object ``obj`` to a variable name,\n    then return that variable name.  If several variables point to\n    ``obj``, return a sorted list of those names.  If\n    ``omit_underscore_names`` is True (the default) then omit names\n    starting with an underscore "_".\n\n    This is a modified version of code taken from\n    http://pythonic.pocoo.org/2009/5/30/finding-objects-names,\n    written by Georg Brandl.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getvariablename\n        sage: A = random_matrix(ZZ, 100)\n        sage: sage_getvariablename(A)\n        \'A\'\n        sage: B = A\n        sage: sage_getvariablename(A)\n        [\'A\', \'B\']\n\n    If an object is not assigned to a variable, an empty list is returned::\n\n        sage: sage_getvariablename(random_matrix(ZZ, 60))\n        []\n    """\n    result = []\n    for frame in inspect.stack():\n        for name, obj in iteritems(frame[0].f_globals):\n            if obj is self:\n                result.append(name)\n    if len(result) == 1:\n        return result[0]\n    else:\n        return sorted(result)\n\n__internal_teststring = \'\'\'\nimport os                                  # 1\n# preceding comment not include            # 2\ndef test1(a, b=2):                         # 3\n    if a:                                  # 4\n        return 1                           # 5\n    return b                               # 6\n# intervening comment not included         # 7\nclass test2():                             # 8\n    pass                                   # 9\n    # indented comment not included        # 10\n# trailing comment not included            # 11\ndef test3(b,                               # 12\n          a=2):                            # 13\n    pass # EOF                             # 14\'\'\'\n\ndef __internal_tests():\n    r"""\n    Test internals of the sageinspect module.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import *\n        sage: from sage.misc.sageinspect import _extract_source, _extract_embedded_position, _sage_getargspec_cython, __internal_teststring\n\n    If docstring is None, nothing bad happens::\n\n        sage: sage_getdoc(None)\n        \'\'\n\n        sage: sage_getsource(sage)\n        \'...all...\'\n\n    A cython function with default arguments (one of which is a string)::\n\n        sage: sage_getdef(sage.rings.integer.Integer.factor, obj_name=\'factor\')\n        "factor(algorithm=\'pari\', proof=None, limit=None, int_=False, verbose=0)"\n\n    This used to be problematic, but was fixed in :trac:`10094`::\n\n        sage: sage_getsource(sage.rings.integer.Integer.__init__)\n        \'    def __init__(self, x=None, base=0):\\n...\'\n        sage: sage_getdef(sage.rings.integer.Integer.__init__, obj_name=\'__init__\')\n        \'__init__(x=None, base=0)\'\n\n    Test _extract_source with some likely configurations, including no trailing\n    newline at the end of the file::\n\n        sage: s = __internal_teststring.strip()\n        sage: es = lambda ls, l: \'\'.join(_extract_source(ls, l)).rstrip()\n\n        sage: print(es(s, 3))\n        def test1(a, b=2):                         # 3\n            if a:                                  # 4\n                return 1                           # 5\n            return b                               # 6\n\n        sage: print(es(s, 8))\n        class test2():                             # 8\n            pass                                   # 9\n\n        sage: print(es(s, 12))\n        def test3(b,                               # 12\n                  a=2):                            # 13\n            pass # EOF                             # 14\n\n    Test _sage_getargspec_cython with multiple default arguments and a type::\n\n        sage: _sage_getargspec_cython("def init(self, x=None, base=0):")\n        ArgSpec(args=[\'self\', \'x\', \'base\'], varargs=None, keywords=None, defaults=(None, 0))\n        sage: _sage_getargspec_cython("def __init__(self, x=None, base=0):")\n        ArgSpec(args=[\'self\', \'x\', \'base\'], varargs=None, keywords=None, defaults=(None, 0))\n        sage: _sage_getargspec_cython("def __init__(self, x=None, unsigned int base=0, **keys):")\n        ArgSpec(args=[\'self\', \'x\', \'base\'], varargs=None, keywords=\'keys\', defaults=(None, 0))\n\n    Test _extract_embedded_position:\n\n    We cannot test the filename since it depends on ``SAGE_LIB``.\n\n    Make sure things work with no trailing newline::\n\n        sage: _extract_embedded_position(\'File: sage/rings/rational.pyx (starting at line 1080)\')\n        (\'\', \'.../rational.pyx\', 1080)\n\n    And with a trailing newline::\n\n        sage: s = \'File: sage/rings/rational.pyx (starting at line 1080)\\n\'\n        sage: _extract_embedded_position(s)\n        (\'\', \'.../rational.pyx\', 1080)\n\n    And with an original docstring::\n\n        sage: s = \'File: sage/rings/rational.pyx (starting at line 1080)\\noriginal\'\n        sage: _extract_embedded_position(s)\n        (\'original\', \'.../rational.pyx\', 1080)\n\n    And with a complicated original docstring::\n\n        sage: s = \'File: sage/rings/rational.pyx (starting at line 1080)\\n\\n\\noriginal test\\noriginal\'\n        sage: _extract_embedded_position(s)\n        (\'\\n\\noriginal test\\noriginal\', ..., 1080)\n\n        sage: s = \'no embedded position\'\n        sage: _extract_embedded_position(s) is None\n        True\n    """'
> sage: sage_getfile(sage.rings.rational.Rational) ## line 46 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/rational.pyx'
> sage: sage_getdoc(sage.rings.rational.Rational).lstrip() ## line 49 ##
> 'A rational number.\n\n   Rational numbers are implemented using the GMP C library.\n\n   EXAMPLES:\n\n      sage: a = -2/3\n      sage: type(a)\n      <type \'sage.rings.rational.Rational\'>\n      sage: parent(a)\n      Rational Field\n      sage: Rational(\'1/0\')\n      Traceback (most recent call last):\n      ...\n      TypeError: unable to convert \'1/0\' to a rational\n      sage: Rational(1.5)\n      3/2\n      sage: Rational(\'9/6\')\n      3/2\n      sage: Rational((2^99,2^100))\n      1/2\n      sage: Rational(("2", "10"), 16)\n      1/8\n      sage: Rational(QQbar(125/8).nth_root(3))\n      5/2\n      sage: Rational(AA(209735/343 - 17910/49*golden_ratio).nth_root(3) + 3*AA(golden_ratio))\n      53/7\n      sage: QQ(float(1.5))\n      3/2\n      sage: QQ(RDF(1.2))\n      6/5\n\n   Conversion from fractions:\n\n      sage: import fractions\n      sage: f = fractions.Fraction(1r, 2r)\n      sage: Rational(f)\n      1/2\n\n   Conversion from PARI:\n\n      sage: Rational(pari(\'-939082/3992923\'))\n      -939082/3992923\n      sage: Rational(pari(\'Pol([-1/2])\'))  #9595\n      -1/2\n\n   Conversions from numpy:\n\n      sage: import numpy as np\n      sage: QQ(np.int8(\'-15\'))\n      -15\n      sage: QQ(np.int16(\'-32\'))\n      -32\n      sage: QQ(np.int32(\'-19\'))\n      -19\n      sage: QQ(np.uint32(\'1412\'))\n      1412\n\n      sage: QQ(np.float16(\'12\'))\n      12\n\n   Conversions from gmpy2:\n\n      sage: from gmpy2 import *\n      sage: QQ(mpq(\'3/4\'))\n      3/4\n      sage: QQ(mpz(42))\n      42\n      sage: Rational(mpq(2/3))\n      2/3\n      sage: Rational(mpz(5))\n      5\n'
> sage: sage_getsource(sage.rings.rational.Rational) ## line 52 ##
> 'cdef class Rational(sage.structure.element.FieldElement):\n    """\n    A rational number.\n\n    Rational numbers are implemented using the GMP C library.\n\n    EXAMPLES::\n\n        sage: a = -2/3\n        sage: type(a)\n        <type \'sage.rings.rational.Rational\'>\n        sage: parent(a)\n        Rational Field\n        sage: Rational(\'1/0\')\n        Traceback (most recent call last):\n        ...\n        TypeError: unable to convert \'1/0\' to a rational\n        sage: Rational(1.5)\n        3/2\n        sage: Rational(\'9/6\')\n        3/2\n        sage: Rational((2^99,2^100))\n        1/2\n        sage: Rational(("2", "10"), 16)\n        1/8\n        sage: Rational(QQbar(125/8).nth_root(3))\n        5/2\n        sage: Rational(AA(209735/343 - 17910/49*golden_ratio).nth_root(3) + 3*AA(golden_ratio))\n        53/7\n        sage: QQ(float(1.5))\n        3/2\n        sage: QQ(RDF(1.2))\n        6/5\n\n    Conversion from fractions::\n\n        sage: import fractions\n        sage: f = fractions.Fraction(1r, 2r)\n        sage: Rational(f)\n        1/2\n\n    Conversion from PARI::\n\n        sage: Rational(pari(\'-939082/3992923\'))\n        -939082/3992923\n        sage: Rational(pari(\'Pol([-1/2])\'))  #9595\n        -1/2\n\n    Conversions from numpy::\n\n        sage: import numpy as np\n        sage: QQ(np.int8(\'-15\'))\n        -15\n        sage: QQ(np.int16(\'-32\'))\n        -32\n        sage: QQ(np.int32(\'-19\'))\n        -19\n        sage: QQ(np.uint32(\'1412\'))\n        1412\n\n        sage: QQ(np.float16(\'12\'))\n        12\n\n    Conversions from gmpy2::\n\n        sage: from gmpy2 import *\n        sage: QQ(mpq(\'3/4\'))\n        3/4\n        sage: QQ(mpz(42))\n        42\n        sage: Rational(mpq(2/3))\n        2/3\n        sage: Rational(mpz(5))\n        5\n\n    TESTS:\n\n    Check that :trac:`28321` is fixed::\n\n        sage: QQ((2r^100r, 3r^100r))\n        1267650600228229401496703205376/515377520732011331036461129765621272702107522001\n        sage: QQ((-2r^100r, -3r^100r))\n        1267650600228229401496703205376/515377520732011331036461129765621272702107522001\n    """\n    def __cinit__(self):\n        r"""\n        Initialize ``self`` as an element of `\\QQ`.\n\n        EXAMPLES::\n\n            sage: p = Rational(3) # indirect doctest\n            sage: p.parent()\n            Rational Field\n        """\n        global the_rational_ring\n        mpq_init(self.value)\n        self._parent = the_rational_ring\n\n    def __init__(self, x=None, unsigned int base=0):\n        """\n        Create a new rational number.\n\n        INPUT:\n\n        -  ``x`` - object (default: ``None``)\n\n        -  ``base`` - base if ``x`` is a string\n\n        EXAMPLES::\n\n            sage: a = Rational()\n            sage: a.__init__(7); a\n            7\n            sage: a.__init__(\'70\', base=8); a\n            56\n            sage: a.__init__(pari(\'2/3\')); a\n            2/3\n            sage: a.__init__(\'-h/3ki\', 32); a\n            -17/3730\n            sage: from gmpy2 import mpq\n            sage: a.__init__(mpq(\'3/5\')); a\n            3/5\n\n        TESTS:\n\n        Check that :trac:`19835` is fixed::\n\n            sage: QQ((0r,-1r))\n            0\n            sage: QQ((-1r,-1r))\n            1\n\n        .. NOTE::\n\n           This is for demonstration purposes only, mutating rationals\n           is almost always the wrong thing to do.\n        """\n        if x is not None:\n            self.__set_value(x, base)\n\n    def __reduce__(self):\n        """\n        Used in pickling rational numbers.\n\n        EXAMPLES::\n\n            sage: a = 3/5\n            sage: a.__reduce__()\n            (<cyfunction make_rational at ...>, (\'3/5\',))\n        """\n        return sage.rings.rational.make_rational, (self.str(32),)\n\n    def __index__(self):\n        """\n        Needed so integers can be used as list indices.\n\n        EXAMPLES::\n\n            sage: v = [1,2,3,4,5]\n            sage: v[3/1]\n            4\n            sage: v[3/2]\n            Traceback (most recent call last):\n            ...\n            TypeError: unable to convert rational 3/2 to an integer\n        """\n        if self.denominator() == 1:\n            return int(self)\n\n        raise TypeError(f"unable to convert rational {self} to an integer")\n\n    cdef __set_value(self, x, unsigned int base):\n        cdef int n\n        cdef Rational temp_rational\n        cdef integer.Integer a, b\n\n        if isinstance(x, Rational):\n            set_from_Rational(self, x)\n\n        elif isinstance(x, long):\n            mpz_set_pylong(mpq_numref(self.value), x)\n\n        elif isinstance(x, int):\n            i = x\n            mpq_set_si(self.value, i, 1)\n\n        elif isinstance(x, integer.Integer):\n            set_from_Integer(self, x)\n\n        elif isinstance(x, sage.rings.real_mpfr.RealNumber):\n\n            if x == 0:\n                mpq_set_si(self.value, 0, 1)\n                return\n            if not base:\n                set_from_Rational(self, x.simplest_rational())\n            else:\n                # Truncate in base 10 to match repr(x).\n                # See https://trac.sagemath.org/ticket/21124\n                xstr = x.str(base, truncate=(base == 10))\n                if \'.\' in xstr:\n                    exp = (len(xstr) - (xstr.index(\'.\') +1))\n                    p = base**exp\n                    pstr = \'1\'+\'0\'*exp\n                    s = xstr.replace(\'.\',\'\') +\'/\'+pstr\n                    n = mpq_set_str(self.value, str_to_bytes(s), base)\n                    if n or mpz_cmp_si(mpq_denref(self.value), 0) == 0:\n                        raise TypeError("unable to convert {!r} to a rational".format(x))\n                    mpq_canonicalize(self.value)\n                else:\n                    n = mpq_set_str(self.value, xstr, base)\n                    if n or mpz_cmp_si(mpq_denref(self.value), 0) == 0:\n                        raise TypeError("unable to convert {!r} to a rational".format(x))\n                    mpq_canonicalize(self.value)\n        elif isinstance(x, bytes):\n            n = mpq_set_str(self.value, x, base)\n            if n or mpz_cmp_si(mpq_denref(self.value), 0) == 0:\n                raise TypeError("unable to convert {!r} to a rational".format(x))\n            mpq_canonicalize(self.value)\n        elif isinstance(x, unicode):\n            n = mpq_set_str(self.value, str_to_bytes(x), base)\n            if n or mpz_cmp_si(mpq_denref(self.value), 0) == 0:\n                raise TypeError("unable to convert {!r} to a rational".format(x))\n            mpq_canonicalize(self.value)\n\n        elif hasattr(x, "_rational_"):\n            set_from_Rational(self, x._rational_())\n\n        elif isinstance(x, tuple) and len(x) == 2:\n            num = x[0]\n            denom = x[1]\n\n            if isinstance(num, long):\n                mpz_set_pylong(mpq_numref(self.value), num)\n            elif isinstance(num, int):  # Python 2 only\n                mpz_set_si(mpq_numref(self.value), num)\n            else:\n                if not isinstance(num, integer.Integer):\n                    num = integer.Integer(num, base)\n                mpz_set(mpq_numref(self.value), (<integer.Integer>num).value)\n\n            if isinstance(denom, long):\n                mpz_set_pylong(mpq_denref(self.value), denom)\n            elif isinstance(denom, int):  # Python 2 only\n                mpz_set_si(mpq_denref(self.value), denom)\n            else:\n                if not isinstance(denom, integer.Integer):\n                    denom = integer.Integer(denom, base)\n                mpz_set(mpq_denref(self.value), (<integer.Integer>denom).value)\n\n            if mpz_sgn(mpq_denref(self.value)) == 0:\n                raise ValueError("denominator must not be 0")\n\n            mpq_canonicalize(self.value)\n\n        elif isinstance(x, pari_gen):\n            x = x.simplify()\n            if is_rational_t(typ((<pari_gen>x).g)):\n                INTFRAC_to_mpq(self.value, (<pari_gen>x).g)\n            else:\n                a = integer.Integer(x)\n                mpz_set(mpq_numref(self.value), a.value)\n                mpz_set_si(mpq_denref(self.value), 1)\n\n        elif isinstance(x, list) and len(x) == 1:\n            self.__set_value(x[0], base)\n\n        elif hasattr(x, \'rational_reconstruction\'):\n            temp_rational = x.rational_reconstruction()\n            mpq_set(self.value, temp_rational.value)\n\n        elif isinstance(x, (float, sage.rings.real_double.RealDoubleElement)):\n            self.__set_value(sage.rings.real_mpfr.RealNumber(sage.rings.real_mpfr.RR, x), base)\n\n        elif is_numpy_type(type(x)):\n            import numpy\n            if isinstance(x, numpy.integer):\n                self.__set_value(integer.Integer(x), base)\n            elif isinstance(x, numpy.floating):\n                self.__set_value(sage.rings.real_mpfr.RR(x), base)\n            else:\n                raise TypeError("unable to convert {!r} to a rational".format(x))\n\n        elif isinstance(x, fractions.Fraction):\n            mpz_set(mpq_numref(self.value), (<integer.Integer> integer.Integer(x.numerator)).value)\n            mpz_set(mpq_denref(self.value), (<integer.Integer> integer.Integer(x.denominator)).value)\n\n        elif type(x) is gmpy2.mpq:\n            mpq_set(self.value, (<gmpy2.mpq>x).q)\n\n        elif type(x) is gmpy2.mpz:\n            mpq_set_z(self.value, (<gmpy2.mpz>x).z)\n\n        else:\n            raise TypeError("unable to convert {!r} to a rational".format(x))\n\n    cdef void set_from_mpq(Rational self, mpq_t value):\n        mpq_set(self.value, value)\n\n    def list(self):\n        """\n        Return a list with the rational element in it, to be compatible\n        with the method for number fields.\n\n        OUTPUT:\n\n        -  ``list`` - the list ``[self]``\n\n        EXAMPLES::\n\n            sage: m = 5/3\n            sage: m.list()\n            [5/3]\n        """\n        return [ self ]\n\n    def continued_fraction_list(self, type="std"):\n        r"""\n        Return the list of partial quotients of this rational number.\n\n        INPUT:\n\n        - ``type`` - either "std" (the default) for the standard continued\n          fractions or "hj" for the Hirzebruch-Jung ones.\n\n        EXAMPLES::\n\n            sage: (13/9).continued_fraction_list()\n            [1, 2, 4]\n            sage: 1 + 1/(2 + 1/4)\n            13/9\n\n            sage: (225/157).continued_fraction_list()\n            [1, 2, 3, 4,  5]\n            sage: 1 + 1/(2 + 1/(3 + 1/(4 + 1/5)))\n            225/157\n\n            sage: (fibonacci(20)/fibonacci(19)).continued_fraction_list()\n            [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2]\n\n            sage: (-1/3).continued_fraction_list()\n            [-1, 1, 2]\n\n        Check that the partial quotients of an integer ``n`` is simply ``[n]``::\n\n            sage: QQ(1).continued_fraction_list()\n            [1]\n            sage: QQ(0).continued_fraction_list()\n            [0]\n            sage: QQ(-1).continued_fraction_list()\n            [-1]\n\n        Hirzebruch-Jung continued fractions::\n\n            sage: (11/19).continued_fraction_list("hj")\n            [1, 3, 2, 3, 2]\n            sage: 1 - 1/(3 - 1/(2 - 1/(3 - 1/2)))\n            11/19\n\n            sage: (225/137).continued_fraction_list("hj")\n            [2, 3, 5, 10]\n            sage: 2 - 1/(3 - 1/(5 - 1/10))\n            225/137\n\n            sage: (-23/19).continued_fraction_list("hj")\n            [-1, 5, 4]\n            sage: -1 - 1/(5 - 1/4)\n            -23/19\n        """\n        cdef Integer z\n        cdef mpz_t p,q,tmp\n        cdef list res = []\n\n        mpz_init(tmp)\n        mpz_init(p)\n        mpz_init(q)\n        mpz_set(p, mpq_numref(self.value))\n        mpz_set(q, mpq_denref(self.value))\n\n        if type == "std":\n            while mpz_sgn(q) != 0:\n                z = Integer.__new__(Integer)\n                mpz_fdiv_qr(z.value,tmp,p,q)\n                mpz_set(p,q)\n                mpz_set(q,tmp)\n                res.append(z)\n        elif type == "hj":\n            while mpz_sgn(q) != 0:\n                z = Integer.__new__(Integer)\n                mpz_cdiv_qr(z.value,tmp,p,q)\n                mpz_set(p,q)\n                mpz_set(q,tmp)\n                res.append(z)\n                if mpz_sgn(q) == 0:\n                    break\n                z = Integer.__new__(Integer)\n                mpz_fdiv_qr(z.value,tmp,p,q)\n                mpz_set(p,q)\n                mpz_set(q,tmp)\n                mpz_neg(z.value,z.value)\n                res.append(z)\n        else:\n            mpz_clear(p)\n            mpz_clear(q)\n            mpz_clear(tmp)\n            raise ValueError("the type must be one of \'floor\', \'hj\'")\n\n        mpz_clear(p)\n        mpz_clear(q)\n        mpz_clear(tmp)\n\n        return res\n\n    def continued_fraction(self):\n        r"""\n        Return the continued fraction of that rational.\n\n        EXAMPLES::\n\n            sage: (641/472).continued_fraction()\n            [1; 2, 1, 3, 1, 4, 1, 5]\n\n            sage: a = (355/113).continued_fraction(); a\n            [3; 7, 16]\n            sage: a.n(digits=10)\n            3.141592920\n            sage: pi.n(digits=10)\n            3.141592654\n\n        It\'s almost pi!\n        """\n        #TODO: do better\n        from sage.rings.continued_fraction import ContinuedFraction_periodic\n        l = self.continued_fraction_list()\n        return ContinuedFraction_periodic(l)\n\n    def __richcmp__(left, right, int op):\n        """\n        Compare two rational numbers.\n\n        INPUT:\n\n        -  ``left, right`` -- objects\n\n        -  ``op`` -- integer\n\n        EXAMPLES::\n\n            sage: 1/3 < 2/3\n            True\n            sage: 2/3 < 1/3\n            False\n            sage: 4/5 < 2.0\n            True\n            sage: 4/5 < 0.8\n            False\n\n            sage: ones = [1, 1r, 1l, 1/1, 1.0r, 1.0]\n            sage: twos = [2, 2r, 2l, 2/1, 2.0r, 2.0]\n            sage: threes = [3, 3r, 3l, 3/1, 3.0r, 3.0]\n            sage: from itertools import product\n            sage: for one,two,three in product(ones,twos,threes):\n            ....:     assert one < two < three\n            ....:     assert one <= two <= three\n            ....:     assert three > two > one\n            ....:     assert three >= two >= one\n            ....:     assert one != two and one != three and two != three\n            sage: for one1, one2 in product(ones,repeat=2):\n            ....:     assert (one1 == one2) is True\n            ....:     assert (one1 <= one2) is True\n            ....:     assert (one1 >= one2) is True\n        """\n        cdef int c\n        cdef mpz_t mpz_tmp\n\n        assert isinstance(left, Rational)\n\n        if isinstance(right, Rational):\n            if op == Py_EQ:\n                return <bint> mpq_equal((<Rational>left).value, (<Rational>right).value)\n            elif op == Py_NE:\n                return not mpq_equal((<Rational>left).value, (<Rational>right).value)\n            else:\n                c = mpq_cmp((<Rational>left).value, (<Rational>right).value)\n        elif isinstance(right, Integer):\n            c = mpq_cmp_z((<Rational>left).value, (<Integer>right).value)\n        elif isinstance(right, long):\n            mpz_init(mpz_tmp)\n            mpz_set_pylong(mpz_tmp, right)\n            c = mpq_cmp_z((<Rational>left).value, mpz_tmp)\n            mpz_clear(mpz_tmp)\n        elif isinstance(right, int):\n            c = mpq_cmp_si((<Rational>left).value, PyInt_AS_LONG(right), 1)\n        else:\n            return coercion_model.richcmp(left, right, op)\n\n        return rich_to_bool_sgn(op, c)\n\n    cpdef int _cmp_(left, right) except -2:\n        r"""\n        TESTS::\n\n            sage: (2/3)._cmp_(3/4)\n            -1\n            sage: (1/2)._cmp_(1/2)\n            0\n        """\n        cdef int c\n        c = mpq_cmp((<Rational>left).value, (<Rational>right).value)\n        return (c > 0) - (c < 0)\n\n    def __copy__(self):\n        """\n        Return a copy of ``self``.\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: a = -17/37\n            sage: copy(a) is a\n            False\n\n        Coercion does not make a new copy::\n\n            sage: QQ(a) is a\n            True\n\n        The constructor also makes a new copy::\n\n            sage: Rational(a) is a\n            False\n        """\n        cdef Rational z\n        z = <Rational> Rational.__new__(Rational)\n        mpq_set(z.value, self.value)\n        return z\n\n    def  __dealloc__(self):\n        """\n        Free memory occupied by this rational number.\n\n        EXAMPLES::\n\n            sage: a = -17/37\n            sage: del a          # indirect test\n        """\n        mpq_clear(self.value)\n\n    def __repr__(self):\n        """\n        Return string representation of this rational number.\n\n        EXAMPLES::\n\n            sage: a = -17/37; a.__repr__()\n            \'-17/37\'\n        """\n        return self.str()\n\n    def _latex_(self):\n        """\n        Return Latex representation of this rational number.\n\n        EXAMPLES::\n\n            sage: a = -17/37\n            sage: a._latex_()\n            \'-\\\\frac{17}{37}\'\n        """\n        if self.denom() == 1:\n            return str(self.numer())\n        else:\n            if self < 0:\n                return "-\\\\frac{%s}{%s}"%(-self.numer(), self.denom())\n            else:\n               return "\\\\frac{%s}{%s}"%(self.numer(), self.denom())\n\n    def _symbolic_(self, sring):\n        """\n        Return this rational as symbolic expression.\n\n        EXAMPLES::\n\n            sage: ex = SR(QQ(7)/3); ex\n            7/3\n            sage: parent(ex)\n            Symbolic Ring\n        """\n        return sring._force_pyobject(self, force=True)\n\n    def _sympy_(self):\n        """\n        Convert Sage ``Rational`` to SymPy ``Rational``.\n\n        EXAMPLES::\n\n            sage: n = 1/2; n._sympy_()\n            1/2\n            sage: n = -1/5; n._sympy_()\n            -1/5\n            sage: from sympy import Symbol\n            sage: QQ(1)+Symbol(\'x\')*QQ(2)\n            2*x + 1\n        """\n        import sympy\n        return sympy.Rational(int(self.numerator()), int(self.denominator()))\n\n    def __mpz__(self):\n        """\n        Return a gmpy2 ``mpz`` if this Rational is an integer.\n\n        EXAMPLES::\n\n            sage: q = 6/2\n            sage: q.__mpz__()\n            mpz(3)\n            sage: q = 1/4\n            sage: q.__mpz__()\n            Traceback (most recent call last):\n            ...\n            TypeError: unable to convert rational 1/4 to an integer\n\n        TESTS::\n\n            sage: QQ().__mpz__(); raise NotImplementedError("gmpy2 is not installed")\n            Traceback (most recent call last):\n            ...\n            NotImplementedError: gmpy2 is not installed\n        """\n        if self.denominator() != 1:\n            raise TypeError(f"unable to convert rational {self} to an integer")\n        return self.numerator().__mpz__()\n\n    def __mpq__(self):\n        """\n        Convert Sage ``Rational`` to gmpy2 ``Rational``.\n\n        EXAMPLES::\n\n            sage: r = 5/3\n            sage: r.__mpq__()\n            mpq(5,3)\n            sage: from gmpy2 import mpq\n            sage: mpq(r)\n            mpq(5,3)\n        """\n        return gmpy2.GMPy_MPQ_From_mpq(self.value)\n\n    def _magma_init_(self, magma):\n        """\n        Return the magma representation of ``self``.\n\n        EXAMPLES::\n\n            sage: n = -485/82847\n            sage: n._magma_init_(magma) # optional - magma\n            \'-485/82847\'\n        """\n        return self.numerator()._magma_init_(magma) + \'/\' + self.denominator()._magma_init_(magma)\n\n    @property\n    def __array_interface__(self):\n        """\n        Used for NumPy conversion. If ``self`` is integral, it converts to\n        an ``Integer``. Otherwise it converts to a double floating point\n        value.\n\n        EXAMPLES::\n\n            sage: import numpy\n            sage: numpy.array([1, 2, 3/1])\n            array([1, 2, 3])\n\n            sage: numpy.array(QQ(2**40)).dtype\n            dtype(\'int64\')\n            sage: numpy.array(QQ(2**400)).dtype\n            dtype(\'O\')\n\n            sage: numpy.array([1, 1/2, 3/4])\n            array([1.  , 0.5 , 0.75])\n        """\n        if mpz_cmp_ui(mpq_denref(self.value), 1) == 0:\n            if mpz_fits_slong_p(mpq_numref(self.value)):\n                return numpy_long_interface\n            elif sizeof(long) == 4 and mpz_sizeinbase(mpq_numref(self.value), 2) <= 63:\n                return numpy_int64_interface\n            else:\n                return numpy_object_interface\n        else:\n            return numpy_double_interface\n\n    def _mathml_(self):\n        """\n        Return mathml representation of this rational number.\n\n        EXAMPLES::\n\n            sage: a = -17/37; a._mathml_()\n            \'<mo>-</mo><mfrac><mrow><mn>17</mn></mrow><mrow><mn>37</mn></mrow></mfrac>\'\n        """\n        if self.denom() == 1:\n            return \'<mn>%s</mn>\'%(self.numer())\n        else:\n            t = \'\'\n            if self < 0:\n                t = t + \'<mo>-</mo>\'\n            t = t + \'<mfrac><mrow>%s</mrow><mrow>%s</mrow></mfrac>\'%(\n                mathml(abs(self.numer())), mathml(self.denom()))\n            return t\n\n    def _im_gens_(self, codomain, im_gens, base_map=None):\n        """\n        Return the image of ``self`` under the homomorphism from the rational\n        field to ``codomain``.\n\n        This always just returns ``self`` coerced into the ``codomain``.\n\n        INPUT:\n\n        -  ``codomain`` -- object (usually a ring)\n\n        -  ``im_gens`` -- list of elements of ``codomain``\n\n        EXAMPLES::\n\n            sage: a = -17/37\n            sage: a._im_gens_(QQ, [1/1])\n            -17/37\n        """\n        return codomain._coerce_(self)\n\n    def content(self, other):\n        """\n        Return the content of ``self`` and ``other``, i.e. the unique positive\n        rational number `c` such that ``self/c`` and ``other/c`` are coprime\n        integers.\n\n        ``other`` can be a rational number or a list of rational numbers.\n\n        EXAMPLES::\n\n            sage: a = 2/3\n            sage: a.content(2/3)\n            2/3\n            sage: a.content(1/5)\n            1/15\n            sage: a.content([2/5, 4/9])\n            2/45\n        """\n        from sage.structure.sequence import Sequence\n        seq = Sequence(other)\n        seq.append(self)\n        nums = [x.numerator() for x in seq]\n        denoms = [x.denominator() for x in seq]\n        from sage.arith.all import gcd, lcm\n        return gcd(nums) / lcm(denoms)\n\n    def valuation(self, p):\n        r"""\n        Return the power of ``p`` in the factorization of self.\n\n        INPUT:\n\n\n        -  ``p`` - a prime number\n\n        OUTPUT:\n\n        (integer or infinity) ``Infinity`` if ``self`` is zero, otherwise the\n        (positive or negative) integer `e` such that ``self`` = `m*p^e`\n        with `m` coprime to `p`.\n\n        .. NOTE::\n\n           See also :meth:`val_unit()` which returns the pair `(e,m)`. The\n           function :meth:`ord()` is an alias for :meth:`valuation()`.\n\n        EXAMPLES::\n\n            sage: x = -5/9\n            sage: x.valuation(5)\n            1\n            sage: x.ord(5)\n            1\n            sage: x.valuation(3)\n            -2\n            sage: x.valuation(2)\n            0\n\n        Some edge cases::\n\n            sage: (0/1).valuation(4)\n            +Infinity\n            sage: (7/16).valuation(4)\n            -2\n        """\n        return self.numerator().valuation(p) - self.denominator().valuation(p)\n\n    ord = valuation\n\n    def local_height(self, p, prec=None):\n        r"""\n        Returns the local height of this rational number at the prime `p`.\n\n        INPUT:\n\n        -  ``p`` -- a prime number\n\n        - ``prec`` (int) -- desired floating point precision (default:\n          default RealField precision).\n\n        OUTPUT:\n\n        (real) The local height of this rational number at the\n        prime `p`.\n\n        EXAMPLES::\n\n            sage: a = QQ(25/6)\n            sage: a.local_height(2)\n            0.693147180559945\n            sage: a.local_height(3)\n            1.09861228866811\n            sage: a.local_height(5)\n            0.000000000000000\n        """\n        from sage.rings.real_mpfr import RealField\n        if prec is None:\n            R = RealField()\n        else:\n            R = RealField(prec)\n        if self.is_zero():\n            return R.zero()\n        val = self.valuation(p)\n        if val >= 0:\n            return R.zero()\n        return -val * R(p).log()\n\n    def local_height_arch(self, prec=None):\n        r"""\n        Returns the Archimedean local height of this rational number at the\n        infinite place.\n\n        INPUT:\n\n        - ``prec`` (int) -- desired floating point precision (default:\n          default RealField precision).\n\n        OUTPUT:\n\n        (real) The local height of this rational number `x` at the\n        unique infinite place of `\\QQ`, which is\n        `\\max(\\log(|x|),0)`.\n\n        EXAMPLES::\n\n            sage: a = QQ(6/25)\n            sage: a.local_height_arch()\n            0.000000000000000\n            sage: (1/a).local_height_arch()\n            1.42711635564015\n            sage: (1/a).local_height_arch(100)\n            1.4271163556401457483890413081\n        """\n        from sage.rings.real_mpfr import RealField\n        if prec is None:\n            R = RealField()\n        else:\n            R = RealField(prec)\n        a = self.abs()\n        if a <= 1:\n            return R.zero()\n        return R(a).log()\n\n    def global_height_non_arch(self, prec=None):\n        r"""\n        Returns the total non-archimedean component of the height of this\n        rational number.\n\n        INPUT:\n\n        - ``prec`` (int) -- desired floating point precision (default:\n          default RealField precision).\n\n        OUTPUT:\n\n        (real) The total non-archimedean component of the height of\n        this rational number.\n\n        ALGORITHM:\n\n        This is the sum of the local heights at all primes `p`, which\n        may be computed without factorization as the log of the\n        denominator.\n\n        EXAMPLES::\n\n            sage: a = QQ(5/6)\n            sage: a.support()\n            [2, 3, 5]\n            sage: a.global_height_non_arch()\n            1.79175946922805\n            sage: [a.local_height(p) for p in a.support()]\n            [0.693147180559945, 1.09861228866811, 0.000000000000000]\n            sage: sum([a.local_height(p) for p in a.support()])\n            1.79175946922805\n        """\n        from sage.rings.real_mpfr import RealField\n        if prec is None:\n            R = RealField()\n        else:\n            R = RealField(prec)\n        d = self.denominator()\n        if d.is_one():\n            return R.zero()\n        return R(d).log()\n\n    def global_height_arch(self, prec=None):\n        r"""\n        Returns the total archimedean component of the height of this rational\n        number.\n\n        INPUT:\n\n        - ``prec`` (int) -- desired floating point precision (default:\n          default RealField precision).\n\n        OUTPUT:\n\n        (real) The total archimedean component of the height of\n        this rational number.\n\n        ALGORITHM:\n\n        Since `\\QQ` has only one infinite place this is just the value\n        of the local height at that place.  This separate function is\n        included for compatibility with number fields.\n\n        EXAMPLES::\n\n            sage: a = QQ(6/25)\n            sage: a.global_height_arch()\n            0.000000000000000\n            sage: (1/a).global_height_arch()\n            1.42711635564015\n            sage: (1/a).global_height_arch(100)\n            1.4271163556401457483890413081\n        """\n        return self.local_height_arch(prec)\n\n    def global_height(self, prec=None):\n        r"""\n        Returns the absolute logarithmic height of this rational number.\n\n        INPUT:\n\n        - ``prec`` (int) -- desired floating point precision (default:\n          default RealField precision).\n\n        OUTPUT:\n\n        (real) The absolute logarithmic height of this rational number.\n\n        ALGORITHM:\n\n        The height is the sum of the total archimedean and\n        non-archimedean components, which is equal to\n        `\\max(\\log(n),\\log(d))` where `n,d` are the numerator and\n        denominator of the rational number.\n\n        EXAMPLES::\n\n            sage: a = QQ(6/25)\n            sage: a.global_height_arch() + a.global_height_non_arch()\n            3.21887582486820\n            sage: a.global_height()\n            3.21887582486820\n            sage: (1/a).global_height()\n            3.21887582486820\n            sage: QQ(0).global_height()\n            0.000000000000000\n            sage: QQ(1).global_height()\n            0.000000000000000\n        """\n        from sage.rings.real_mpfr import RealField\n        if prec is None:\n            R = RealField()\n        else:\n            R = RealField(prec)\n        return R(max(self.numerator().abs(),self.denominator())).log()\n\n    def is_square(self):\n        """\n        Return whether or not this rational number is a square.\n\n        OUTPUT: bool\n\n        EXAMPLES::\n\n            sage: x = 9/4\n            sage: x.is_square()\n            True\n            sage: x = (7/53)^100\n            sage: x.is_square()\n            True\n            sage: x = 4/3\n            sage: x.is_square()\n            False\n            sage: x = -1/4\n            sage: x.is_square()\n            False\n        """\n        return mpq_sgn(self.value) >= 0 and mpz_perfect_square_p(mpq_numref(self.value)) and mpz_perfect_square_p(mpq_denref(self.value))\n\n    def is_norm(self, L, element=False, proof=True):\n        r"""\n        Determine whether ``self`` is the norm of an element of ``L``.\n\n        INPUT:\n\n         - ``L`` -- a number field\n         - ``element`` -- (default: ``False``) boolean whether to also output\n           an element of which ``self`` is a norm\n         - proof -- If ``True``, then the output is correct unconditionally.\n           If ``False``, then the output assumes GRH.\n\n        OUTPUT:\n\n        If element is ``False``, then the output is a boolean ``B``, which is\n        ``True`` if and only if ``self`` is the norm of an element of ``L``.\n        If ``element`` is ``False``, then the output is a pair ``(B, x)``,\n        where ``B`` is as above. If ``B`` is ``True``, then ``x`` an element of\n        ``L`` such that ``self == x.norm()``. Otherwise, ``x is None``.\n\n        ALGORITHM:\n\n        Uses PARI\'s bnfisnorm. See ``_bnfisnorm()``.\n\n        EXAMPLES::\n\n            sage: K = NumberField(x^2 - 2, \'beta\')\n            sage: (1/7).is_norm(K)\n            True\n            sage: (1/10).is_norm(K)\n            False\n            sage: 0.is_norm(K)\n            True\n            sage: (1/7).is_norm(K, element=True)\n            (True, 1/7*beta + 3/7)\n            sage: (1/10).is_norm(K, element=True)\n            (False, None)\n            sage: (1/691).is_norm(QQ, element=True)\n            (True, 1/691)\n\n        The number field doesn\'t have to be defined by an\n        integral polynomial::\n\n            sage: B, e = (1/5).is_norm(QuadraticField(5/4, \'a\'), element=True)\n            sage: B\n            True\n            sage: e.norm()\n            1/5\n\n        A non-Galois number field::\n\n            sage: K.<a> = NumberField(x^3-2)\n            sage: B, e = (3/5).is_norm(K, element=True); B\n            True\n            sage: e.norm()\n            3/5\n\n            sage: 7.is_norm(K)\n            Traceback (most recent call last):\n            ...\n            NotImplementedError: is_norm is not implemented unconditionally for norms from non-Galois number fields\n            sage: 7.is_norm(K, proof=False)\n            False\n\n        AUTHORS:\n\n        - Craig Citro (2008-04-05)\n\n        - Marco Streng (2010-12-03)\n        """\n        if not element:\n            return self.is_norm(L, element=True, proof=proof)[0]\n\n        from sage.rings.number_field.number_field_base import is_NumberField\n        if not is_NumberField(L):\n            raise ValueError("L (=%s) must be a NumberField in is_norm" % L)\n        if L.degree() == 1 or self.is_zero():\n            return True, L(self)\n        d = L.polynomial().denominator()\n        if not d == 1:\n            M, M_to_L = L.subfield(L.gen()*d)\n            b, x = self.is_norm(M, element=True, proof=proof)\n            if b:\n                x = M_to_L(x)\n            return b, x\n        a, b = self._bnfisnorm(L, proof=proof)\n        if b == 1:\n            assert a.norm() == self\n            return True, a\n        if L.is_galois():\n            return False, None\n        M = L.galois_closure(\'a\')\n        from sage.functions.log import log\n        from sage.functions.other import floor\n        extra_primes = floor(12*log(abs(M.discriminant()))**2)\n        a, b = self._bnfisnorm(L, proof=proof, extra_primes=extra_primes)\n        if b == 1:\n            assert a.norm() == self\n            return True, a\n        if proof:\n            raise NotImplementedError("is_norm is not implemented unconditionally for norms from non-Galois number fields")\n        return False, None\n\n    def _bnfisnorm(self, K, proof=True, extra_primes=0):\n        r"""\n        This gives the output of the PARI function :pari:`bnfisnorm`.\n\n        Tries to tell whether the rational number ``self`` is the norm of some\n        element `y` in ``K``. Returns a pair `(a, b)` where\n        ``self = Norm(a)*b``. Looks for a solution that is an `S`-unit, with\n        `S` a certain set of prime ideals containing (among others) all primes\n        dividing ``self``.\n\n        If `K` is known to be Galois, set ``extra_primes = 0`` (in this case,\n        ``self`` is a norm iff `b = 1`).\n\n        If ``extra_primes`` is non-zero, the program adds to `S` the following\n        prime ideals, depending on the sign of extra_primes.\n        If ``extra_primes > 0``, the ideals of norm less than ``extra_primes``.\n        And if ``extra_primes < 0``, the ideals dividing ``extra_primes``.\n\n        Assuming GRH, the answer is guaranteed (i.e., ``self`` is a norm\n        iff `b = 1`), if `S` contains all primes less than\n        `12\\log(\\disc(L))^2`,\n        where `L` is the Galois closure of `K`.\n\n        INPUT:\n\n         - ``K`` -- a number field\n         - ``proof`` -- whether to certify the output of bnfinit.\n           If ``False``, then correctness of the output depends on GRH.\n         - ``extra_primes`` -- an integer as explained above\n\n        OUTPUT:\n\n        A pair `(a, b)` with `a` in `K` and `b` in `\\QQ` such that\n        ``self == Norm(a)*b`` as explained above.\n\n        ALGORITHM:\n\n        Uses PARI\'s bnfisnorm.\n\n        EXAMPLES::\n\n            sage: QQ(2)._bnfisnorm(QuadraticField(-1, \'i\'))\n            (i + 1, 1)\n            sage: 7._bnfisnorm(NumberField(x^3-2, \'b\'))\n            (1, 7)\n\n        AUTHORS:\n\n        - Craig Citro (2008-04-05)\n\n        - Marco Streng (2010-12-03)\n        """\n        from sage.rings.number_field.number_field_base import is_NumberField\n        if not is_NumberField(K):\n            raise ValueError("K must be a NumberField in bnfisnorm")\n\n        a, b = K.pari_bnf(proof=proof).bnfisnorm(self, flag=extra_primes)\n        return K(a), Rational(b)\n\n\n    def is_perfect_power(self, expected_value=False):\n        r"""\n        Returns ``True`` if ``self`` is a perfect power.\n\n        INPUT:\n\n        - ``expected_value`` - (bool) whether or not this rational is expected\n          be a perfect power. This does not affect the  correctness of the\n          output, only the runtime.\n\n        If ``expected_value`` is ``False`` (default) it will check the\n        smallest of the numerator and denominator is a perfect power\n        as a first step, which is often faster than checking if the\n        quotient is a perfect power.\n\n        EXAMPLES::\n\n            sage: (4/9).is_perfect_power()\n            True\n            sage: (144/1).is_perfect_power()\n            True\n            sage: (4/3).is_perfect_power()\n            False\n            sage: (2/27).is_perfect_power()\n            False\n            sage: (4/27).is_perfect_power()\n            False\n            sage: (-1/25).is_perfect_power()\n            False\n            sage: (-1/27).is_perfect_power()\n            True\n            sage: (0/1).is_perfect_power()\n            True\n\n        The second parameter does not change the result, but may\n        change the runtime.\n\n        ::\n\n            sage: (-1/27).is_perfect_power(True)\n            True\n            sage: (-1/25).is_perfect_power(True)\n            False\n            sage: (2/27).is_perfect_power(True)\n            False\n            sage: (144/1).is_perfect_power(True)\n            True\n\n        This test makes sure we workaround a bug in GMP (see :trac:`4612`)::\n\n            sage: [ -a for a in srange(100) if not QQ(-a^3).is_perfect_power() ]\n            []\n            sage: [ -a for a in srange(100) if not QQ(-a^3).is_perfect_power(True) ]\n            []\n        """\n        cdef int s\n\n        if (mpz_cmp_ui(mpq_numref(self.value), 0) == 0):\n            return True\n        elif (mpz_cmp_ui(mpq_numref(self.value), 1) == 0):\n            return mpz_perfect_power_p(mpq_denref(self.value))\n\n        cdef mpz_t prod\n        cdef bint res\n\n        # We should be able to run the code in the sign == 1 case\n        # below for both cases. However, we need to do extra work to\n        # avoid a bug in GMP\'s mpz_perfect_power_p; see trac #4612 for\n        # more details.\n        #\n        # The code in the case of sign == -1 could definitely be\n        # cleaned up, but it will be removed shortly, since both GMP\n        # and eMPIRe have fixes for the mpz_perfect_power_p bug.\n\n        s = mpz_sgn(mpq_numref(self.value))\n        if s == 1: # self is positive\n\n            if (mpz_cmp_ui(mpq_denref(self.value), 1) == 0):\n                return mpz_perfect_power_p(mpq_numref(self.value))\n            if not expected_value:\n                # A necessary condition is that both the numerator and denominator\n                # be perfect powers, which can be faster to disprove than the full\n                # product (especially if both have a large prime factor).\n                if mpz_cmpabs(mpq_numref(self.value), mpq_denref(self.value)) < 0:\n                    if not mpz_perfect_power_p(mpq_numref(self.value)):\n                        return False\n                else:\n                    if not mpz_perfect_power_p(mpq_denref(self.value)):\n                        return False\n            mpz_init(prod)\n            mpz_mul(prod, mpq_numref(self.value), mpq_denref(self.value))\n            res = mpz_perfect_power_p(prod)\n            mpz_clear(prod)\n            return res == 1\n\n        else: # self is negative\n\n            if (mpz_cmp_ui(mpq_denref(self.value), 1) == 0):\n                if (mpz_cmp_si(mpq_numref(self.value), -1) == 0):\n                    return True\n                mpz_init(prod)\n                mpz_mul_si(prod, mpq_numref(self.value), -1)\n                while mpz_perfect_square_p(prod):\n                    mpz_sqrt(prod, prod)\n                s = mpz_perfect_power_p(prod)\n                mpz_clear(prod)\n                return s == 1\n\n            if not expected_value:\n                if mpz_cmpabs(mpq_numref(self.value), mpq_denref(self.value)) < 0:\n                    mpz_init(prod)\n                    mpz_mul_si(prod, mpq_numref(self.value), -1)\n                    if mpz_cmp_ui(prod, 1) != 0:\n                        while mpz_perfect_square_p(prod):\n                            mpz_sqrt(prod, prod)\n                        if not mpz_perfect_power_p(prod):\n                            mpz_clear(prod)\n                            return False\n                else:\n                    if not mpz_perfect_power_p(mpq_denref(self.value)):\n                        return False\n                    mpz_init(prod)\n            else:\n                mpz_init(prod)\n\n            mpz_mul(prod, mpq_numref(self.value), mpq_denref(self.value))\n            mpz_mul_si(prod, prod, -1)\n            while mpz_perfect_square_p(prod):\n                mpz_sqrt(prod, prod)\n            res = mpz_perfect_power_p(prod)\n            mpz_clear(prod)\n            return res == 1\n\n    def squarefree_part(self):\n        """\n        Return the square free part of `x`, i.e., an integer z such\n        that `x = z y^2`, for a perfect square `y^2`.\n\n        EXAMPLES::\n\n            sage: a = 1/2\n            sage: a.squarefree_part()\n            2\n            sage: b = a/a.squarefree_part()\n            sage: b, b.is_square()\n            (1/4, True)\n            sage: a = 24/5\n            sage: a.squarefree_part()\n            30\n        """\n        return self.numer().squarefree_part() * self.denom().squarefree_part()\n\n    def is_padic_square(self, p, check=True):\n        """\n        Determines whether this rational number is a square in `\\QQ_p` (or in\n        `R` when ``p = infinity``).\n\n        INPUT:\n\n        -  ``p`` - a prime number, or ``infinity``\n\n        - ``check`` -- (default: ``True``); check if `p` is prime\n\n        EXAMPLES::\n\n            sage: QQ(2).is_padic_square(7)\n            True\n            sage: QQ(98).is_padic_square(7)\n            True\n            sage: QQ(2).is_padic_square(5)\n            False\n\n        TESTS::\n\n            sage: QQ(5/7).is_padic_square(int(2))\n            False\n        """\n        ## Special case when self is zero\n        if self.is_zero():\n            return True\n\n        ## Deal with p = infinity (i.e. the real numbers)\n        import sage.rings.infinity\n        if p == sage.rings.infinity.infinity:\n            return (self > 0)\n\n        ## Check that p is prime\n        from .integer_ring import ZZ\n        p = ZZ(p)\n        if check and not p.is_prime():\n            raise ValueError(\'p must be "infinity" or a positive prime number.\')\n\n        ## Deal with finite primes\n        e, m = self.val_unit(p)\n\n        if e % 2 == 1:\n            return False\n\n        if p == 2:\n            return ((m % 8) == 1)\n\n        from sage.arith.all import kronecker_symbol\n        return (kronecker_symbol(m, p) == 1)\n\n    def val_unit(self, p):\n        r"""\n        Returns a pair: the `p`-adic valuation of ``self``, and the `p`-adic\n        unit of ``self``, as a :class:`Rational`.\n\n        We do not require the `p` be prime, but it must be at least 2. For\n        more documentation see :meth:`Integer.val_unit()`.\n\n        INPUT:\n\n        -  ``p`` - a prime\n\n        OUTPUT:\n\n        -  ``int`` - the `p`-adic valuation of this rational\n\n        -  ``Rational`` - `p`-adic unit part of ``self``\n\n        EXAMPLES::\n\n            sage: (-4/17).val_unit(2)\n            (2, -1/17)\n            sage: (-4/17).val_unit(17)\n            (-1, -4)\n            sage: (0/1).val_unit(17)\n            (+Infinity, 1)\n\n        AUTHORS:\n\n        - David Roe (2007-04-12)\n        """\n        return self._val_unit(p)\n\n    # TODO -- change to use cpdef?  If so, must fix\n    # code in padics, etc.  Do search_src(\'_val_unit\').\n    cdef _val_unit(Rational self, integer.Integer p):\n        """\n        This is called by :meth:`val_unit()`.\n\n        EXAMPLES::\n\n            sage: (-4/17).val_unit(2) # indirect doctest\n            (2, -1/17)\n        """\n        cdef Rational u\n        if mpz_cmp_ui(p.value, 2) < 0:\n            raise ValueError("p must be at least 2.")\n        if mpq_sgn(self.value) == 0:\n            import sage.rings.infinity\n            u = Rational.__new__(Rational)\n            mpq_set_ui(u.value, 1, 1)\n            return (sage.rings.infinity.infinity, u)\n        cdef Integer v = Integer.__new__(Integer)\n        u = Rational.__new__(Rational)\n        sig_on()\n        mpz_set_ui(v.value, mpz_remove(mpq_numref(u.value), mpq_numref(self.value), p.value))\n        sig_off()\n        if mpz_sgn(v.value) != 0:\n            mpz_set(mpq_denref(u.value), mpq_denref(self.value))\n        else:\n            sig_on()\n            mpz_set_ui(v.value, mpz_remove(mpq_denref(u.value), mpq_denref(self.value), p.value))\n            sig_off()\n            mpz_neg(v.value, v.value)\n        return (v, u)\n\n    def prime_to_S_part(self, S=[]):\n        r"""\n        Returns ``self`` with all powers of all primes in ``S`` removed.\n\n        INPUT:\n\n        -  ``S`` - list or tuple of primes.\n\n        OUTPUT: rational\n\n        .. NOTE::\n\n           Primality of the entries in `S` is not checked.\n\n        EXAMPLES::\n\n            sage: QQ(3/4).prime_to_S_part()\n            3/4\n            sage: QQ(3/4).prime_to_S_part([2])\n            3\n            sage: QQ(-3/4).prime_to_S_part([3])\n            -1/4\n            sage: QQ(700/99).prime_to_S_part([2,3,5])\n            7/11\n            sage: QQ(-700/99).prime_to_S_part([2,3,5])\n            -7/11\n            sage: QQ(0).prime_to_S_part([2,3,5])\n            0\n            sage: QQ(-700/99).prime_to_S_part([])\n            -700/99\n\n        """\n        if self.is_zero():\n            return self\n        a = self\n        for p in S:\n            e, a = a.val_unit(p)\n        return a\n\n    def sqrt(self, prec=None, extend=True, all=False):\n        r"""\n        The square root function.\n\n        INPUT:\n\n        -  ``prec`` -- integer (default: ``None``): if ``None``, returns\n           an exact square root; otherwise returns a numerical square root if\n           necessary, to the given bits of precision.\n\n        -  ``extend`` -- bool (default: ``True``); if ``True``, return a\n           square root in an extension ring, if necessary. Otherwise, raise a\n           ``ValueError`` if the square is not in the base ring.\n\n        -  ``all`` -- bool (default: ``False``); if ``True``, return all\n           square roots of self, instead of just one.\n\n        EXAMPLES::\n\n            sage: x = 25/9\n            sage: x.sqrt()\n            5/3\n            sage: sqrt(x)\n            5/3\n            sage: x = 64/4\n            sage: x.sqrt()\n            4\n            sage: x = 100/1\n            sage: x.sqrt()\n            10\n            sage: x.sqrt(all=True)\n            [10, -10]\n            sage: x = 81/5\n            sage: x.sqrt()\n            9*sqrt(1/5)\n            sage: x = -81/3\n            sage: x.sqrt()\n            3*sqrt(-3)\n\n        ::\n\n            sage: n = 2/3\n            sage: n.sqrt()\n            sqrt(2/3)\n            sage: n.sqrt(prec=10)\n            0.82\n            sage: n.sqrt(prec=100)\n            0.81649658092772603273242802490\n            sage: n.sqrt(prec=100)^2\n            0.66666666666666666666666666667\n            sage: n.sqrt(prec=53, all=True)\n            [0.816496580927726, -0.816496580927726]\n            sage: n.sqrt(extend=False, all=True)\n            Traceback (most recent call last):\n            ...\n            ValueError: square root of 2/3 not a rational number\n            sage: sqrt(-2/3, all=True)\n            [sqrt(-2/3), -sqrt(-2/3)]\n            sage: sqrt(-2/3, prec=53)\n            0.816496580927726*I\n            sage: sqrt(-2/3, prec=53, all=True)\n            [0.816496580927726*I, -0.816496580927726*I]\n\n        AUTHORS:\n\n        - Naqi Jaffery (2006-03-05): some examples\n        """\n        if mpq_sgn(self.value) == 0:\n            return [self] if all else self\n\n        if mpq_sgn(self.value) < 0:\n            if not extend:\n                raise ValueError("square root of negative number not rational")\n            from sage.functions.other import _do_sqrt\n            return _do_sqrt(self, prec=prec, all=all)\n\n        cdef Rational z = <Rational> Rational.__new__(Rational)\n        cdef mpz_t tmp\n        cdef int non_square = 0\n\n        sig_on()\n        mpz_init(tmp)\n        mpz_sqrtrem(mpq_numref(z.value), tmp, mpq_numref(self.value))\n        if mpz_sgn(tmp) != 0:\n            non_square = 1\n        else:\n            mpz_sqrtrem(mpq_denref(z.value), tmp, mpq_denref(self.value))\n            if mpz_sgn(tmp) != 0:\n                non_square = 1\n        mpz_clear(tmp)\n        sig_off()\n\n        if non_square:\n            if not extend:\n                raise ValueError("square root of %s not a rational number" % self)\n            from sage.functions.other import _do_sqrt\n            return _do_sqrt(self, prec=prec, all=all)\n\n        if prec:\n            from sage.functions.other import _do_sqrt\n            return _do_sqrt(self, prec=prec, all=all)\n\n        if all:\n            return [z, -z]\n        return z\n\n    def period(self):\n        r"""\n        Return the period of the repeating part of the decimal expansion of\n        this rational number.\n\n        ALGORITHM:\n\n        When a rational number `n/d` with `(n,d)=1` is\n        expanded, the period begins after `s` terms and has length\n        `t`, where `s` and `t` are the smallest numbers satisfying\n        `10^s=10^{s+t} \\mod d`. In general if `d=2^a 5^b m` where `m`\n        is coprime to 10, then `s=\\max(a,b)` and `t` is the order of\n        10 modulo `d`.\n\n        EXAMPLES::\n\n            sage: (1/7).period()\n            6\n            sage: RR(1/7)\n            0.142857142857143\n            sage: (1/8).period()\n            1\n            sage: RR(1/8)\n            0.125000000000000\n            sage: RR(1/6)\n            0.166666666666667\n            sage: (1/6).period()\n            1\n            sage: x = 333/106\n            sage: x.period()\n            13\n            sage: RealField(200)(x)\n            3.1415094339622641509433962264150943396226415094339622641509\n        """\n        cdef unsigned int alpha, beta\n        d = self.denominator()\n        alpha, d = d.val_unit(2)\n        beta, d  = d.val_unit(5)\n        from sage.rings.finite_rings.integer_mod import Mod\n        return Mod(10, d).multiplicative_order()\n\n    def nth_root(self, int n):\n        r"""\n        Computes the `n`-th root of ``self``, or raises a\n        ``ValueError`` if ``self`` is not a perfect `n`-th power.\n\n        INPUT:\n\n        -  ``n`` - integer (must fit in C int type)\n\n        AUTHORS:\n\n        - David Harvey (2006-09-15)\n\n        EXAMPLES::\n\n            sage: (25/4).nth_root(2)\n            5/2\n            sage: (125/8).nth_root(3)\n            5/2\n            sage: (-125/8).nth_root(3)\n            -5/2\n            sage: (25/4).nth_root(-2)\n            2/5\n\n        ::\n\n            sage: (9/2).nth_root(2)\n            Traceback (most recent call last):\n            ...\n            ValueError: not a perfect 2nd power\n\n        ::\n\n            sage: (-25/4).nth_root(2)\n            Traceback (most recent call last):\n            ...\n            ValueError: cannot take even root of negative number\n        """\n        # TODO -- this could be quicker, by using GMP directly.\n        cdef integer.Integer num\n        cdef integer.Integer den\n        cdef int negative\n\n        if n > 0:\n            negative = 0\n        elif n < 0:\n            n = -n\n            negative = 1\n        else:\n            raise ValueError("n cannot be zero")\n\n        num, exact = self.numerator().nth_root(n, 1)\n        if not exact:\n            raise ValueError("not a perfect %s power" % ZZ(n).ordinal_str())\n\n        den, exact = self.denominator().nth_root(n, 1)\n        if not exact:\n            raise ValueError("not a perfect %s power" % ZZ(n).ordinal_str())\n\n        if negative:\n            return den / num\n        else:\n            return num / den\n\n    def is_nth_power(self, int n):\n        r"""\n        Returns ``True`` if self is an `n`-th power, else ``False``.\n\n        INPUT:\n\n        -  ``n`` - integer (must fit in C int type)\n\n        .. NOTE::\n\n           Use this function when you need to test if a rational\n           number is an `n`-th power, but do not need to know the value\n           of its `n`-th root.  If the value is needed, use :meth:`nth_root()`.\n\n        AUTHORS:\n\n        - John Cremona (2009-04-04)\n\n        EXAMPLES::\n\n            sage: QQ(25/4).is_nth_power(2)\n            True\n            sage: QQ(125/8).is_nth_power(3)\n            True\n            sage: QQ(-125/8).is_nth_power(3)\n            True\n            sage: QQ(25/4).is_nth_power(-2)\n            True\n\n            sage: QQ(9/2).is_nth_power(2)\n            False\n            sage: QQ(-25).is_nth_power(2)\n            False\n\n        """\n        if n == 0:\n            raise ValueError("n cannot be zero")\n        if n<0:\n            n = -n\n        if n%2==0 and self<0:\n            return False\n        return self.numerator().nth_root(n, 1)[1]\\\n               and self.denominator().nth_root(n, 1)[1]\n\n    def str(self, int base=10):\n        """\n        Return a string representation of ``self`` in the given ``base``.\n\n        INPUT:\n\n        -  ``base`` -- integer (default: 10); base must be between 2 and 36.\n\n        OUTPUT: string\n\n        EXAMPLES::\n\n            sage: (-4/17).str()\n            \'-4/17\'\n            sage: (-4/17).str(2)\n            \'-100/10001\'\n\n        Note that the base must be at most 36.\n\n        ::\n\n            sage: (-4/17).str(40)\n            Traceback (most recent call last):\n            ...\n            ValueError: base (=40) must be between 2 and 36\n            sage: (-4/17).str(1)\n            Traceback (most recent call last):\n            ...\n            ValueError: base (=1) must be between 2 and 36\n        """\n        if base < 2 or base > 36:\n            raise ValueError("base (=%s) must be between 2 and 36" % base)\n        cdef size_t n\n        cdef char *s\n\n        n = mpz_sizeinbase (mpq_numref(self.value), base) \\\n            + mpz_sizeinbase (mpq_denref(self.value), base) + 3\n        s = <char *>PyMem_Malloc(n)\n        if s == NULL:\n            raise MemoryError("Unable to allocate enough memory for the string representation of an integer.")\n\n        sig_on()\n        mpq_get_str(s, base, self.value)\n        sig_off()\n        k = char_to_str(s)\n        PyMem_Free(s)\n        return k\n\n    def __float__(self):\n        """\n        Return floating point approximation to ``self`` as a Python float.\n\n        OUTPUT: float\n\n        EXAMPLES::\n\n            sage: (-4/17).__float__()\n            -0.23529411764705882\n            sage: float(-4/17)\n            -0.23529411764705882\n            sage: float(1/3)\n            0.3333333333333333\n            sage: float(1/10)\n            0.1\n            sage: n = QQ(902834098234908209348209834092834098); float(n)\n            9.028340982349083e+35\n\n        TESTS:\n\n        Test that conversion agrees with `RR`::\n\n            sage: Q = [a/b for a in [-99..99] for b in [1..99]]\n            sage: all(RDF(q) == RR(q) for q in Q)\n            True\n\n        Test that the conversion has correct rounding on simple rationals::\n\n            sage: for p in [-100..100]:\n            ....:   for q in [1..100]:\n            ....:       r = RDF(p/q)\n            ....:       assert (RR(r).exact_rational() - p/q) <= r.ulp()/2\n\n        Test larger rationals::\n\n            sage: Q = continued_fraction(pi).convergents()[:100]\n            sage: all(RDF(q) == RR(q) for q in Q)\n            True\n\n        At some point, the continued fraction and direct conversion\n        to ``RDF`` should agree::\n\n            sage: RDFpi = RDF(pi)\n            sage: all(RDF(q) == RDFpi for q in Q[20:])\n            True\n        """\n        return mpq_get_d_nearest(self.value)\n\n    def __hash__(self):\n        """\n        Return hash of ``self``.\n\n        OUTPUT: integer\n\n        EXAMPLES::\n\n            sage: QQ(42).__hash__()\n            42\n            sage: QQ(1/42).__hash__()\n            1488680910            # 32-bit\n            -7658195599476688946  # 64-bit\n            sage: n = ZZ.random_element(10^100)\n            sage: hash(n) == hash(QQ(n)) or n\n            True\n            sage: hash(-n) == hash(-QQ(n)) or n\n            True\n            sage: hash(-4/17)\n            -47583156            # 32-bit\n            8709371129873690700  # 64-bit\n        """\n        cdef Py_hash_t n = mpz_pythonhash(mpq_numref(self.value))\n        cdef Py_hash_t d = mpz_pythonhash(mpq_denref(self.value))\n        # The constant below is (1 + sqrt(5)) << 61\n        return n + (d - 1) * <Py_hash_t>(7461864723258187525)\n\n    def __getitem__(self, int n):\n        """\n        Return ``n``-th element of ``self``, viewed as a list. This is for\n        consistency with how number field elements work.\n\n        INPUT:\n\n        -  ``n`` - an integer (error if not 0 or -1)\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: (-4/17)[0]\n            -4/17\n            sage: (-4/17)[1]\n            Traceback (most recent call last):\n            ...\n            IndexError: index n (=1) out of range; it must be 0\n            sage: (-4/17)[-1]   # indexing from the right\n            -4/17\n        """\n        if n == 0 or n == -1:\n            return self\n        raise IndexError("index n (=%s) out of range; it must be 0" % n)\n\n    ################################################################\n    # Optimized arithmetic\n    ################################################################\n    def __add__(left, right):\n        """\n        Return ``left`` plus ``right``\n\n        EXAMPLES::\n\n            sage: (2/3) + (1/6)\n            5/6\n            sage: (1/3) + (1/2)\n            5/6\n            sage: (1/3) + 2\n            7/3\n        """\n        cdef Rational x\n        if type(left) is type(right):\n            x = <Rational> Rational.__new__(Rational)\n            mpq_add(x.value, (<Rational>left).value, (<Rational>right).value)\n            return x\n        elif type(right) is Integer:\n            x = <Rational> Rational.__new__(Rational)\n            mpq_add_z(x.value, (<Rational>left).value, (<Integer>right).value)\n            return x\n\n        return coercion_model.bin_op(left, right, operator.add)\n\n    cpdef _add_(self, right):\n        """\n        Return ``right`` plus ``self``.\n\n        EXAMPLES::\n\n            sage: (2/3)._add_(1/6)\n            5/6\n            sage: (1/3)._add_(1/2)\n            5/6\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        mpq_add(x.value, self.value, (<Rational>right).value)\n        return x\n\n    def __sub__(left, right):\n        """\n        Return ``left`` minus ``right``\n\n        EXAMPLES::\n\n            sage: 11/3 - 5/4\n            29/12\n\n            sage: (2/3) - 2\n            -4/3\n            sage: (-2/3) - 1\n            -5/3\n            sage: (2/3) - (-3)\n            11/3\n            sage: (-2/3) - (-3)\n            7/3\n            sage: 2/3 - polygen(QQ)\n            -x + 2/3\n        """\n        cdef Rational x\n        if type(left) is type(right):\n            x = <Rational> Rational.__new__(Rational)\n            mpq_sub(x.value, (<Rational>left).value, (<Rational>right).value)\n            return x\n        elif type(right) is Integer:\n            x = <Rational> Rational.__new__(Rational)\n            mpz_mul(mpq_numref(x.value), mpq_denref((<Rational>left).value),\n                    (<Integer>right).value)\n            mpz_sub(mpq_numref(x.value), mpq_numref((<Rational>left).value),\n                    mpq_numref(x.value))\n            mpz_set(mpq_denref(x.value), mpq_denref((<Rational>left).value))\n            return x\n\n        return coercion_model.bin_op(left, right, operator.sub)\n\n    cpdef _sub_(self, right):\n        """\n        Return ``self`` minus ``right``.\n\n        EXAMPLES::\n\n            sage: (2/3)._sub_(1/6)\n            1/2\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        mpq_sub(x.value, self.value, (<Rational>right).value)\n        return x\n\n    cpdef _neg_(self):\n        """\n        Negate ``self``.\n\n        EXAMPLES::\n\n            sage: -(2/3) # indirect doctest\n            -2/3\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        mpq_neg(x.value, self.value)\n        return x\n\n    def __mul__(left, right):\n        """\n        Return ``left`` times ``right``.\n\n        EXAMPLES::\n\n            sage: (3/14) * 2/3\n            1/7\n            sage: (3/14) * 10\n            15/7\n            sage: 3/14 * polygen(QQ)\n            3/14*x\n        """\n        cdef Rational x\n        if type(left) is type(right):\n            x = <Rational> Rational.__new__(Rational)\n            mpq_mul(x.value, (<Rational>left).value, (<Rational>right).value)\n            return x\n        elif type(right) is Integer:\n            x = <Rational> Rational.__new__(Rational)\n            mpq_mul_z(x.value, (<Rational>left).value, (<Integer>right).value)\n            return x\n\n        return coercion_model.bin_op(left, right, operator.mul)\n\n    cpdef _mul_(self, right):\n        """\n        Return ``self`` times ``right``.\n\n        EXAMPLES::\n\n            sage: (3/14)._mul_(2/3)\n            1/7\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        if mpz_sizeinbase (mpq_numref(self.value), 2)  > 100000 or \\\n             mpz_sizeinbase (mpq_denref(self.value), 2) > 100000:\n            # We only use the signal handler (to enable ctrl-c out) in case\n            # self is huge, so the product might actually take a while to compute.\n            sig_on()\n            mpq_mul(x.value, self.value, (<Rational>right).value)\n            sig_off()\n        else:\n            mpq_mul(x.value, self.value, (<Rational>right).value)\n        return x\n\n    def __div__(left, right):\n        """\n        Return ``left`` divided by ``right``\n\n        EXAMPLES::\n\n            sage: QQ((2,3)) / QQ((-5,4))\n            -8/15\n            sage: QQ((22,3)) / 4\n            11/6\n            sage: QQ((-2,3)) / (-4)\n            1/6\n            sage: QQ((2,3)) / QQ.zero()\n            Traceback (most recent call last):\n            ...\n            ZeroDivisionError: rational division by zero\n        """\n        cdef Rational x\n        if type(left) is type(right):\n            if mpq_cmp_si((<Rational> right).value, 0, 1) == 0:\n                raise ZeroDivisionError(\'rational division by zero\')\n            x = <Rational> Rational.__new__(Rational)\n            mpq_div(x.value, (<Rational>left).value, (<Rational>right).value)\n            return x\n        elif type(right) is Integer:\n            if mpz_cmp_si((<Integer> right).value, 0) == 0:\n                raise ZeroDivisionError(\'rational division by zero\')\n            x = <Rational> Rational.__new__(Rational)\n            mpq_div_zz(x.value, mpq_numref((<Rational>left).value), (<Integer>right).value)\n            mpz_mul(mpq_denref(x.value), mpq_denref(x.value),\n                    mpq_denref((<Rational>left).value))\n            return x\n\n        return coercion_model.bin_op(left, right, operator.truediv)\n\n    cpdef _div_(self, right):\n        """\n        Return ``self`` divided by ``right``.\n\n        EXAMPLES::\n\n            sage: 2/3 # indirect doctest\n            2/3\n            sage: 3/0 # indirect doctest\n            Traceback (most recent call last):\n            ...\n            ZeroDivisionError: rational division by zero\n        """\n        if mpq_cmp_si((<Rational> right).value, 0, 1) == 0:\n            raise ZeroDivisionError(\'rational division by zero\')\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        mpq_div(x.value, self.value, (<Rational>right).value)\n        return x\n\n    ################################################################\n    # Other arithmetic operations.\n    ################################################################\n\n    def __invert__(self):\n        """\n        Return the multiplicative inverse of ``self``.\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: (-4/17).__invert__()\n            -17/4\n            sage: ~(-4/17)\n            -17/4\n        """\n        if self.is_zero():\n            raise ZeroDivisionError(\'rational division by zero\')\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        mpq_inv(x.value, self.value)\n        return x\n\n    cpdef _pow_(self, other):\n        """\n        Raise ``self`` to the rational power ``other``.\n\n        EXAMPLES::\n\n            sage: (2/3)^5\n            32/243\n            sage: (-1/1)^(1/3)\n            (-1)^(1/3)\n            sage: (2/3)^(3/4)\n            (2/3)^(3/4)\n            sage: (-1/3)^0\n            1\n            sage: a = (0/1)^(0/1); a\n            1\n            sage: type(a)\n            <type \'sage.rings.rational.Rational\'>\n\n        If the result is rational, it is returned as a rational::\n\n            sage: a = (4/9)^(1/2); a\n            2/3\n            sage: parent(a)\n            Rational Field\n            sage: (-27/125)^(1/3)\n            3/5*(-1)^(1/3)\n            sage: (-27/125)^(1/2)\n            3/5*sqrt(-3/5)\n\n        The result is normalized to have the rational power in the numerator::\n\n            sage: 2^(-1/2)\n            1/2*sqrt(2)\n            sage: 8^(-1/5)\n            1/8*8^(4/5)\n            sage: 3^(-3/2)\n            1/9*sqrt(3)\n\n        TESTS::\n\n            sage: QQ(0)^(-1)\n            Traceback (most recent call last):\n            ...\n            ZeroDivisionError: rational division by zero\n\n        This works even if the base is a Python integer::\n\n            sage: int(2)^(1/2)\n            sqrt(2)\n            sage: a = int(2)^(3/1); a\n            8\n            sage: type(a)\n            <type \'sage.rings.rational.Rational\'>\n\n        The exponent must fit in a long unless the base is -1, 0, or 1::\n\n            sage: (1/2)^(2^100)\n            Traceback (most recent call last):\n            ...\n            OverflowError: exponent must be at most 2147483647           # 32-bit\n            OverflowError: exponent must be at most 9223372036854775807  # 64-bit\n            sage: (1/2)^(-2^100)\n            Traceback (most recent call last):\n            ...\n            OverflowError: exponent must be at most 2147483647           # 32-bit\n            OverflowError: exponent must be at most 9223372036854775807  # 64-bit\n            sage: QQ(-1)^(2^100)\n            1\n        """\n        n = <Rational?>other\n\n        # If the exponent happens to be an integer, we can use optimized code\n        if mpz_cmp_ui(mpq_denref(n.value), 1) == 0:\n            if mpz_fits_slong_p(mpq_numref(n.value)):\n                return self._pow_long(mpz_get_si(mpq_numref(n.value)))\n\n        # Perhaps it can be done exactly\n        c, d = rational_power_parts(self, n)\n        if d == 1:\n            # It was an exact power\n            return c\n        elif d == -1 and n.denominator() == 2:\n            # Exact rational times a power of I\n            from sage.symbolic.all import I\n            return c * I ** (n.numerator() % 4)\n\n        # Result is c * d^n but we cannot simplify d^n further:\n        # return a symbolic expression.\n        # We use the hold=True keyword argument to prevent the\n        # symbolics library from trying to simplify this expression\n        # again. This would lead to infinite loops otherwise.\n        from sage.symbolic.ring import SR\n        return SR(c) * SR(d).power(n, hold=True)\n\n    cpdef _pow_int(self, n):\n        """\n        Raise ``self`` to the integer power ``n``.\n\n        TESTS::\n\n            sage: a = QQ(3)._pow_int(2); a\n            9\n            sage: parent(a)\n            Rational Field\n            sage: a = (1/3)._pow_int(-2); a\n            9\n            sage: parent(a)\n            Rational Field\n        """\n        # This is only called whenever n does not fit in a long\n        # (otherwise _pow_long would be called). So we don\'t have to\n        # be particularly efficient here.\n        return self._pow_(Rational(n))\n\n    cdef _pow_long(self, long n):\n        """\n        TESTS::\n\n            sage: QQ(2/5) ^ 0\n            1\n            sage: QQ(2/5) ^ int(3)\n            8/125\n            sage: QQ(2/5) ^ (-3)\n            125/8\n            sage: QQ(2/5) ^ QQ(-3)\n            125/8\n            sage: QQ(-2/5) ^ int(0)\n            1\n            sage: QQ(-2/5) ^ 3\n            -8/125\n            sage: QQ(-2/5) ^ int(-3)\n            -125/8\n            sage: QQ(-2/5) ^ QQ(3)\n            -8/125\n        """\n        cdef Rational x = <Rational>Rational.__new__(Rational)\n\n        if n == 0:\n            mpq_set_si(x.value, 1, 1)\n        elif n > 0:\n            sig_on()\n            mpz_pow_ui(mpq_numref(x.value), mpq_numref(self.value), n)\n            mpz_pow_ui(mpq_denref(x.value), mpq_denref(self.value), n)\n            sig_off()\n        else:  # n < 0:\n            if mpz_sgn(mpq_numref(self.value)) == 0:\n                raise ZeroDivisionError("rational division by zero")\n            sig_on()\n            mpz_pow_ui(mpq_denref(x.value), mpq_numref(self.value), -<unsigned long>n)\n            mpz_pow_ui(mpq_numref(x.value), mpq_denref(self.value), -<unsigned long>n)\n            # Fix signs\n            if mpz_sgn(mpq_denref(x.value)) < 0:\n                mpz_neg(mpq_numref(x.value), mpq_numref(x.value))\n                mpz_neg(mpq_denref(x.value), mpq_denref(x.value))\n            sig_off()\n        return x\n\n    def __pos__(self):\n        """\n        Return ``self``.\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: (-4/17).__pos__()\n            -4/17\n            sage: +(-4/17)\n            -4/17\n        """\n        return self\n\n    def __neg__(self):\n        """\n        Return the negative of ``self``.\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: (-4/17).__neg__()\n            4/17\n            sage: - (-4/17)\n            4/17\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        mpq_neg(x.value, self.value)\n        return x\n\n    def __nonzero__(self):\n        """\n        Return ``True`` if this rational number is nonzero.\n\n        OUTPUT: bool\n\n        EXAMPLES::\n\n            sage: bool(0/5)\n            False\n            sage: bool(-4/17)\n            True\n        """\n        # A rational number is zero iff its numerator is zero.\n        return mpq_sgn(self.value) != 0\n\n    def __abs__(self):\n        """\n        Return the absolute value of this rational number.\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: (-4/17).__abs__()\n            4/17\n            sage: abs(-4/17)\n            4/17\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        mpq_abs(x.value, self.value)\n        return x\n\n    def sign(self):\n        """\n        Returns the sign of this rational number, which is -1, 0, or 1\n        depending on whether this number is negative, zero, or positive\n        respectively.\n\n        OUTPUT: Integer\n\n        EXAMPLES::\n\n            sage: (2/3).sign()\n            1\n            sage: (0/3).sign()\n            0\n            sage: (-1/6).sign()\n            -1\n        """\n        return integer.smallInteger(mpq_sgn(self.value))\n\n    def mod_ui(Rational self, unsigned long int n):\n        """\n        Return the remainder upon division of ``self`` by the unsigned long\n        integer ``n``.\n\n        INPUT:\n\n        -  ``n`` - an unsigned long integer\n\n        OUTPUT: integer\n\n        EXAMPLES::\n\n            sage: (-4/17).mod_ui(3)\n            1\n            sage: (-4/17).mod_ui(17)\n            Traceback (most recent call last):\n            ...\n            ArithmeticError: The inverse of 0 modulo 17 is not defined.\n        """\n        cdef unsigned int num, den, a\n\n        # Documentation from GMP manual:\n        # "For the ui variants the return value is the remainder, and\n        # in fact returning the remainder is all the div_ui functions do."\n        sig_on()\n        num = mpz_fdiv_ui(mpq_numref(self.value), n)\n        den = mpz_fdiv_ui(mpq_denref(self.value), n)\n        sig_off()\n        return int((num * ai.inverse_mod_int(den, n)) % n)\n\n    def __mod__(x, y):\n        """\n        Return the remainder of division of ``x`` by ``y``, where ``y`` is\n        something that can be coerced to an integer.\n\n        INPUT:\n\n        -  ``other`` - object that coerces to an integer.\n\n        OUTPUT: integer\n\n        EXAMPLES::\n\n            sage: (-4/17).__mod__(3/1)\n            1\n\n        TESTS:\n\n        Check that :trac:`14870` is fixed::\n\n            sage: int(4) % QQ(3)\n            1\n        """\n        cdef Rational rat\n        if not isinstance(x, Rational):\n            rat = Rational(x)\n        else:\n            rat = x\n        cdef other = integer.Integer(y)\n        if not other:\n            raise ZeroDivisionError("Rational modulo by zero")\n        n = rat.numer() % other\n        d = rat.denom() % other\n        d = d.inverse_mod(other)\n        return (n * d) % other\n\n    def norm(self):\n        r"""\n        Returns the norm from `\\QQ` to `\\QQ` of `x` (which is just `x`). This\n        was added for compatibility with :class:`NumberFields`.\n\n        OUTPUT:\n\n        -  ``Rational`` - reference to ``self``\n\n        EXAMPLES::\n\n            sage: (1/3).norm()\n             1/3\n\n        AUTHORS:\n\n        - Craig Citro\n        """\n        return self\n\n    def relative_norm(self):\n        """\n        Returns the norm from Q to Q of x (which is just x). This was added for compatibility with NumberFields\n\n        EXAMPLES::\n\n            sage: (6/5).relative_norm()\n            6/5\n\n            sage: QQ(7/5).relative_norm()\n            7/5\n        """\n        return self\n\n    def absolute_norm(self):\n        """\n        Returns the norm from Q to Q of x (which is just x). This was added for compatibility with NumberFields\n\n        EXAMPLES::\n\n            sage: (6/5).absolute_norm()\n            6/5\n\n            sage: QQ(7/5).absolute_norm()\n            7/5\n        """\n        return self\n\n    def trace(self):\n        r"""\n        Returns the trace from `\\QQ` to `\\QQ` of `x` (which is just `x`). This\n        was added for compatibility with :class:`NumberFields`.\n\n        OUTPUT:\n\n        -  ``Rational`` - reference to self\n\n        EXAMPLES::\n\n            sage: (1/3).trace()\n             1/3\n\n        AUTHORS:\n\n        - Craig Citro\n        """\n        return self\n\n    def charpoly(self, var=\'x\'):\n        """\n        Return the characteristic polynomial of this rational number. This\n        will always be just ``var - self``; this is really here so that code\n        written for number fields won\'t crash when applied to rational\n        numbers.\n\n        INPUT:\n\n        -  ``var`` - a string\n\n        OUTPUT: Polynomial\n\n        EXAMPLES::\n\n            sage: (1/3).charpoly(\'x\')\n             x - 1/3\n\n        The default is var=\'x\'. (:trac:`20967`)::\n\n            sage: a = QQ(2); a.charpoly(\'x\')\n            x - 2\n\n\n        AUTHORS:\n\n        - Craig Citro\n        """\n        QQ = self.parent()\n        return QQ[var]([-self,1])\n\n    def minpoly(self, var=\'x\'):\n        """\n        Return the minimal polynomial of this rational number. This will\n        always be just ``x - self``; this is really here so that code written\n        for number fields won\'t crash when applied to rational numbers.\n\n        INPUT:\n\n        -  ``var`` - a string\n\n        OUTPUT: Polynomial\n\n        EXAMPLES::\n\n            sage: (1/3).minpoly()\n            x - 1/3\n            sage: (1/3).minpoly(\'y\')\n            y - 1/3\n\n        AUTHORS:\n\n        - Craig Citro\n        """\n        QQ = self.parent()\n        return QQ[var]([-self,1])\n\n    def _integer_(self, Z=None):\n        """\n        Return ``self`` coerced to an integer. Of course this rational number\n        must have a denominator of 1.\n\n        OUTPUT: Integer\n\n        EXAMPLES::\n\n            sage: (-4/17)._integer_()\n            Traceback (most recent call last):\n            ...\n            TypeError: no conversion of this rational to integer\n            sage: (-4/1)._integer_()\n            -4\n        """\n        if not mpz_cmp_si(mpq_denref(self.value), 1) == 0:\n            raise TypeError("no conversion of this rational to integer")\n        cdef Integer n = Integer.__new__(Integer)\n        n.set_from_mpz(mpq_numref(self.value))\n        return n\n\n    def numerator(self):\n        """\n        Return the numerator of this rational number.\n        numer is an alias of numerator.\n\n        EXAMPLES::\n\n            sage: x = 5/11\n            sage: x.numerator()\n            5\n\n            sage: x = 9/3\n            sage: x.numerator()\n            3\n\n            sage: x = -5/11\n            sage: x.numer()\n            -5\n        """\n        cdef Integer n = Integer.__new__(Integer)\n        n.set_from_mpz(mpq_numref(self.value))\n        return n\n\n    #Define an alias for numerator\n    numer = numerator\n\n    IF PY_MAJOR_VERSION <= 2:\n        def __int__(self):\n            """\n            Convert this rational to a Python ``int``.\n\n            This truncates ``self`` if ``self`` has a denominator (which is\n            consistent with Python\'s ``long(floats)``).\n\n            EXAMPLES::\n\n                sage: int(7/3)\n                2\n                sage: int(-7/3)\n                -2\n            """\n            return int(self.__long__())\n\n    def __long__(self):\n        """\n        Convert this rational to a Python ``long`` (``int`` on Python 3).\n\n        This truncates ``self`` if ``self`` has a denominator (which is\n        consistent with Python\'s ``long(floats)``).\n\n        EXAMPLES::\n\n            sage: long(7/3)\n            2L\n            sage: long(-7/3)\n            -2L\n        """\n        cdef mpz_t x\n        if mpz_cmp_si(mpq_denref(self.value),1) != 0:\n            mpz_init(x)\n            mpz_tdiv_q(x, mpq_numref(self.value), mpq_denref(self.value))\n            n = mpz_get_pylong(x)\n            mpz_clear(x)\n            return n\n        else:\n            return mpz_get_pylong(mpq_numref(self.value))\n\n    def denominator(self):\n        """\n        Returns the denominator of this rational number.\n        denom is an alias of denominator.\n\n        EXAMPLES::\n\n            sage: x = -5/11\n            sage: x.denominator()\n            11\n\n            sage: x = 9/3\n            sage: x.denominator()\n            1\n\n            sage: x = 5/13\n            sage: x.denom()\n            13\n        """\n        cdef Integer n = Integer.__new__(Integer)\n        n.set_from_mpz(mpq_denref(self.value))\n        return n\n\n    #Define an alias for denominator\n    denom = denominator\n\n    def as_integer_ratio(self):\n        """\n        Return the pair ``(self.numerator(), self.denominator())``.\n\n        EXAMPLES::\n\n            sage: x = -12/29\n            sage: x.as_integer_ratio()\n            (-12, 29)\n        """\n        n = <Integer>Integer.__new__(Integer)\n        d = <Integer>Integer.__new__(Integer)\n        n.set_from_mpz(mpq_numref(self.value))\n        d.set_from_mpz(mpq_denref(self.value))\n        return (n, d)\n\n    def factor(self):\n        """\n        Return the factorization of this rational number.\n\n        OUTPUT: Factorization\n\n        EXAMPLES::\n\n            sage: (-4/17).factor()\n            -1 * 2^2 * 17^-1\n\n        Trying to factor 0 gives an arithmetic error::\n\n            sage: (0/1).factor()\n            Traceback (most recent call last):\n            ...\n            ArithmeticError: factorization of 0 is not defined\n        """\n        from sage.structure.factorization import Factorization\n        return self.numerator().factor() * \\\n           Factorization([(p, -e) for p, e in self.denominator().factor()])\n\n    def support(self):\n        """\n        Return a sorted list of the primes where this rational number has\n        non-zero valuation.\n\n        OUTPUT: The set of primes appearing in the factorization of this\n        rational with nonzero exponent, as a sorted list.\n\n        EXAMPLES::\n\n            sage: (-4/17).support()\n            [2, 17]\n\n        Trying to find the support of 0 gives an arithmetic error::\n\n            sage: (0/1).support()\n            Traceback (most recent call last):\n            ...\n            ArithmeticError: Support of 0 not defined.\n        """\n        if self.is_zero():\n            raise ArithmeticError("Support of 0 not defined.")\n        return sage.arith.all.prime_factors(self)\n\n    def log(self, m=None, prec=None):\n        r"""\n        Return the log of ``self``.\n\n        INPUT:\n\n        - ``m`` -- the base (default: natural log base e)\n\n        - ``prec`` -- integer (optional); the precision in bits\n\n        OUTPUT:\n\n        When ``prec`` is not given, the log as an element in symbolic\n        ring unless the logarithm is exact. Otherwise the log is a\n        :class:`RealField` approximation to ``prec`` bit precision.\n\n        EXAMPLES::\n\n            sage: (124/345).log(5)\n            log(124/345)/log(5)\n            sage: (124/345).log(5,100)\n            -0.63578895682825611710391773754\n            sage: log(QQ(125))\n            3*log(5)\n            sage: log(QQ(125), 5)\n            3\n            sage: log(QQ(125), 3)\n            3*log(5)/log(3)\n            sage: QQ(8).log(1/2)\n            -3\n            sage: (1/8).log(1/2)\n            3\n            sage: (1/2).log(1/8)\n            1/3\n            sage: (1/2).log(8)\n            -1/3\n            sage: (16/81).log(8/27)\n            4/3\n            sage: (8/27).log(16/81)\n            3/4\n            sage: log(27/8, 16/81)\n            -3/4\n            sage: log(16/81, 27/8)\n            -4/3\n            sage: (125/8).log(5/2)\n            3\n            sage: (125/8).log(5/2,prec=53)\n            3.00000000000000\n            \n        TESTS::\n        \n            sage: (25/2).log(5/2)\n            log(25/2)/log(5/2)\n            sage: (-1/2).log(3)\n            (I*pi + log(1/2))/log(3)\n        """\n        cdef int self_sgn\n        if self.denom().is_one():\n            return ZZ(self.numer()).log(m, prec)\n        if m is not None and m <= 0:\n            raise ValueError("log base must be positive")\n        self_sgn = mpz_sgn(mpq_numref(self.value))\n        if self_sgn < 0 and prec is None:\n            from sage.symbolic.all import SR\n            return SR(self).log(m)\n        if prec:\n            if self_sgn >= 0:\n                from sage.rings.real_mpfr import RealField\n                return RealField(prec)(self).log(m)\n            else:\n                from sage.rings.complex_field import ComplexField\n                return ComplexField(prec)(self).log(m)\n\n        from sage.functions.log import function_log\n        if m is None:\n            return function_log(self, dont_call_method_on_arg=True)\n\n        anum = self.numer()\n        aden = self.denom()\n        mrat = Rational(m)\n        bnum = mrat.numer()\n        bden = mrat.denom()\n\n        anp = anum.perfect_power()\n        bnp = bnum.perfect_power()\n        adp = aden.perfect_power()\n        bdp = bden.perfect_power()\n\n        if anum.is_one():\n            a_exp=adp[1]\n            a_base=1/adp[0]\n        # we already know that aden!=0\n        else:\n            a_exp=anp[1].gcd(adp[1])\n            a_base=(anp[0]**(anp[1]//a_exp))/(adp[0]**(adp[1]//a_exp))\n\n        if bnum.is_one():\n            b_exp=bdp[1]\n            b_base=1/bdp[0]\n        elif bden.is_one():\n            b_exp=bnp[1]\n            b_base=bnp[0]\n        else:\n            b_exp=bnp[1].gcd(bdp[1])\n            b_base=(bnp[0]**(bnp[1]//b_exp))/(bdp[0]**(bdp[1]//b_exp))\n\n        if a_base == b_base:\n            return a_exp/b_exp\n        elif a_base*b_base == 1:\n            return -a_exp/b_exp\n\n        return (function_log(self, dont_call_method_on_arg=True) /\n                function_log(m, dont_call_method_on_arg=True))\n\n    def gamma(self, *, prec=None):\n        """\n        Return the gamma function evaluated at ``self``. This value is exact\n        for integers and half-integers, and returns a symbolic value\n        otherwise.  For a numerical approximation, use keyword ``prec``.\n\n        EXAMPLES::\n\n            sage: gamma(1/2)\n            sqrt(pi)\n            sage: gamma(7/2)\n            15/8*sqrt(pi)\n            sage: gamma(-3/2)\n            4/3*sqrt(pi)\n            sage: gamma(6/1)\n            120\n            sage: gamma(1/3)\n            gamma(1/3)\n\n        This function accepts an optional precision argument::\n\n            sage: (1/3).gamma(prec=100)\n            2.6789385347077476336556929410\n            sage: (1/2).gamma(prec=100)\n            1.7724538509055160272981674833\n\n        TESTS:\n\n        This is not the incomplete gamma function! ::\n\n            sage: (1/2).gamma(5)\n            Traceback (most recent call last):\n            ...\n            TypeError: gamma() takes exactly 0 positional arguments (1 given)\n        """\n        if prec:\n            return self.n(prec).gamma()\n        else:\n            if mpz_cmp_ui(mpq_denref(self.value), 1) == 0:\n                return integer.Integer(self).gamma()\n            elif mpz_cmp_ui(mpq_denref(self.value), 2) == 0:\n                numer = self.numer()\n                rat_part = Rational((numer-2).multifactorial(2)) >> ((numer-1)//2)\n                from sage.symbolic.constants import pi\n                from sage.functions.all import sqrt\n                return sqrt(pi) * rat_part\n            else:\n                from sage.symbolic.all import SR\n                return SR(self).gamma()\n\n    def floor(self):\n        """\n        Return the floor of this rational number as an integer.\n\n        OUTPUT: Integer\n\n        EXAMPLES::\n\n            sage: n = 5/3; n.floor()\n            1\n            sage: n = -17/19; n.floor()\n            -1\n            sage: n = -7/2; n.floor()\n            -4\n            sage: n = 7/2; n.floor()\n            3\n            sage: n = 10/2; n.floor()\n            5\n        """\n        cdef integer.Integer n\n        n = integer.Integer()\n        mpz_fdiv_q(n.value, mpq_numref(self.value), mpq_denref(self.value))\n        return n\n\n    def ceil(self):\n        """\n        Return the ceiling of this rational number.\n\n        OUTPUT: Integer\n\n        If this rational number is an integer, this returns this number,\n        otherwise it returns the floor of this number +1.\n\n        EXAMPLES::\n\n            sage: n = 5/3; n.ceil()\n            2\n            sage: n = -17/19; n.ceil()\n            0\n            sage: n = -7/2; n.ceil()\n            -3\n            sage: n = 7/2; n.ceil()\n            4\n            sage: n = 10/2; n.ceil()\n            5\n        """\n        cdef integer.Integer n\n        n = integer.Integer()\n        mpz_cdiv_q(n.value, mpq_numref(self.value), mpq_denref(self.value))\n        return n\n\n    def trunc(self):\n        """\n        Round this rational number to the nearest integer toward zero.\n\n        EXAMPLES::\n\n            sage: (5/3).trunc()\n            1\n            sage: (-5/3).trunc()\n            -1\n            sage: QQ(42).trunc()\n            42\n            sage: QQ(-42).trunc()\n            -42\n        """\n        cdef integer.Integer n\n        n = integer.Integer()\n        mpz_tdiv_q(n.value, mpq_numref(self.value), mpq_denref(self.value))\n        return n\n\n    def round(Rational self, mode="away"):\n        """\n        Returns the nearest integer to ``self``, rounding away from 0 by\n        default, for consistency with the builtin Python round.\n\n        INPUT:\n\n        -  ``self`` - a rational number\n\n        -  ``mode`` - a rounding mode for half integers:\n\n           - \'toward\' rounds toward zero\n           - \'away\' (default) rounds away from zero\n           - \'up\' rounds up\n           - \'down\' rounds down\n           - \'even\' rounds toward the even integer\n           - \'odd\' rounds toward the odd integer\n\n\n        OUTPUT: Integer\n\n        EXAMPLES::\n\n            sage: (9/2).round()\n            5\n            sage: n = 4/3; n.round()\n            1\n            sage: n = -17/4; n.round()\n            -4\n            sage: n = -5/2; n.round()\n            -3\n            sage: n.round("away")\n            -3\n            sage: n.round("up")\n            -2\n            sage: n.round("down")\n            -3\n            sage: n.round("even")\n            -2\n            sage: n.round("odd")\n            -3\n        """\n        if not (mode in [\'toward\', \'away\', \'up\', \'down\', \'even\', \'odd\']):\n            raise ValueError("rounding mode must be one of \'toward\', \'away\', \'up\', \'down\', \'even\', or \'odd\'")\n        if self.denominator() == 1:\n            from sage.rings.integer import Integer\n            return Integer(self)\n        if self.denominator() == 2:\n            # round down:\n            if (mode == "down") or \\\n                   (mode == "toward" and self > 0) or \\\n                   (mode == "away" and self < 0) or \\\n                   (mode == "even" and self.numerator() % 4 == 1) or \\\n                   (mode == "odd" and self.numerator() % 4 == 3):\n                return self.numerator() // self.denominator()\n            else:\n                return self.numerator() // self.denominator() + 1\n        else:\n            q, r = self.numerator().quo_rem(self.denominator())\n            if r < self.denominator() / 2:\n                return q\n            else:\n                return q+1\n\n    __round__ = round\n\n    def real(self):\n        """\n        Returns the real part of ``self``, which is ``self``.\n\n        EXAMPLES::\n\n            sage: (1/2).real()\n            1/2\n        """\n        return self\n\n    def imag(self):\n        """\n        Returns the imaginary part of ``self``, which is zero.\n\n        EXAMPLES::\n\n            sage: (1/239).imag()\n            0\n        """\n        return self._parent(0)\n\n    def height(self):\n        """\n        The max absolute value of the numerator and denominator of ``self``, as\n        an :class:`Integer`.\n\n        OUTPUT: Integer\n\n        EXAMPLES::\n\n            sage: a = 2/3\n            sage: a.height()\n            3\n            sage: a = 34/3\n            sage: a.height()\n            34\n            sage: a = -97/4\n            sage: a.height()\n            97\n\n        AUTHORS:\n\n        - Naqi Jaffery (2006-03-05): examples\n\n        .. NOTE::\n\n           For the logarithmic height, use :meth:`global_height()`.\n\n        """\n        x = abs(self.numer())\n        if x > self.denom():\n            return x\n        return self.denom()\n\n    def _lcm(self, Rational other):\n        """\n        Returns the least common multiple, in the rational numbers, of ``self``\n        and ``other``. This function returns either 0 or 1 (as a rational\n        number).\n\n        INPUT:\n\n        -  ``other`` - Rational\n\n        OUTPUT:\n\n        -  ``Rational`` - 0 or 1\n\n        EXAMPLES::\n\n            sage: (2/3)._lcm(3/5)\n            1\n            sage: (0/1)._lcm(0/1)\n            0\n            sage: type((2/3)._lcm(3/5))\n            <type \'sage.rings.rational.Rational\'>\n        """\n        if mpz_cmp_si(mpq_numref(self.value), 0) == 0 and \\\n               mpz_cmp_si(mpq_numref(other.value), 0) == 0:\n            return Rational(0)\n        return Rational(1)\n\n    def additive_order(self):\n        """\n        Return the additive order of ``self``.\n\n        OUTPUT: integer or infinity\n\n        EXAMPLES::\n\n            sage: QQ(0).additive_order()\n            1\n            sage: QQ(1).additive_order()\n            +Infinity\n        """\n        import sage.rings.infinity\n        if self.is_zero():\n            return integer.Integer(1)\n        else:\n            return sage.rings.infinity.infinity\n\n\n    def multiplicative_order(self):\n        """\n        Return the multiplicative order of ``self``.\n\n        OUTPUT: Integer or ``infinity``\n\n        EXAMPLES::\n\n            sage: QQ(1).multiplicative_order()\n            1\n            sage: QQ(\'1/-1\').multiplicative_order()\n            2\n            sage: QQ(0).multiplicative_order()\n            +Infinity\n            sage: QQ(\'2/3\').multiplicative_order()\n            +Infinity\n            sage: QQ(\'1/2\').multiplicative_order()\n            +Infinity\n        """\n        import sage.rings.infinity\n        if self.is_one():\n            return integer.Integer(1)\n        elif mpz_cmpabs(mpq_numref(self.value),mpq_denref(self.value))==0:\n            # if the numerator and the denominator are equal in absolute value,\n            # then the rational number is -1\n            return integer.Integer(2)\n        else:\n            return sage.rings.infinity.infinity\n\n    def is_one(self):\n        r"""\n        Determine if a rational number is one.\n\n        OUTPUT: bool\n\n        EXAMPLES::\n\n            sage: QQ(1/2).is_one()\n            False\n            sage: QQ(4/4).is_one()\n            True\n        """\n        # A rational number is equal to 1 iff its numerator and denominator are equal\n        return mpz_cmp(mpq_numref(self.value),mpq_denref(self.value))==0\n\n    def is_integral(self):\n        r"""\n        Determine if a rational number is integral (i.e is in\n        `\\ZZ`).\n\n        OUTPUT: bool\n\n        EXAMPLES::\n\n            sage: QQ(1/2).is_integral()\n            False\n            sage: QQ(4/4).is_integral()\n            True\n        """\n        return mpz_cmp_si(mpq_denref(self.value), 1) == 0\n\n    def is_rational(self):\n        r"""\n        Return ``True`` since this is a rational number.\n\n        EXAMPLES::\n\n            sage: (3/4).is_rational()\n            True\n        """\n        return True\n\n    #Function alias for checking if the number is a integer.Added to solve ticket 15500\n    is_integer = is_integral\n\n\n    def is_S_integral(self, S=[]):\n        r"""\n        Determine if the rational number is ``S``-integral.\n\n        ``x`` is ``S``-integral if ``x.valuation(p)>=0`` for all ``p`` not in\n        ``S``, i.e., the denominator of ``x`` is divisible only by the primes\n        in ``S``.\n\n        INPUT:\n\n        -  ``S`` -- list or tuple of primes.\n\n        OUTPUT: bool\n\n        .. NOTE::\n\n           Primality of the entries in ``S`` is not checked.\n\n        EXAMPLES::\n\n            sage: QQ(1/2).is_S_integral()\n            False\n            sage: QQ(1/2).is_S_integral([2])\n            True\n            sage: [a for a in range(1,11) if QQ(101/a).is_S_integral([2,5])]\n            [1, 2, 4, 5, 8, 10]\n        """\n        if self.is_integral():\n            return True\n        return self.prime_to_S_part(S).is_integral()\n\n    def is_S_unit(self, S=None):\n        r"""\n        Determine if the rational number is an ``S``-unit.\n\n        ``x`` is an ``S``-unit if ``x.valuation(p)==0`` for all ``p`` not in\n        ``S``, i.e., the numerator and denominator of ``x`` are divisible only\n        by the primes in `S`.\n\n        INPUT:\n\n        -  ``S`` -- list or tuple of primes.\n\n        OUTPUT: bool\n\n        .. NOTE::\n\n           Primality of the entries in ``S`` is not checked.\n\n        EXAMPLES::\n\n            sage: QQ(1/2).is_S_unit()\n            False\n            sage: QQ(1/2).is_S_unit([2])\n            True\n            sage: [a for a in range(1,11) if QQ(10/a).is_S_unit([2,5])]\n            [1, 2, 4, 5, 8, 10]\n        """\n        a = self.abs()\n        if a==1:\n            return True\n        if S is None:\n            return False\n        return a.prime_to_S_part(S) == 1\n\n    cdef _lshift(self, long int exp):\n        r"""\n        Return ``self * 2^exp``.\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        sig_on()\n        if exp < 0:\n            mpq_div_2exp(x.value,self.value,-exp)\n        else:\n            mpq_mul_2exp(x.value,self.value,exp)\n        sig_off()\n        return x\n\n    def __lshift__(x,y):\n        """\n        Left shift operator ``x << y``.\n\n        INPUT:\n\n        -  ``x, y`` -- integer or rational\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: (2/3).__lshift__(4/1)\n            32/3\n            sage: (2/3).__lshift__(4/7)\n            Traceback (most recent call last):\n            ...\n            ValueError: denominator must be 1\n            sage: (2).__lshift__(4/1)\n            32\n            sage: (2/3).__lshift__(4)\n            32/3\n            sage: (2/3) << (4/1)\n            32/3\n        """\n        if isinstance(x, Rational):\n            if isinstance(y, (int, long, integer.Integer)):\n                return (<Rational>x)._lshift(y)\n            if isinstance(y, Rational):\n                if mpz_cmp_si(mpq_denref((<Rational>y).value), 1) != 0:\n                    raise ValueError("denominator must be 1")\n                return (<Rational>x)._lshift(y)\n        return coercion_model.bin_op(x, y, operator.lshift)\n\n    cdef _rshift(self, long int exp):\n        r"""\n        Return ``self / 2^exp``.\n        """\n        cdef Rational x\n        x = <Rational> Rational.__new__(Rational)\n        sig_on()\n        if exp < 0:\n            mpq_mul_2exp(x.value,self.value,-exp)\n        else:\n            mpq_div_2exp(x.value,self.value,exp)\n        sig_off()\n        return x\n\n    def __rshift__(x,y):\n        """\n        Right shift operator ``x >> y``.\n\n        INPUT:\n\n        -  ``x, y`` -- integer or rational\n\n        OUTPUT: Rational\n\n        EXAMPLES::\n\n            sage: (2/3).__rshift__(4/1)\n            1/24\n            sage: (2/3).__rshift__(4/7)\n            Traceback (most recent call last):\n            ...\n            ValueError: denominator must be 1\n            sage: (2).__rshift__(4/1)\n            0\n            sage: (2/1).__rshift__(4)\n            1/8\n            sage: (2/1) >>(4/1)\n            1/8\n        """\n        if isinstance(x, Rational):\n            if isinstance(y, (int, long, integer.Integer)):\n                return (<Rational>x)._rshift(y)\n            if isinstance(y, Rational):\n                if mpz_cmp_si(mpq_denref((<Rational>y).value), 1) != 0:\n                    raise ValueError("denominator must be 1")\n                return (<Rational>x)._rshift(y)\n        return coercion_model.bin_op(x, y, operator.rshift)\n\n    def conjugate(self):\n        """\n        Return the complex conjugate of this rational number, which is\n        the number itself.\n\n        EXAMPLES::\n\n            sage: n = 23/11\n            sage: n.conjugate()\n            23/11\n        """\n        return self\n\n    ##################################################\n    # Support for interfaces\n    ##################################################\n\n    def __pari__(self):\n        """\n        Returns the PARI version of this rational number.\n\n        EXAMPLES::\n\n            sage: n = 9390823/17\n            sage: m = n.__pari__(); m\n            9390823/17\n            sage: type(m)\n            <type \'cypari2.gen.Gen\'>\n            sage: m.type()\n            \'t_FRAC\'\n        """\n        return new_gen_from_mpq_t(self.value)\n\n    def _interface_init_(self, I=None):\n        """\n        Return representation of this rational suitable for coercing into\n        almost any computer algebra system.\n\n        OUTPUT: string\n\n        EXAMPLES::\n\n            sage: (2/3)._interface_init_()\n            \'2/3\'\n            sage: kash(3/1).Type()              # optional - kash\n            elt-fld^rat\n            sage: magma(3/1).Type()             # optional - magma\n            FldRatElt\n        """\n        return \'%s/%s\'%(self.numerator(), self.denominator())\n\n    def _sage_input_(self, sib, coerced):\n        r"""\n        Produce an expression which will reproduce this value when evaluated.\n\n        EXAMPLES::\n\n            sage: sage_input(QQ(1), verify=True)\n            # Verified\n            QQ(1)\n            sage: sage_input(-22/7, verify=True)\n            # Verified\n            -22/7\n            sage: sage_input(-22/7, preparse=False)\n            -ZZ(22)/7\n            sage: sage_input(10^-50, verify=True)\n            # Verified\n            1/100000000000000000000000000000000000000000000000000\n            sage: from sage.misc.sage_input import SageInputBuilder\n            sage: (-2/37)._sage_input_(SageInputBuilder(preparse=False), False)\n            {unop:- {binop:/ {call: {atomic:ZZ}({atomic:2})} {atomic:37}}}\n            sage: QQ(5)._sage_input_(SageInputBuilder(preparse=False), True)\n            {atomic:5}\n        """\n\n        # This code is extensively described in the docstring\n        # for sage_input.py.\n\n        num = self.numerator()\n        neg = (num < 0)\n        if neg: num = -num\n        if self.denominator() == 1:\n            if coerced:\n                v = sib.int(num)\n            else:\n                v = sib.name(\'QQ\')(sib.int(num))\n        else:\n            v = sib(num)/sib.int(self.denominator())\n        if neg: v = -v\n        return v\n'
> sage: sage_getfile(BlockFinder) ## line 57 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sageinspect.py'
> sage: sage_getdoc(BlockFinder).lstrip() ## line 60 ##
> 'Provide a tokeneater() method to detect the end of a code block.\n\n   This is the Python library\'s "inspect.BlockFinder" modified to\n   recognize Cython definitions.\n'
> sage: sage_getsource(BlockFinder) ## line 63 ##
> 'class BlockFinder:\n    """\n    Provide a tokeneater() method to detect the end of a code block.\n\n    This is the Python library\'s :class:`inspect.BlockFinder` modified\n    to recognize Cython definitions.\n    """\n    def __init__(self):\n        self.indent = 0\n        self.islambda = False\n        self.started = False\n        self.passline = False\n        self.last = 1\n\n    def tokeneater(self, type, token, srow_scol, erow_ecol, line):\n        srow, scol = srow_scol\n        erow, ecol = erow_ecol\n        if not self.started:\n            # look for the first "(cp)def", "class" or "lambda"\n            if token in ("def", "cpdef", "class", "lambda"):\n                if token == "lambda":\n                    self.islambda = True\n                self.started = True\n            self.passline = True    # skip to the end of the line\n        elif type == tokenize.NEWLINE:\n            self.passline = False   # stop skipping when a NEWLINE is seen\n            self.last = srow\n            if self.islambda:       # lambdas always end at the first NEWLINE\n                raise inspect.EndOfBlock\n        elif self.passline:\n            pass\n        elif type == tokenize.INDENT:\n            self.indent = self.indent + 1\n            self.passline = True\n        elif type == tokenize.DEDENT:\n            self.indent = self.indent - 1\n            # the end of matching indent/dedent pairs end a block\n            # (note that this only works for "def"/"class" blocks,\n            #  not e.g. for "if: else:" or "try: finally:" blocks)\n            if self.indent <= 0:\n                raise inspect.EndOfBlock\n        elif self.indent == 0 and type not in (tokenize.COMMENT, tokenize.NL):\n            # any other token on the same indentation level end the previous\n            # block as well, except the pseudo-tokens COMMENT and NL.\n            raise inspect.EndOfBlock\n'
> sage: sage_getdef(sage.rings.rational.make_rational, obj_name='mr') ## line 70 ##
> 'mr(s)'
> sage: sage_getfile(sage.rings.rational.make_rational) ## line 73 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/rational.pyx'
> sage: sage_getdoc(sage.rings.rational.make_rational).lstrip() ## line 76 ##
> 'Make a rational number from "s" (a string in base 32)\n\n   INPUT:\n\n   * "s" - string in base 32\n\n   OUTPUT: Rational\n\n   EXAMPLES:\n\n      sage: (-7/15).str(32)\n      \'-7/f\'\n      sage: sage.rings.rational.make_rational(\'-7/f\')\n      -7/15\n'
> sage: sage_getsource(sage.rings.rational.make_rational)[4:] ## line 79 ##
> 'make_rational(s):\n    """\n    Make a rational number from ``s`` (a string in base 32)\n\n    INPUT:\n\n    -  ``s`` - string in base 32\n\n    OUTPUT: Rational\n\n    EXAMPLES::\n\n        sage: (-7/15).str(32)\n        \'-7/f\'\n        sage: sage.rings.rational.make_rational(\'-7/f\')\n        -7/15\n    """\n    r = Rational()\n    mpq_set_str(r.value, str_to_bytes(s), 32)\n    return r\n'
> sage: sage_getdef(sage.misc.sageinspect.sage_getfile, obj_name='sage_getfile') ## line 84 ##
> 'sage_getfile(obj)'
> sage: sage_getfile(sage.misc.sageinspect.sage_getfile) ## line 87 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sageinspect.py'
> sage: sage_getdoc(sage.misc.sageinspect.sage_getfile).lstrip() ## line 90 ##
> 'Get the full file name associated to "obj" as a string.\n\n   INPUT: "obj", a Sage object, module, etc.\n\n   EXAMPLES:\n\n      sage: from sage.misc.sageinspect import sage_getfile\n      sage: sage_getfile(sage.rings.rational)[-23:]\n      \'sage/rings/rational.pyx\'\n      sage: sage_getfile(Sq)[-42:]\n      \'sage/algebras/steenrod/steenrod_algebra.py\'\n\n   The following tests against some bugs fixed in\n   https://trac.sagemath.org/9976:\n\n      sage: obj = sage.combinat.partition_algebra.SetPartitionsAk\n      sage: obj = sage.combinat.partition_algebra.SetPartitionsAk\n      sage: sage_getfile(obj)\n      \'...sage/combinat/partition_algebra.py\'\n\n   And here is another bug, fixed in https://trac.sagemath.org/11298:\n\n      sage: P.<x,y> = QQ[]\n      sage: sage_getfile(P)\n      \'...sage/rings/polynomial/multi_polynomial_libsingular...\'\n\n   A problem fixed in https://trac.sagemath.org/16309:\n\n      sage: cython(\'\'\'\n      ....: class Bar: pass\n      ....: cdef class Foo: pass\n      ....: \'\'\')\n      sage: sage_getfile(Bar)\n      \'...pyx\'\n      sage: sage_getfile(Foo)\n      \'...pyx\'\n\n   By https://trac.sagemath.org/18249, we return an empty string for\n   Python builtins. In that way, there is no error when the user\n   types, for example, "range?":\n\n      sage: sage_getfile(range)\n      \'\'\n\n   AUTHORS:\n\n   * Nick Alexander\n\n   * Simon King\n'
> sage: sage_getsource(sage.misc.sageinspect.sage_getfile)[4:] ## line 93 ##
> 'sage_getfile(obj):\n    r"""\n    Get the full file name associated to ``obj`` as a string.\n\n    INPUT: ``obj``, a Sage object, module, etc.\n\n    EXAMPLES::\n\n        sage: from sage.misc.sageinspect import sage_getfile\n        sage: sage_getfile(sage.rings.rational)[-23:]\n        \'sage/rings/rational.pyx\'\n        sage: sage_getfile(Sq)[-42:]\n        \'sage/algebras/steenrod/steenrod_algebra.py\'\n\n    The following tests against some bugs fixed in :trac:`9976`::\n\n        sage: obj = sage.combinat.partition_algebra.SetPartitionsAk\n        sage: obj = sage.combinat.partition_algebra.SetPartitionsAk\n        sage: sage_getfile(obj)\n        \'...sage/combinat/partition_algebra.py\'\n\n    And here is another bug, fixed in :trac:`11298`::\n\n        sage: P.<x,y> = QQ[]\n        sage: sage_getfile(P)\n        \'...sage/rings/polynomial/multi_polynomial_libsingular...\'\n\n    A problem fixed in :trac:`16309`::\n\n        sage: cython(\'\'\'\n        ....: class Bar: pass\n        ....: cdef class Foo: pass\n        ....: \'\'\')\n        sage: sage_getfile(Bar)\n        \'...pyx\'\n        sage: sage_getfile(Foo)\n        \'...pyx\'\n\n    By :trac:`18249`, we return an empty string for Python builtins. In that\n    way, there is no error when the user types, for example, ``range?``::\n\n        sage: sage_getfile(range)\n        \'\'\n\n    AUTHORS:\n\n    - Nick Alexander\n    - Simon King\n    """\n    # We try to extract from docstrings, but not using Python\'s inspect\n    # because _sage_getdoc_unformatted is more robust.\n    d = _sage_getdoc_unformatted(obj)\n    pos = _extract_embedded_position(d)\n    if pos is not None:\n        (_, filename, _) = pos\n        return filename\n\n    # The instance case\n    if isclassinstance(obj):\n        if isinstance(obj, functools.partial):\n            return sage_getfile(obj.func)\n        return sage_getfile(obj.__class__) #inspect.getabsfile(obj.__class__)\n\n    # No go? fall back to inspect.\n    try:\n        sourcefile = inspect.getabsfile(obj)\n    except TypeError: # this happens for Python builtins\n        return \'\'\n    if sourcefile.endswith(loadable_module_extension()):\n        sourcefile = sourcefile[:-len(loadable_module_extension())]\n        # remove Debian\'s python multiarch extension module naming conventions\n        multiarchsuffix = "." + sysconfig.get_config_vars("MULTIARCH")[0]\n        if sourcefile.endswith(multiarchsuffix):\n            sourcefile = sourcefile[:-len(multiarchsuffix)]\n        return sourcefile+os.path.extsep+\'pyx\'\n    return sourcefile\n'
> sage: sage_getdef(''.find, 'find') ## line 99 ##
> 'find(*args, **kwds)'
> sage: sage_getdef(str.find, 'find') ## line 102 ##
> 'find(*args, **kwds)'
> sage: cython('def foo(unsigned int x=1, a=\')"\', b={not (2+1==3):\'bar\'}, *args, **kwds): return') ## line 108 ##
> sage: print(sage_getsource(foo)) ## line 109 ##
> def foo(unsigned int x=1, a=')"', b={not (2+1==3):'bar'}, *args, **kwds): return
> 
> sage: sage_getargspec(foo) ## line 111 ##
> ArgSpec(args=['x', 'a', 'b'], varargs='args', keywords='kwds', defaults=(1, ')"', {False: 'bar'}))
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 114 ##
> 0
> sage: from sage.misc.sageinspect import loadable_module_extension ## line 146 ##
> sage: sage.structure.sage_object.__file__.endswith(loadable_module_extension()) ## line 147 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 149 ##
> 0
> sage: from sage.misc.sageinspect import isclassinstance ## line 168 ##
> sage: isclassinstance(int) ## line 169 ##
> False
> sage: isclassinstance(FreeModule) ## line 171 ##
> True
> sage: class myclass: pass ## line 173 ##
> sage: isclassinstance(myclass) ## line 174 ##
> False
> sage: class mymetaclass(type): pass ## line 176 ##
> sage: class myclass2:
>     __metaclass__ = mymetaclass ## line 177 ##
> sage: isclassinstance(myclass2) ## line 179 ##
> False
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 181 ##
> 0
> sage: from sage.misc.sageinspect import _extract_embedded_position ## line 214 ##
> sage: import inspect ## line 215 ##
> sage: _extract_embedded_position(inspect.getdoc(var))[1][-21:] ## line 216 ##
> 'sage/calculus/var.pyx'
> sage: cython('''cpdef test_funct(x,y): return''') ## line 223 ##
> sage: func_doc = inspect.getdoc(test_funct) ## line 224 ##
> sage: with open(_extract_embedded_position(func_doc)[1]) as f:
>     print(f.read()) ## line 225 ##
> cpdef test_funct(x,y): return
> sage: from sage.env import DOT_SAGE ## line 233 ##
> sage: from sage.misc.sage_ostools import restore_cwd ## line 234 ##
> sage: with restore_cwd(DOT_SAGE):
>     cython('''cpdef test_funct(x,y): return''') ## line 235 ##
> sage: func_doc = inspect.getdoc(test_funct) ## line 237 ##
> sage: with open(_extract_embedded_position(func_doc)[1]) as f:
>     print(f.read()) ## line 238 ##
> cpdef test_funct(x,y): return
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 247 ##
> 0
> sage: from sage.misc.sageinspect import _extract_embedded_signature ## line 295 ##
> sage: from sage.misc.nested_class import MainClass ## line 296 ##
> sage: print(_extract_embedded_signature(MainClass.NestedClass.NestedSubClass.dummy.__doc__, 'dummy')[0]) ## line 297 ##
> File: sage/misc/nested_class.pyx (starting at line 354)
> 
>                 A dummy method to demonstrate the embedding of
>                 method signature for nested classes.
> 
>                 TESTS::
> 
>                     sage: from sage.misc.nested_class import MainClass
>                     sage: print(MainClass.NestedClass.NestedSubClass.dummy.__doc__)
>                     NestedSubClass.dummy(self, x, *args, r=(1, 2, 3.4), **kwds)
>                     File: sage/misc/nested_class.pyx (starting at line ...)
>                     <BLANKLINE>
>                                     A dummy method to demonstrate the embedding of
>                                     method signature for nested classes.
>                     ...
> 
>                 
> sage: _extract_embedded_signature(MainClass.NestedClass.NestedSubClass.dummy.__doc__, 'dummy')[1] ## line 300 ##
> ArgSpec(args=['self', 'x', 'r'], varargs='args', keywords='kwds', defaults=((1, 2, 3.4),))
> sage: _extract_embedded_signature(range.__call__.__doc__, '__call__')  # py3 ## line 304 ##
> ('Call self as a function.', None)
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 307 ##
> 0
> sage: from sage.misc.sageinspect import _extract_source ## line 408 ##
> sage: s2 = "#hello\n\n  class f():\n    pass\n\n#goodbye" ## line 409 ##
> sage: _extract_source(s2, 3) ## line 410 ##
> ['  class f():\n', '    pass\n']
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 412 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 437 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 438 ##
> sage: visitor.visit(ast.parse('[1,2,3]').body[0].value) ## line 439 ##
> [1, 2, 3]
> sage: v = visitor.visit(ast.parse("{'a':('e',2,[None,({False:True},'pi')]), 37.0:'temp'}").body[0].value) ## line 441 ##
> sage: sorted(v.items(), key=lambda x: str(x[0])) ## line 442 ##
> [(37.0, 'temp'), ('a', ('e', 2, [None, ({False: True}, 'pi')]))]
> sage: v = ast.parse("jc = ['veni', 'vidi', 'vici']").body[0]; v ## line 444 ##
> <_ast.Assign object at 0x7fad9e31d310>
> sage: [x for x in dir(v) if not x.startswith('__')] ## line 446 ##
> ['_attributes',
>  '_fields',
>  'col_offset',
>  'end_col_offset',
>  'end_lineno',
>  'lineno',
>  'targets',
>  'type_comment',
>  'value']
> sage: visitor.visit(v.targets[0]) ## line 448 ##
> 'jc'
> sage: visitor.visit(v.value) ## line 450 ##
> ['veni', 'vidi', 'vici']
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 452 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 467 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 468 ##
> sage: vis = lambda x: visitor.visit_Name(ast.parse(x).body[0].value) ## line 469 ##
> sage: [vis(n) for n in ['foo', 'bar']]  # py3 ## line 474 ##
> ['foo', 'bar']
> sage: [type(vis(n)) for n in ['foo', 'bar']]  # py3 ## line 476 ##
> [<class 'str'>, <class 'str'>]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 478 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms  # py3 ## line 507 ##
> sage: visitor = sms.SageArgSpecVisitor()  # py3 ## line 508 ##
> sage: vis = lambda x: visitor.visit_NameConstant(ast.parse(x).body[0].value)  # py3 ## line 509 ##
> sage: [vis(n) for n in ['True', 'False', 'None']]  # py3 ## line 510 ##
> [True, False, None]
> sage: [type(vis(n)) for n in ['True', 'False', 'None']]  # py3 ## line 512 ##
> [<class 'bool'>, <class 'bool'>, <class 'NoneType'>]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 514 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms  # py3 ## line 538 ##
> sage: s = "def f(a, b=2, c={'a': [4, 5.5, False]}, d=(None, True)):\n    return"  # py3 ## line 539 ##
> sage: visitor = sms.SageArgSpecVisitor()  # py3 ## line 540 ##
> sage: args = ast.parse(s).body[0].args.args  # py3 ## line 541 ##
> sage: [visitor.visit_arg(n) for n in args]  # py3 ## line 542 ##
> ['a', 'b', 'c', 'd']
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 544 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 561 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 562 ##
> sage: vis = lambda x: visitor.visit_Num(ast.parse(x).body[0].value) ## line 563 ##
> sage: [vis(n) for n in ['123', '0.0']]  # py3 ## line 566 ##
> [123, 0.0]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 573 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 590 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 591 ##
> sage: vis = lambda x: visitor.visit_Str(ast.parse(x).body[0].value) ## line 592 ##
> sage: [vis(s) for s in ['"abstract"', "u'syntax'", r'''r"tr\ee"''']] ## line 593 ##
> ['abstract', 'syntax', 'tr\\ee']
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 595 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 612 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 613 ##
> sage: vis = lambda x: visitor.visit_List(ast.parse(x).body[0].value) ## line 614 ##
> sage: [vis(l) for l in ['[]', "['s', 't', 'u']", '[[e], [], [pi]]']] ## line 615 ##
> [[], ['s', 't', 'u'], [['e'], [], ['pi']]]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 617 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 637 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 638 ##
> sage: vis = lambda x: visitor.visit_Tuple(ast.parse(x).body[0].value) ## line 639 ##
> sage: [vis(t) for t in ['()', '(x,y)', '("Au", "Al", "Cu")']] ## line 640 ##
> [(), ('x', 'y'), ('Au', 'Al', 'Cu')]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 642 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 662 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 663 ##
> sage: vis = lambda x: visitor.visit_Dict(ast.parse(x).body[0].value) ## line 664 ##
> sage: v = [vis(d) for d in ['{}', "{1:one, 'two':2, other:bother}"]] ## line 665 ##
> sage: [sorted(d.items(), key=lambda x: str(x[0])) for d in v] ## line 666 ##
> [[], [(1, 'one'), ('other', 'bother'), ('two', 2)]]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 668 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 692 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 693 ##
> sage: vis = lambda x: visitor.visit(ast.parse(x).body[0].value) ## line 694 ##
> sage: [vis(d) for d in ['True and 1', 'False or 3 or None', '3 and 4']] #indirect doctest ## line 695 ##
> [1, 3, 4]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 698 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 731 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 732 ##
> sage: vis = lambda x: visitor.visit_Compare(ast.parse(x).body[0].value) ## line 733 ##
> sage: [vis(d) for d in ['1<2==2!=3', '1==1>2', '1<2>1', '1<3<2<4']] ## line 734 ##
> [True, False, True, False]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 737 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 783 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 784 ##
> sage: vis = lambda x: visitor.visit(ast.parse(x).body[0].value) ## line 785 ##
> sage: [vis(d) for d in ['(3+(2*4))', '7|8', '5^3', '7/3', '7//3', '3<<4']] #indirect doctest # py3 ## line 788 ##
> [11, 15, 6, 2.3333333333333335, 2, 48]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 790 ##
> 0
> sage: import ast, sage.misc.sageinspect as sms ## line 855 ##
> sage: visitor = sms.SageArgSpecVisitor() ## line 856 ##
> sage: vis = lambda x: visitor.visit_UnaryOp(ast.parse(x).body[0].value) ## line 857 ##
> sage: [vis(d) for d in ['+(3*2)', '-(3*2)']] ## line 858 ##
> [6, -6]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 861 ##
> 0
> sage: from sage.misc.sageinspect import _grep_first_pair_of_parentheses ## line 890 ##
> sage: code = 'def foo(a="\'):", b=4):\n    return' ## line 891 ##
> sage: _grep_first_pair_of_parentheses(code) ## line 892 ##
> '(a="\'):", b=4)'
> sage: code = 'def foo(a="%s):", \'b=4):\n    return'%("'") ## line 894 ##
> sage: _grep_first_pair_of_parentheses(code) ## line 895 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 900 ##
> 0
> sage: from sage.misc.sageinspect import _split_syntactical_unit ## line 945 ##
> sage: s = "(Hel) lo_1=[)\"!\" ] '''? {world} '''?" ## line 946 ##
> sage: while s:
>     u, s = _split_syntactical_unit(s)
>     print(u) ## line 947 ##
> (Hel)
> lo_1
> =
> [)"!"]
> '''? {world} '''
> ?
> sage: s = "'''({SAGE}]" ## line 960 ##
> sage: _split_syntactical_unit(s) ## line 961 ##
> sage: s = "({SAGE}]" ## line 965 ##
> sage: _split_syntactical_unit(s) ## line 966 ##
> sage: _split_syntactical_unit('123') ## line 973 ##
> ('1', '23')
> sage: _split_syntactical_unit('()): pass') ## line 980 ##
> ('()', '): pass')
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 983 ##
> 0
> sage: import warnings ## line 1083 ##
> sage: warnings.filterwarnings('ignore',
>                         r'inspect.getargspec\(\) is deprecated',
>                         DeprecationWarning) ## line 1084 ##
> sage: import inspect, sage.misc.sageinspect as sms ## line 1087 ##
> sage: from_ast = sms._sage_getargspec_from_ast ## line 1088 ##
> sage: s = "def f(a, b=2, c={'a': [4, 5.5, False]}, d=(None, True)):\n    return" ## line 1089 ##
> sage: from_ast(s) ## line 1090 ##
> ArgSpec(args=['a', 'b', 'c', 'd'], varargs=None, keywords=None, defaults=(2, {'a': [4, 5.5, False]}, (None, True)))
> sage: context = {} ## line 1092 ##
> sage: exec(compile(s, '<string>', 'single'), context)  # py3 ## line 1094 ##
> sage: inspect.getargspec(context['f']) ## line 1095 ##
> ArgSpec(args=['a', 'b', 'c', 'd'], varargs=None, keywords=None, defaults=(2, {'a': [4, 5.5, False]}, (None, True)))
> sage: from_ast(s) == inspect.getargspec(context['f']) ## line 1097 ##
> True
> sage: set(from_ast(sms.sage_getsource(x)) == inspect.getargspec(x) for x in [factor, identity_matrix, Graph.__init__]) ## line 1099 ##
> {True}
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1101 ##
> 0
> sage: from sage.misc.sageinspect import _sage_getargspec_cython as sgc ## line 1137 ##
> sage: sgc("cpdef double abc(self, Element x=None, Parent base=0):") ## line 1138 ##
> ArgSpec(args=['self', 'x', 'base'], varargs=None, keywords=None, defaults=(None, 0))
> sage: sgc("def __init__(self, x=None, unsigned int base=0):") ## line 1140 ##
> ArgSpec(args=['self', 'x', 'base'], varargs=None, keywords=None, defaults=(None, 0))
> sage: sgc('def o(p, r={}, *q, **s) except? -1:') ## line 1142 ##
> ArgSpec(args=['p', 'r'], varargs='q', keywords='s', defaults=({},))
> sage: sgc('cpdef how(r=(None, "u:doing?")):') ## line 1144 ##
> ArgSpec(args=['r'], varargs=None, keywords=None, defaults=((None, 'u:doing?'),))
> sage: sgc('def _(x="):"):') ## line 1146 ##
> ArgSpec(args=['x'], varargs=None, keywords=None, defaults=('):',))
> sage: sgc('def f(z = {(1, 2, 3): True}):\n    return z') ## line 1148 ##
> ArgSpec(args=['z'], varargs=None, keywords=None, defaults=({(1, 2, 3): True},))
> sage: sgc('def f(double x, z = {(1, 2, 3): True}):\n    return z') ## line 1150 ##
> ArgSpec(args=['x', 'z'], varargs=None, keywords=None, defaults=({(1, 2, 3): True},))
> sage: sgc('def f(*args): pass') ## line 1152 ##
> ArgSpec(args=[], varargs='args', keywords=None, defaults=None)
> sage: sgc('def f(**args): pass') ## line 1154 ##
> ArgSpec(args=[], varargs=None, keywords='args', defaults=None)
> sage: sgc('def f(x,y') ## line 1159 ##
> sage: sgc('def f(*x = 5, z = {(1,2,3): True}): pass') ## line 1163 ##
> sage: sgc('def f(int *x = 5, z = {(1,2,3): True}): pass') ## line 1167 ##
> sage: sgc('def f(x = , z = {(1,2,3): True}): pass') ## line 1171 ##
> sage: sgc('def f(int x = 5, , z = {(1,2,3): True}): pass') ## line 1175 ##
> sage: def dummy_python(self, *args, x=1): pass  # py3 ## line 1189 ##
> sage: sgc("def dummy_python(self, *args, x=1): pass")  # py3 ## line 1190 ##
> ArgSpec(args=['self', 'x'], varargs='args', keywords=None, defaults=(1,))
> sage: cython("def dummy_cython(self, *args, x=1): pass") ## line 1192 ##
> sage: sgc("def dummy_cython(self, *args, x=1): pass") ## line 1193 ##
> ArgSpec(args=['self', 'x'], varargs='args', keywords=None, defaults=(1,))
> sage: sgc('def f(char *x = "a string", z = {(1,2,3): True}): pass') ## line 1200 ##
> ArgSpec(args=['x', 'z'], varargs=None, keywords=None, defaults=('a string', {(1, 2, 3): True}))
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1210 ##
> 0
> sage: from sage.misc.sageinspect import sage_getfile ## line 1336 ##
> sage: sage_getfile(sage.rings.rational)[-23:] ## line 1337 ##
> 'sage/rings/rational.pyx'
> sage: sage_getfile(Sq)[-42:] ## line 1339 ##
> 'sage/algebras/steenrod/steenrod_algebra.py'
> sage: obj = sage.combinat.partition_algebra.SetPartitionsAk ## line 1344 ##
> sage: obj = sage.combinat.partition_algebra.SetPartitionsAk ## line 1345 ##
> sage: sage_getfile(obj) ## line 1346 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/combinat/partition_algebra.py'
> sage: P.<x,y> = QQ[] ## line 1351 ##
> sage: sage_getfile(P) ## line 1352 ##
> '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/polynomial/multi_polynomial_libsingular.pyx'
> sage: cython('''
> class Bar: pass
> cdef class Foo: pass
> ''') ## line 1357 ##
> sage: sage_getfile(Bar) ## line 1361 ##
> '/<<PKGBUILDDIR>>/debian/test/temp/ip-172-31-7-91/2977/spyx/_build_sagemath_9swLkT_sagemath_9_0_debian_test_temp_ip_172_31_7_91_2977_tmp_x5d5xu7z_pyx/_build_sagemath_9swLkT_sagemath_9_0_debian_test_temp_ip_172_31_7_91_2977_tmp_x5d5xu7z_pyx_0.pyx'
> sage: sage_getfile(Foo) ## line 1363 ##
> '/<<PKGBUILDDIR>>/debian/test/temp/ip-172-31-7-91/2977/spyx/_build_sagemath_9swLkT_sagemath_9_0_debian_test_temp_ip_172_31_7_91_2977_tmp_x5d5xu7z_pyx/_build_sagemath_9swLkT_sagemath_9_0_debian_test_temp_ip_172_31_7_91_2977_tmp_x5d5xu7z_pyx_0.pyx'
> sage: sage_getfile(range) ## line 1369 ##
> ''
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1376 ##
> 0
> sage: from sage.misc.sageinspect import sage_getargspec ## line 1437 ##
> sage: def f(x, y, z=1, t=2, *args, **keywords):
>     pass ## line 1438 ##
> sage: sage_getargspec(f) ## line 1440 ##
> ArgSpec(args=['x', 'y', 'z', 't'], varargs='args', keywords='keywords', defaults=(1, 2))
> sage: sage_getargspec(identity_matrix) ## line 1445 ##
> ArgSpec(args=['ring', 'n', 'sparse'], varargs=None, keywords=None, defaults=(0, False))
> sage: sage_getargspec(factor) ## line 1447 ##
> ArgSpec(args=['n', 'proof', 'int_', 'algorithm', 'verbose'], varargs=None, keywords='kwds', defaults=(None, False, 'pari', 0))
> sage: P.<x,y> = QQ[] ## line 1453 ##
> sage: sage_getargspec(P) ## line 1454 ##
> ArgSpec(args=['base_ring', 'n', 'names', 'order'], varargs=None, keywords=None, defaults=('degrevlex',))
> sage: sage_getargspec(P.__class__) ## line 1456 ##
> ArgSpec(args=['self', 'x'], varargs='args', keywords='kwds', defaults=(0,))
> sage: from sage.rings.polynomial.real_roots import bernstein_polynomial_factory_ratlist ## line 1462 ##
> sage: sage_getargspec(bernstein_polynomial_factory_ratlist.coeffs_bitsize) ## line 1463 ##
> ArgSpec(args=['self'], varargs=None, keywords=None, defaults=None)
> sage: from sage.rings.polynomial.pbori import BooleanMonomialMonoid ## line 1465 ##
> sage: sage_getargspec(BooleanMonomialMonoid.gen) ## line 1466 ##
> ArgSpec(args=['self', 'i'], varargs=None, keywords=None, defaults=(0,))
> sage: I = P*[x,y] ## line 1468 ##
> sage: sage_getargspec(I.groebner_basis) ## line 1469 ##
> ArgSpec(args=['self', 'algorithm', 'deg_bound', 'mult_bound', 'prot'], varargs='args', keywords='kwds', defaults=('', None, None, False))
> sage: cython("cpdef int foo(x,y) except -1: return 1") ## line 1472 ##
> sage: sage_getargspec(foo) ## line 1473 ##
> ArgSpec(args=['x', 'y'], varargs=None, keywords=None, defaults=None)
> sage: def f(a,b,c,d=1):
>     return a+b+c+d ## line 1479 ##
> sage: import functools ## line 1481 ##
> sage: f1 = functools.partial(f, 1,c=2) ## line 1482 ##
> sage: sage_getargspec(f1) ## line 1483 ##
> ArgSpec(args=['a', 'b', 'c', 'd'], varargs=None, keywords=None, defaults=(1,))
> sage: cython_code = [
> 'cdef class MyClass:',
> '    def _sage_src_(self):',
> '        return "def foo(x, a=\\\')\\\"\\\', b={(2+1):\\\'bar\\\', not 1:3, 3<<4:5}): return\\n"',
> '    def __call__(self, m,n): return "something"'] ## line 1500 ##
> sage: cython('\n'.join(cython_code)) ## line 1505 ##
> sage: O = MyClass() ## line 1506 ##
> sage: print(sage.misc.sageinspect.sage_getsource(O)) ## line 1507 ##
> def foo(x, a=')"', b={(2+1):'bar', not 1:3, 3<<4:5}): return
> 
> sage: spec = sage.misc.sageinspect.sage_getargspec(O) ## line 1509 ##
> sage: spec.args, spec.varargs, spec.keywords ## line 1510 ##
> (['x', 'a', 'b'], None, None)
> sage: spec.defaults[0] ## line 1512 ##
> ')"'
> sage: sorted(spec.defaults[1].items(), key=lambda x: str(x)) ## line 1514 ##
> [(3, 'bar'), (48, 5), (False, 3)]
> sage: sage.misc.sageinspect.sage_getargspec(O.__call__) ## line 1516 ##
> ArgSpec(args=['self', 'm', 'n'], varargs=None, keywords=None, defaults=None)
> sage: cython('def foo(x, a=\'\\\')"\', b={not (2+1==3):\'bar\'}): return') ## line 1521 ##
> sage: print(sage.misc.sageinspect.sage_getsource(foo)) ## line 1522 ##
> def foo(x, a='\')"', b={not (2+1==3):'bar'}): return
> 
> sage: sage.misc.sageinspect.sage_getargspec(foo) ## line 1525 ##
> ArgSpec(args=['x', 'a', 'b'], varargs=None, keywords=None, defaults=('\')"', {False: 'bar'}))
> sage: sage.misc.sageinspect.sage_getargspec(r.lm) ## line 1531 ##
> ArgSpec(args=['self'], varargs='args', keywords='kwds', defaults=None)
> sage: cython('''
> class Foo:
>     @staticmethod
>     def join(categories, bint as_list = False, tuple ignore_axioms=(), tuple axioms=()): pass
> cdef class Bar:
>     @staticmethod
>     def join(categories, bint as_list = False, tuple ignore_axioms=(), tuple axioms=()): pass
>     cpdef meet(categories, bint as_list = False, tuple ignore_axioms=(), tuple axioms=()): pass
> ''') ## line 1536 ##
> sage: sage_getargspec(Foo.join) ## line 1545 ##
> ArgSpec(args=['categories', 'as_list', 'ignore_axioms', 'axioms'], varargs=None, keywords=None, defaults=(False, (), ()))
> sage: sage_getargspec(Bar.join) ## line 1547 ##
> ArgSpec(args=['categories', 'as_list', 'ignore_axioms', 'axioms'], varargs=None, keywords=None, defaults=(False, (), ()))
> sage: sage_getargspec(Bar.meet) ## line 1549 ##
> ArgSpec(args=['categories', 'as_list', 'ignore_axioms', 'axioms'], varargs=None, keywords=None, defaults=(False, (), ()))
> sage: sage_getargspec(gap) ## line 1554 ##
> ArgSpec(args=['self', 'x', 'name'], varargs=None, keywords=None, defaults=(None,))
> sage: from sage.misc.nested_class import MainClass ## line 1560 ##
> sage: sage_getargspec(MainClass.NestedClass.NestedSubClass.dummy) ## line 1561 ##
> ArgSpec(args=['self', 'x', 'r'], varargs='args', keywords='kwds', defaults=((1, 2, 3.4),))
> sage: import inspect ## line 1568 ##
> sage: sage_getargspec(range) ## line 1573 ##
> ArgSpec(args=[], varargs='args', keywords='kwds', defaults=None)
> sage: from sage.repl.interpreter import get_test_shell ## line 1578 ##
> sage: shell = get_test_shell() ## line 1579 ##
> sage: shell.run_cell(
>     'class Foo:\n'
>     '    def __call__(self):\n'
>     '        return None\n'
>     '    def _sage_src_(self):\n'
>     '        return "the source code string"') ## line 1580 ##
> sage: shell.run_cell('f = Foo()') ## line 1586 ##
> sage: shell.run_cell('f??') ## line 1587 ##
> Signature:      f()
> Type:           Foo
> String form:    <__main__.Foo object at 0x7fad9abd6ca0>
> File:           
> Source:         the source code string
> Init docstring: Initialize self.  See help(type(self)) for accurate signature.
> 
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1596 ##
> 0
> sage: from sage.misc.sageinspect import formatannotation ## line 1698 ##
> sage: import inspect ## line 1699 ##
> sage: def foo(a, *, b:int, **kwargs): # py3
>     pass ## line 1700 ##
> sage: s = inspect.signature(foo) # py3 ## line 1703 ##
> sage: a = s.parameters['a'].annotation # py3 ## line 1705 ##
> sage: a # py3 ## line 1706 ##
> <class 'inspect._empty'>
> sage: formatannotation(a) # py3 ## line 1708 ##
> 'inspect._empty'
> sage: b = s.parameters['b'].annotation # py3 ## line 1711 ##
> sage: b # py3 ## line 1712 ##
> <class 'int'>
> sage: formatannotation(b) # py3 ## line 1714 ##
> 'int'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1716 ##
> 0
> sage: from sage.misc.sageinspect import sage_formatargspec ## line 1755 ##
> sage: from inspect import formatargspec # deprecated in Python 3 ## line 1756 ##
> sage: args = ['a', 'b', 'c'] ## line 1757 ##
> sage: defaults = [3] ## line 1758 ##
> sage: sage_formatargspec(args, defaults=defaults) ## line 1759 ##
> '(a, b, c=3)'
> sage: formatargspec(args, defaults=defaults) == sage_formatargspec(args, defaults=defaults) # py3 ## line 1763 ##
> doctest:warning
>   File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>     err = DC.run()
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>     self.run_doctests()
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>     self.dispatcher.dispatch()
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>     self.parallel_dispatch()
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>     w.start()  # This might take some time
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>     super(DocTestWorker, self).start()
>   File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>     self._popen = self._Popen(self)
>   File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>     return _default_context.get_context().Process._Popen(process_obj)
>   File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>     return Popen(process_obj)
>   File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>     self._launch(process_obj)
>   File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>     code = process_obj._bootstrap(parent_sentinel=child_r)
>   File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>     self.run()
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>     task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>     doctests, extras = self._run(runner, options, results)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>     result = runner.run(test)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>     return self._run(test, compileflags, out)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>     self.compile_and_execute(example, compiler, test.globs)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>     exec(compiled, globs)
>   File "<doctest sage.misc.sageinspect.?[5]>", line 1, in <module>
>     formatargspec(args, defaults=defaults) == sage_formatargspec(args, defaults=defaults) # py3
>   File "/usr/lib/python3.8/inspect.py", line 1232, in formatargspec
>     warn("`formatargspec` is deprecated since Python 3.5. Use `signature` and "
>   File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>     sw(msg.message, msg.category, msg.filename, msg.lineno,
> :
> DeprecationWarning: `formatargspec` is deprecated since Python 3.5. Use `signature` and the `Signature` object directly
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1766 ##
> 0
> sage: from sage.misc.sageinspect import sage_getdef ## line 1812 ##
> sage: sage_getdef(identity_matrix) ## line 1813 ##
> '(ring, n=0, sparse=False)'
> sage: sage_getdef(identity_matrix, 'identity_matrix') ## line 1815 ##
> 'identity_matrix(ring, n=0, sparse=False)'
> sage: sage_getdef(RDF.random_element) ## line 1820 ##
> '(min=-1, max=1)'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1830 ##
> 0
> sage: from sage.misc.sageinspect import _sage_getdoc_unformatted ## line 1883 ##
> sage: print(_sage_getdoc_unformatted(sage.rings.integer.Integer)) ## line 1884 ##
> Integer(x=None, base=0)
> File: sage/rings/integer.pyx (starting at line 438)
> 
>     The ``Integer`` class represents arbitrary precision
>     integers. It derives from the ``Element`` class, so
>     integers can be used as ring elements anywhere in Sage.
> 
>     Integer() interprets strings that begin with ``0o`` as octal numbers,
>     strings that begin with ``0x`` as hexadecimal numbers and strings
>     that begin with ``0b`` as binary numbers.
> 
>     The class ``Integer`` is implemented in Cython, as a wrapper of the
>     GMP ``mpz_t`` integer type.
> 
>     EXAMPLES::
> 
>         sage: Integer(123)
>         123
>         sage: Integer("123")
>         123
> 
>     Sage Integers support :pep:`3127` literals::
> 
>         sage: Integer('0x12')
>         18
>         sage: Integer('-0o12')
>         -10
>         sage: Integer('+0b101010')
>         42
> 
>     Conversion from PARI::
> 
>         sage: Integer(pari('-10380104371593008048799446356441519384'))
>         -10380104371593008048799446356441519384
>         sage: Integer(pari('Pol([-3])'))
>         -3
> 
>     Conversion from gmpy2::
> 
>         sage: from gmpy2 import mpz
>         sage: Integer(mpz(3))
>         3
> 
>     .. automethod:: __pow__
>     
> sage: from sage.misc.sageinspect import _sage_getdoc_unformatted ## line 1897 ##
> sage: _sage_getdoc_unformatted(isinstance.__class__) ## line 1898 ##
> ''
> sage: class NoSageDoc(object):
>     @property
>     def __doc__(self):
>         raise Exception("no doc here") ## line 1905 ##
> sage: obj = NoSageDoc() ## line 1909 ##
> sage: obj.__doc__ ## line 1910 ##
> sage: _sage_getdoc_unformatted(obj) ## line 1914 ##
> ''
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1921 ##
> 0
> sage: from sage.misc.sageinspect import sage_getdoc_original ## line 1957 ##
> sage: print(sage_getdoc_original(sage.rings.integer.Integer)) ## line 1961 ##
> 
>     The ``Integer`` class represents arbitrary precision
>     integers. It derives from the ``Element`` class, so
>     integers can be used as ring elements anywhere in Sage.
> 
>     Integer() interprets strings that begin with ``0o`` as octal numbers,
>     strings that begin with ``0x`` as hexadecimal numbers and strings
>     that begin with ``0b`` as binary numbers.
> 
>     The class ``Integer`` is implemented in Cython, as a wrapper of the
>     GMP ``mpz_t`` integer type.
> 
>     EXAMPLES::
> 
>         sage: Integer(123)
>         123
>         sage: Integer("123")
>         123
> 
>     Sage Integers support :pep:`3127` literals::
> 
>         sage: Integer('0x12')
>         18
>         sage: Integer('-0o12')
>         -10
>         sage: Integer('+0b101010')
>         42
> 
>     Conversion from PARI::
> 
>         sage: Integer(pari('-10380104371593008048799446356441519384'))
>         -10380104371593008048799446356441519384
>         sage: Integer(pari('Pol([-3])'))
>         -3
> 
>     Conversion from gmpy2::
> 
>         sage: from gmpy2 import mpz
>         sage: Integer(mpz(3))
>         3
> 
>     .. automethod:: __pow__
>     
> sage: from sage.categories.category import Category ## line 1972 ##
> sage: class A(Category):
>     def __init__(self):
>         '''The __init__ docstring''' ## line 1973 ##
> sage: sage_getdoc_original(A) ## line 1976 ##
> 'The __init__ docstring'
> sage: class B(Category):
>     pass ## line 1978 ##
> sage: sage_getdoc_original(B) ## line 1980 ##
> ''
> sage: class OldStyleClass:
>     def __init__(self):
>         '''The __init__ docstring'''
>         pass ## line 1985 ##
> sage: print(sage_getdoc_original(OldStyleClass)) ## line 1989 ##
> The __init__ docstring
> sage: class OldStyleClass:
>     pass ## line 1994 ##
> sage: sage_getdoc_original(OldStyleClass) ## line 1996 ##
> ''
> sage: sage_getdoc_original(sage.plot.colors.aliceblue) == sage_getdoc_original(sage.plot.colors.Color) ## line 2002 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 2005 ##
> 0
> sage: from sage.misc.sageinspect import sage_getdoc ## line 2046 ##
> sage: sage_getdoc(identity_matrix)[87:124] ## line 2047 ##
> 'Return the n x n identity matrix over'
> sage: def f(a,b,c,d=1): return a+b+c+d ## line 2049 ##
> sage: import functools ## line 2051 ##
> sage: f1 = functools.partial(f, 1,c=2) ## line 2052 ##
> sage: f.__doc__ = "original documentation" ## line 2053 ##
> sage: f1.__doc__ = "specialised documentation" ## line 2054 ##
> sage: sage_getdoc(f) ## line 2055 ##
> 'original documentation\n'
> sage: sage_getdoc(f1) ## line 2057 ##
> 'specialised documentation\n'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 2064 ##
> 0
> sage: from sage.misc.sageinspect import sage_getsource ## line 2090 ##
> sage: sage_getsource(identity_matrix)[19:60] ## line 2091 ##
> 'identity_matrix(ring, n=0, sparse=False):'
> sage: sage_getsource(identity_matrix)[19:60] ## line 2093 ##
> 'identity_matrix(ring, n=0, sparse=False):'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 2100 ##
> 0
> sage: C = Rings() ## line 2126 ##
> sage: from sage.misc.sageinspect import sage_getsource ## line 2127 ##
> sage: print(sage_getsource(C.parent_class))  #indirect doctest ## line 2128 ##
>     class ParentMethods:
>         def is_ring(self):
>             """
>             Return True, since this in an object of the category of rings.
> 
>             EXAMPLES::
> 
>                 sage: Parent(QQ,category=Rings()).is_ring()
>                 True
>             """
>             return True
> 
>         def is_zero(self):
>             """
>             Return ``True`` if this is the zero ring.
> 
>             EXAMPLES::
> 
>                 sage: Integers(1).is_zero()
>                 True
>                 sage: Integers(2).is_zero()
>                 False
>                 sage: QQ.is_zero()
>                 False
>                 sage: R.<x> = ZZ[]
>                 sage: R.quo(1).is_zero()
>                 True
>                 sage: R.<x> = GF(101)[]
>                 sage: R.quo(77).is_zero()
>                 True
>                 sage: R.quo(x^2+1).is_zero()
>                 False
>             """
>             return self.one() == self.zero()
> 
>         def bracket(self, x, y):
>             """
>             Returns the Lie bracket `[x, y] = x y - y x` of `x` and `y`.
> 
>             INPUT:
> 
>              - ``x``, ``y`` -- elements of ``self``
> 
>             EXAMPLES::
> 
>                 sage: F = AlgebrasWithBasis(QQ).example()
>                 sage: F
>                 An example of an algebra with basis: the free algebra on the generators ('a', 'b', 'c') over Rational Field
>                 sage: a,b,c = F.algebra_generators()
>                 sage: F.bracket(a,b)
>                 B[word: ab] - B[word: ba]
> 
>             This measures the default of commutation between `x` and `y`.
>             `F` endowed with the bracket operation is a Lie algebra;
>             in particular, it satisfies Jacobi's identity::
> 
>                 sage: F.bracket( F.bracket(a,b), c) + F.bracket(F.bracket(b,c),a) + F.bracket(F.bracket(c,a),b)
>                 0
>             """
>             return x*y - y*x
> 
>         def _Hom_(self, Y, category):
>             r"""
>             Returns the homset from ``self`` to ``Y`` in the category ``category``
> 
>             INPUT:
> 
>             - ``Y`` -- a ring
>             - ``category`` -- a subcategory of :class:`Rings`() or None
> 
>             The sole purpose of this method is to construct the homset
>             as a :class:`~sage.rings.homset.RingHomset`. If
>             ``category`` is specified and is not a subcategory of
>             :class:`Rings`, a ``TypeError`` is raised instead
> 
>             This method is not meant to be called directly. Please use
>             :func:`sage.categories.homset.Hom` instead.
> 
>             EXAMPLES::
> 
>                 sage: H = QQ._Hom_(QQ, category = Rings()); H
>                 Set of Homomorphisms from Rational Field to Rational Field
>                 sage: H.__class__
>                 <class 'sage.rings.homset.RingHomset_generic_with_category'>
> 
>             TESTS::
> 
>                 sage: Hom(QQ, QQ, category = Rings()).__class__
>                 <class 'sage.rings.homset.RingHomset_generic_with_category'>
> 
>                 sage: Hom(CyclotomicField(3), QQ, category = Rings()).__class__
>                 <class 'sage.rings.number_field.morphism.CyclotomicFieldHomset_with_category'>
> 
>                 sage: TestSuite(Hom(QQ, QQ, category = Rings())).run() # indirect doctest
> 
>             """
>             if category is not None and not category.is_subcategory(Rings()):
>                 raise TypeError("%s is not a subcategory of Rings()"%category)
>             if Y not in Rings():
>                 raise TypeError("%s is not a ring"%Y)
>             from sage.rings.homset import RingHomset
>             return RingHomset(self, Y, category = category)
> 
>         # this is already in sage.rings.ring.Ring,
>         # but not all rings descend from that class,
>         # e.g., matrix spaces.
>         def _mul_(self, x, switch_sides=False):
>             """
>             Multiplication of rings with, e.g., lists.
> 
>             NOTE:
> 
>             This method is used to create ideals. It is
>             the same as the multiplication method for
>             :class:`~sage.rings.ring.Ring`. However, not
>             all parents that belong to the category of
>             rings also inherits from the base class of
>             rings. Therefore, we implemented a ``__mul__``
>             method for parents, that calls a ``_mul_``
>             method implemented here. See :trac:`7797`.
> 
>             INPUT:
> 
>             - `x`, an object to multiply with.
>             - `switch_sides` (optional bool): If ``False``,
>               the product is ``self*x``; if ``True``, the
>               product is ``x*self``.
> 
>             EXAMPLES:
> 
>             As we mentioned above, this method is called
>             when a ring is involved that does not inherit
>             from the base class of rings. This is the case,
>             e.g., for matrix algebras::
> 
>                 sage: MS = MatrixSpace(QQ,2,2)
>                 sage: isinstance(MS,Ring)
>                 False
>                 sage: MS in Rings()
>                 True
>                 sage: MS*2     # indirect doctest
>                 Left Ideal
>                 (
>                   [2 0]
>                   [0 2]
>                 )
>                  of Full MatrixSpace of 2 by 2 dense matrices over Rational Field
> 
>             In the next example, the ring and the other factor switch sides
>             in the product::
> 
>                 sage: [MS.2]*MS
>                 Right Ideal
>                 (
>                   [0 0]
>                   [1 0]
>                 )
>                  of Full MatrixSpace of 2 by 2 dense matrices over Rational Field
> 
>             AUTHOR:
> 
>             - Simon King (2011-03-22)
> 
>             """
>             try:
>                 if self.is_commutative():
>                     return self.ideal(x)
>             except (AttributeError,NotImplementedError):
>                 pass
>             try:
>                 side = x.side()
>             except AttributeError:
>                 return self.ideal(x, side='right' if switch_sides else 'left')
>             # presumably x is an ideal...
>             try:
>                 x = x.gens()
>             except (AttributeError, NotImplementedError):
>                 pass # ... not an ideal
>             if switch_sides:
>                 if side in ['right','twosided']:
>                     return self.ideal(x,side=side)
>                 elif side=='left':
>                     return self.ideal(x,side='twosided')
>             else:
>                 if side in ['left','twosided']:
>                     return self.ideal(x,side=side)
>                 elif side=='right':
>                     return self.ideal(x,side='twosided')
>             # duck typing failed
>             raise TypeError("Don't know how to transform %s into an ideal of %s"%(x,self))
> 
>         @cached_method
>         def ideal_monoid(self):
>             """
>             The monoid of the ideals of this ring.
> 
>             NOTE:
> 
>             The code is copied from the base class of rings.
>             This is since there are rings that do not inherit
>             from that class, such as matrix algebras.  See
>             :trac:`7797`.
> 
>             EXAMPLES::
> 
>                 sage: MS = MatrixSpace(QQ,2,2)
>                 sage: isinstance(MS,Ring)
>                 False
>                 sage: MS in Rings()
>                 True
>                 sage: MS.ideal_monoid()
>                 Monoid of ideals of Full MatrixSpace of 2 by 2 dense matrices
>                 over Rational Field
> 
>             Note that the monoid is cached::
> 
>                 sage: MS.ideal_monoid() is MS.ideal_monoid()
>                 True
> 
>             """
>             try:
>                 from sage.rings.ideal_monoid import IdealMonoid
>                 return IdealMonoid(self)
>             except TypeError:
>                 from sage.rings.noncommutative_ideals import IdealMonoid_nc
>                 return IdealMonoid_nc(self)
> 
>         def characteristic(self):
>             """
>             Return the characteristic of this ring.
> 
>             EXAMPLES::
> 
>                 sage: QQ.characteristic()
>                 0
>                 sage: GF(19).characteristic()
>                 19
>                 sage: Integers(8).characteristic()
>                 8
>                 sage: Zp(5).characteristic()
>                 0
>             """
>             from sage.rings.infinity import infinity
>             from sage.rings.integer_ring import ZZ
>             order_1 = self.one().additive_order()
>             return ZZ.zero() if order_1 is infinity else order_1
> 
>         def _test_characteristic(self, **options):
>             """
>             Run generic tests on the method :meth:`characteristic`.
> 
>             See also: :class:`TestSuite`.
> 
>             EXAMPLES::
> 
>                 sage: ZZ._test_characteristic()
>             """
>             tester = self._tester(**options)
>             try:
>                 characteristic = self.characteristic()
>             except AttributeError:
>                 return # raised when self.one() does not have a additive_order()
>             except NotImplementedError:
>                 return
> 
>             # test that #12988 is fixed
>             from sage.rings.integer import Integer
>             tester.assertIsInstance(characteristic, Integer)
> 
>         def ideal(self, *args, **kwds):
>             """
>             Create an ideal of this ring.
> 
>             NOTE:
> 
>             The code is copied from the base class
>             :class:`~sage.rings.ring.Ring`. This is
>             because there are rings that do not inherit
>             from that class, such as matrix algebras.
>             See :trac:`7797`.
> 
>             INPUT:
> 
>             - An element or a list/tuple/sequence of elements.
>             - ``coerce`` (optional bool, default ``True``):
>               First coerce the elements into this ring.
>             - ``side``, optional string, one of ``"twosided"``
>               (default), ``"left"``, ``"right"``: determines
>               whether the resulting ideal is twosided, a left
>               ideal or a right ideal.
> 
>             EXAMPLES::
> 
>                 sage: MS = MatrixSpace(QQ,2,2)
>                 sage: isinstance(MS,Ring)
>                 False
>                 sage: MS in Rings()
>                 True
>                 sage: MS.ideal(2)
>                 Twosided Ideal
>                 (
>                   [2 0]
>                   [0 2]
>                 )
>                  of Full MatrixSpace of 2 by 2 dense matrices over Rational Field
>                 sage: MS.ideal([MS.0,MS.1],side='right')
>                 Right Ideal
>                 (
>                   [1 0]
>                   [0 0],
>                 <BLANKLINE>
>                   [0 1]
>                   [0 0]
>                 )
>                  of Full MatrixSpace of 2 by 2 dense matrices over Rational Field
> 
>             """
>             if 'coerce' in kwds:
>                 coerce = kwds['coerce']
>                 del kwds['coerce']
>             else:
>                 coerce = True
> 
>             from sage.rings.ideal import Ideal_generic
>             from types import GeneratorType
>             if len(args) == 0:
>                 gens = [self(0)]
>             else:
>                 gens = args
>                 while isinstance(gens, (list, tuple, GeneratorType)) and len(gens) == 1:
>                     first = gens[0]
>                     if isinstance(first, Ideal_generic):
>                         R = first.ring()
>                         m = self.convert_map_from(R)
>                         if m is not None:
>                             gens = [m(g) for g in first.gens()]
>                             coerce = False
>                         else:
>                             m = R.convert_map_from(self)
>                             if m is not None:
>                                 raise NotImplementedError
>                             else:
>                                 raise TypeError
>                         break
>                     elif isinstance(first, (list, tuple, GeneratorType)):
>                         gens = first
>                     else:
>                         try:
>                             if self.has_coerce_map_from(first):
>                                 gens = first.gens() # we have a ring as argument
>                             elif isinstance(first, Element):
>                                 gens = [first]
>                             else:
>                                 raise ArithmeticError("There is no coercion from %s to %s"%(first,self))
>                         except TypeError: # first may be a ring element
>                             pass
>                         break
>             if coerce:
>                 gens = [self(g) for g in gens]
>             from sage.categories.principal_ideal_domains import PrincipalIdealDomains
>             if self in PrincipalIdealDomains():
>                 # Use GCD algorithm to obtain a principal ideal
>                 g = gens[0]
>                 if len(gens) == 1:
>                     try:
>                         g = g.gcd(g) # note: we set g = gcd(g, g) to "canonicalize" the generator: make polynomials monic, etc.
>                     except (AttributeError, NotImplementedError):
>                         pass
>                 else:
>                     for h in gens[1:]:
>                         g = g.gcd(h)
>                 gens = [g]
>             if 'ideal_class' in kwds:
>                 C = kwds['ideal_class']
>                 del kwds['ideal_class']
>             else:
>                 C = self._ideal_class_(len(gens))
>             if len(gens) == 1 and isinstance(gens[0], (list, tuple)):
>                 gens = gens[0]
>             return C(self, gens, **kwds)
> 
>         def _ideal_class_(self,n=0):
>             """
>             Return the class that is used to implement ideals of this ring.
> 
>             NOTE:
> 
>             We copy the code from :class:`~sage.rings.ring.Ring`. This is
>             necessary because not all rings inherit from that class, such
>             as matrix algebras.
> 
>             INPUT:
> 
>             - ``n`` (optional integer, default 0): The number of generators
>               of the ideal to be created.
> 
>             OUTPUT:
> 
>             The class that is used to implement ideals of this ring with
>             ``n`` generators.
> 
>             NOTE:
> 
>             Often principal ideals (``n==1``) are implemented via a different
>             class.
> 
>             EXAMPLES::
> 
>                 sage: MS = MatrixSpace(QQ,2,2)
>                 sage: MS._ideal_class_()
>                 <class 'sage.rings.noncommutative_ideals.Ideal_nc'>
> 
>             We don't know of a commutative ring in Sage that does not inherit
>             from the base class of rings. So, we need to cheat in the next
>             example::
> 
>                 sage: super(Ring,QQ)._ideal_class_.__module__
>                 'sage.categories.rings'
>                 sage: super(Ring,QQ)._ideal_class_()
>                 <class 'sage.rings.ideal.Ideal_generic'>
>                 sage: super(Ring,QQ)._ideal_class_(1)
>                 <class 'sage.rings.ideal.Ideal_principal'>
>                 sage: super(Ring,QQ)._ideal_class_(2)
>                 <class 'sage.rings.ideal.Ideal_generic'>
> 
>             """
>             from sage.rings.noncommutative_ideals import Ideal_nc
>             try:
>                 if not self.is_commutative():
>                     return Ideal_nc
>             except (NotImplementedError,AttributeError):
>                 return Ideal_nc
>             from sage.rings.ideal import Ideal_generic, Ideal_principal
>             if n == 1:
>                 return Ideal_principal
>             else:
>                 return Ideal_generic
> 
>         ##
>         # Quotient rings
>         # Again, this is defined in sage.rings.ring.pyx
>         def quotient(self, I, names=None):
>             """
>             Quotient of a ring by a two-sided ideal.
> 
>             INPUT:
> 
>             - ``I``: A twosided ideal of this ring.
>             - ``names``: a list of strings to be used as names
>               for the variables in the quotient ring.
> 
>             EXAMPLES:
> 
>             Usually, a ring inherits a method :meth:`sage.rings.ring.Ring.quotient`.
>             So, we need a bit of effort to make the following example work with the
>             category framework::
> 
>                 sage: F.<x,y,z> = FreeAlgebra(QQ)
>                 sage: from sage.rings.noncommutative_ideals import Ideal_nc
>                 sage: from itertools import product
>                 sage: class PowerIdeal(Ideal_nc):
>                 ....:  def __init__(self, R, n):
>                 ....:      self._power = n
>                 ....:      Ideal_nc.__init__(self, R, [R.prod(m) for m in product(R.gens(), repeat=n)])
>                 ....:  def reduce(self, x):
>                 ....:      R = self.ring()
>                 ....:      return add([c*R(m) for m,c in x if len(m) < self._power], R(0))
>                 ....:
>                 sage: I = PowerIdeal(F,3)
>                 sage: Q = Rings().parent_class.quotient(F, I); Q
>                 Quotient of Free Algebra on 3 generators (x, y, z) over Rational Field by the ideal (x^3, x^2*y, x^2*z, x*y*x, x*y^2, x*y*z, x*z*x, x*z*y, x*z^2, y*x^2, y*x*y, y*x*z, y^2*x, y^3, y^2*z, y*z*x, y*z*y, y*z^2, z*x^2, z*x*y, z*x*z, z*y*x, z*y^2, z*y*z, z^2*x, z^2*y, z^3)
>                 sage: Q.0
>                 xbar
>                 sage: Q.1
>                 ybar
>                 sage: Q.2
>                 zbar
>                 sage: Q.0*Q.1
>                 xbar*ybar
>                 sage: Q.0*Q.1*Q.0
>                 0
>             """
>             from sage.rings.quotient_ring import QuotientRing
>             return QuotientRing(self, I, names=names)
> 
>         def quo(self, I, names=None):
>             """
>             Quotient of a ring by a two-sided ideal.
> 
>             NOTE:
> 
>             This is a synonym for :meth:`quotient`.
> 
>             EXAMPLES::
> 
>                 sage: MS = MatrixSpace(QQ,2)
>                 sage: I = MS*MS.gens()*MS
> 
>             ``MS`` is not an instance of :class:`~sage.rings.ring.Ring`.
> 
>             However it is an instance of the parent class of the
>             category of rings. The quotient method is inherited from
>             there::
> 
>                 sage: isinstance(MS,sage.rings.ring.Ring)
>                 False
>                 sage: isinstance(MS,Rings().parent_class)
>                 True
>                 sage: MS.quo(I,names = ['a','b','c','d'])
>                 Quotient of Full MatrixSpace of 2 by 2 dense matrices over Rational Field by the ideal
>                 (
>                   [1 0]
>                   [0 0],
>                 <BLANKLINE>
>                   [0 1]
>                   [0 0],
>                 <BLANKLINE>
>                   [0 0]
>                   [1 0],
>                 <BLANKLINE>
>                   [0 0]
>                   [0 1]
>                 )
> 
>             """
>             return self.quotient(I,names=names)
> 
>         def quotient_ring(self, I, names=None):
>             """
>             Quotient of a ring by a two-sided ideal.
> 
>             NOTE:
> 
>             This is a synonyme for :meth:`quotient`.
> 
>             EXAMPLES::
> 
>                 sage: MS = MatrixSpace(QQ,2)
>                 sage: I = MS*MS.gens()*MS
> 
>             ``MS`` is not an instance of :class:`~sage.rings.ring.Ring`,
>             but it is an instance of the parent class of the category of
>             rings. The quotient method is inherited from there::
> 
>                 sage: isinstance(MS,sage.rings.ring.Ring)
>                 False
>                 sage: isinstance(MS,Rings().parent_class)
>                 True
>                 sage: MS.quotient_ring(I,names = ['a','b','c','d'])
>                 Quotient of Full MatrixSpace of 2 by 2 dense matrices over Rational Field by the ideal
>                 (
>                   [1 0]
>                   [0 0],
>                 <BLANKLINE>
>                   [0 1]
>                   [0 0],
>                 <BLANKLINE>
>                   [0 0]
>                   [1 0],
>                 <BLANKLINE>
>                   [0 0]
>                   [0 1]
>                 )
> 
>             """
>             return self.quotient(I,names=names)
> 
>         def __truediv__(self, I):
>             """
>             Since assigning generator names would not work properly,
>             the construction of a quotient ring using division syntax
>             is not supported.
> 
>             EXAMPLES::
> 
>                 sage: MS = MatrixSpace(QQ,2)
>                 sage: I = MS*MS.gens()*MS
>                 sage: MS/I
>                 Traceback (most recent call last):
>                 ...
>                 TypeError: Use self.quo(I) or self.quotient(I) to construct the quotient ring.
>             """
>             raise TypeError("Use self.quo(I) or self.quotient(I) to construct the quotient ring.")
> 
>         def __getitem__(self, arg):
>             """
>             Extend this ring by one or several elements to create a polynomial
>             ring, a power series ring, or an algebraic extension.
> 
>             This is a convenience method intended primarily for interactive
>             use.
> 
>             .. SEEALSO::
> 
>                 :func:`~sage.rings.polynomial.polynomial_ring_constructor.PolynomialRing`,
>                 :func:`~sage.rings.power_series_ring.PowerSeriesRing`,
>                 :meth:`~sage.rings.ring.Ring.extension`,
>                 :meth:`sage.rings.integer_ring.IntegerRing_class.__getitem__`,
>                 :meth:`sage.rings.matrix_space.MatrixSpace.__getitem__`,
>                 :meth:`sage.structure.parent.Parent.__getitem__`
> 
>             EXAMPLES:
> 
>             We create several polynomial rings::
> 
>                 sage: ZZ['x']
>                 Univariate Polynomial Ring in x over Integer Ring
>                 sage: QQ['x']
>                 Univariate Polynomial Ring in x over Rational Field
>                 sage: GF(17)['abc']
>                 Univariate Polynomial Ring in abc over Finite Field of size 17
>                 sage: GF(17)['a,b,c']
>                 Multivariate Polynomial Ring in a, b, c over Finite Field of size 17
>                 sage: GF(17)['a']['b']
>                 Univariate Polynomial Ring in b over Univariate Polynomial Ring in a over Finite Field of size 17
> 
>             We can create skew polynomial rings::
> 
>                 sage: k.<t> = GF(5^3)
>                 sage: Frob = k.frobenius_endomorphism()
>                 sage: k['x',Frob]
>                 Skew Polynomial Ring in x over Finite Field in t of size 5^3 twisted by t |--> t^5
> 
>             We can also create power series rings by using double brackets::
> 
>                 sage: QQ[['t']]
>                 Power Series Ring in t over Rational Field
>                 sage: ZZ[['W']]
>                 Power Series Ring in W over Integer Ring
> 
>                 sage: ZZ[['x,y,z']]
>                 Multivariate Power Series Ring in x, y, z over Integer Ring
>                 sage: ZZ[['x','T']]
>                 Multivariate Power Series Ring in x, T over Integer Ring
> 
>             Use :func:`~sage.rings.fraction_field.Frac` or
>             :meth:`~sage.rings.ring.CommutativeRing.fraction_field` to obtain
>             the fields of rational functions and Laurent series::
> 
>                 sage: Frac(QQ['t'])
>                 Fraction Field of Univariate Polynomial Ring in t over Rational Field
>                 sage: Frac(QQ[['t']])
>                 Laurent Series Ring in t over Rational Field
>                 sage: QQ[['t']].fraction_field()
>                 Laurent Series Ring in t over Rational Field
> 
>             Note that the same syntax can be used to create number fields::
> 
>                 sage: QQ[I]
>                 Number Field in I with defining polynomial x^2 + 1 with I = 1*I
>                 sage: QQ[I].coerce_embedding()
>                 Generic morphism:
>                   From: Number Field in I with defining polynomial x^2 + 1 with I = 1*I
>                   To:   Complex Lazy Field
>                   Defn: I -> 1*I
> 
>             ::
> 
>                 sage: QQ[sqrt(2)]
>                 Number Field in sqrt2 with defining polynomial x^2 - 2 with sqrt2 = 1.414213562373095?
>                 sage: QQ[sqrt(2)].coerce_embedding()
>                 Generic morphism:
>                   From: Number Field in sqrt2 with defining polynomial x^2 - 2 with sqrt2 = 1.414213562373095?
>                   To:   Real Lazy Field
>                   Defn: sqrt2 -> 1.414213562373095?
> 
>             ::
> 
>                 sage: QQ[sqrt(2),sqrt(3)]
>                 Number Field in sqrt2 with defining polynomial x^2 - 2 over its base field
> 
>             and orders in number fields::
> 
>                 sage: ZZ[I]
>                 Order in Number Field in I with defining polynomial x^2 + 1 with I = 1*I
>                 sage: ZZ[sqrt(5)]
>                 Order in Number Field in sqrt5 with defining polynomial x^2 - 5 with sqrt5 = 2.236067977499790?
>                 sage: ZZ[sqrt(2)+sqrt(3)]
>                 Order in Number Field in a with defining polynomial x^4 - 10*x^2 + 1 with a = 3.146264369941973?
> 
>             Embeddings are found for simple extensions (when that makes sense)::
> 
>                 sage: QQi.<i> = QuadraticField(-1, 'i')
>                 sage: QQ[i].coerce_embedding()
>                 Generic morphism:
>                   From: Number Field in i with defining polynomial x^2 + 1 with i = 1*I
>                   To:   Complex Lazy Field
>                   Defn: i -> 1*I
> 
>             TESTS:
> 
>             A few corner cases::
> 
>                 sage: QQ[()]
>                 Multivariate Polynomial Ring in no variables over Rational Field
> 
>                 sage: QQ[[]]
>                 Traceback (most recent call last):
>                 ...
>                 TypeError: power series rings must have at least one variable
> 
>             These kind of expressions do not work::
> 
>                 sage: QQ['a,b','c']
>                 Traceback (most recent call last):
>                 ...
>                 ValueError: variable name 'a,b' is not alphanumeric
>                 sage: QQ[['a,b','c']]
>                 Traceback (most recent call last):
>                 ...
>                 ValueError: variable name 'a,b' is not alphanumeric
> 
>                 sage: QQ[[['x']]]
>                 Traceback (most recent call last):
>                 ...
>                 TypeError: expected R[...] or R[[...]], not R[[[...]]]
> 
>             Extension towers are built as follows and use distinct generator names::
> 
>                 sage: K = QQ[2^(1/3), 2^(1/2), 3^(1/3)]
>                 sage: K
>                 Number Field in a with defining polynomial x^3 - 2 over its base field
>                 sage: K.base_field()
>                 Number Field in sqrt2 with defining polynomial x^2 - 2 over its base field
>                 sage: K.base_field().base_field()
>                 Number Field in b with defining polynomial x^3 - 3
> 
>             Embeddings::
> 
>                 sage: QQ[I](I.pyobject())
>                 I
>                 sage: a = 10^100; expr = (2*a + sqrt(2))/(2*a^2-1)
>                 sage: QQ[expr].coerce_embedding() is None
>                 False
>                 sage: QQ[sqrt(5)].gen() > 0
>                 True
>                 sage: expr = sqrt(2) + I*(cos(pi/4, hold=True) - sqrt(2)/2)
>                 sage: QQ[expr].coerce_embedding()
>                 Generic morphism:
>                   From: Number Field in a with defining polynomial x^2 - 2 with a = 1.414213562373095?
>                   To:   Real Lazy Field
>                   Defn: a -> 1.414213562373095?
>             """
>             def normalize_arg(arg):
>                 if isinstance(arg, (tuple, list)):
>                     # Allowing arbitrary iterables would create confusion, but we
>                     # may want to support a few more.
>                     return tuple(arg)
>                 elif isinstance(arg, str):
>                     return tuple(arg.split(','))
>                 else:
>                     return (arg,)
> 
>             # 1. If arg is a list, try to return a power series ring.
> 
>             if isinstance(arg, list):
>                 if arg == []:
>                     raise TypeError("power series rings must have at least one variable")
>                 elif len(arg) == 1:
>                     # R[["a,b"]], R[[(a,b)]]...
>                     if isinstance(arg[0], list):
>                         raise TypeError("expected R[...] or R[[...]], not R[[[...]]]")
>                     elts = normalize_arg(arg[0])
>                 else:
>                     elts = normalize_arg(arg)
>                 from sage.rings.power_series_ring import PowerSeriesRing
>                 return PowerSeriesRing(self, elts)
> 
>             if isinstance(arg, tuple):
>                 from sage.categories.morphism import Morphism
>                 if len(arg) == 2 and isinstance(arg[1], Morphism):
>                    from sage.rings.polynomial.skew_polynomial_ring_constructor import SkewPolynomialRing
>                    return SkewPolynomialRing(self, arg[1], names=arg[0])
> 
>             # 2. Otherwise, if all specified elements are algebraic, try to
>             #    return an algebraic extension
> 
>             elts = normalize_arg(arg)
> 
>             try:
>                 minpolys = [a.minpoly() for a in elts]
>             except (AttributeError, NotImplementedError, ValueError, TypeError):
>                 minpolys = None
> 
>             if minpolys:
>                 # how to pass in names?
>                 names = tuple(_gen_names(elts))
>                 if len(elts) == 1:
>                     from sage.rings.all import CIF, CLF, RLF
>                     elt = elts[0]
>                     try:
>                         iv = CIF(elt)
>                     except (TypeError, ValueError):
>                         emb = None
>                     else:
>                         # First try creating an ANRoot manually, because
>                         # extension(..., embedding=CLF(expr)) (or
>                         # ...QQbar(expr)) would normalize the expression in
>                         # QQbar, which currently is VERY slow in many cases.
>                         # This may fail when minpoly has close roots or elt is
>                         # a complicated symbolic expression.
>                         # TODO: Rewrite using #19362 and/or #17886 and/or
>                         # #15600 once those issues are solved.
>                         from sage.rings.qqbar import AlgebraicNumber, ANRoot
>                         try:
>                             elt = AlgebraicNumber(ANRoot(minpolys[0], iv))
>                         except ValueError:
>                             pass
>                         # Force a real embedding when possible, to get the
>                         # right ordered ring structure.
>                         if (iv.imag().is_zero() or iv.imag().contains_zero()
>                                                    and elt.imag().is_zero()):
>                             emb = RLF(elt)
>                         else:
>                             emb = CLF(elt)
>                         return self.extension(minpolys[0], names[0], embedding=emb)
>                 try:
>                     # Doing the extension all at once is best, if possible...
>                     return self.extension(minpolys, names)
>                 except (TypeError, ValueError):
>                     # ...but we can also construct it iteratively
>                     return reduce(lambda R, ext: R.extension(*ext), zip(minpolys, names), self)
> 
>             # 2. Otherwise, try to return a polynomial ring
> 
>             from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing
>             return PolynomialRing(self, elts)
> 
>         def free_module(self, base=None, basis=None, map=True):
>             """
>             Return a free module `V` over the specified subring together with maps to and from `V`.
> 
>             The default implementation only supports the case that the base ring is the ring itself.
> 
>             INPUT:
> 
>             - ``base`` -- a subring `R` so that this ring is isomorphic
>               to a finite-rank free `R`-module `V`
> 
>             - ``basis`` -- (optional) a basis for this ring over the base
> 
>             - ``map`` -- boolean (default ``True``), whether to return
>               `R`-linear maps to and from `V`
> 
>             OUTPUT:
> 
>             - A finite-rank free `R`-module `V`
> 
>             - An `R`-module isomorphism from `V` to this ring
>               (only included if ``map`` is ``True``)
> 
>             - An `R`-module isomorphism from this ring to `V`
>               (only included if ``map`` is ``True``)
> 
>             EXAMPLES::
> 
>                 sage: R.<x> = QQ[[]]
>                 sage: V, from_V, to_V = R.free_module(R)
>                 sage: v = to_V(1+x); v
>                 (1 + x)
>                 sage: from_V(v)
>                 1 + x
>                 sage: W, from_W, to_W = R.free_module(R, basis=(1-x))
>                 sage: W is V
>                 True
>                 sage: w = to_W(1+x); w
>                 (1 - x^2)
>                 sage: from_W(w)
>                 1 + x + O(x^20)
>             """
>             if base is None:
>                 base = self.base_ring()
>             if base is self:
>                 V = self**1
>                 if not map:
>                     return V
>                 if basis is not None:
>                     if isinstance(basis, (list, tuple)):
>                         if len(basis) != 1:
>                             raise ValueError("Basis must have length 1")
>                         basis = basis[0]
>                     basis = self(basis)
>                     if not basis.is_unit():
>                         raise ValueError("Basis element must be a unit")
>                 from sage.modules.free_module_morphism import BaseIsomorphism1D_from_FM, BaseIsomorphism1D_to_FM
>                 Hfrom = V.Hom(self)
>                 Hto = self.Hom(V)
>                 from_V = Hfrom.__make_element_class__(BaseIsomorphism1D_from_FM)(Hfrom, basis=basis)
>                 to_V = Hto.__make_element_class__(BaseIsomorphism1D_to_FM)(Hto, basis=basis)
>                 return V, from_V, to_V
>             else:
>                 if not self.has_coerce_map_from(base):
>                     raise ValueError("base must be a subring of this ring")
>                 raise NotImplementedError
> 
> sage: cython('''
> class A:
>     def __init__(self):
>         "some init doc"
>         pass
> class B:
>     "some class doc"
>     class A(A):
>         pass
> ''') ## line 2138 ##
> sage: B.A.__name__ ## line 2148 ##
> 'A'
> sage: B.A.__qualname__ ## line 2150 ##
> 'B.A'
> sage: sage_getsource(B.A) ## line 2152 ##
> '    class A(A):\n        pass\n\n'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 2163 ##
> 0
> sage: from sage.misc.sageinspect import sage_getsourcelines ## line 2269 ##
> sage: sage_getsourcelines(matrix)[1] ## line 2270 ##
> 20
> sage: sage_getsourcelines(matrix)[0][0] ## line 2272 ##
> 'def matrix(*args, **kwds):\n'
> sage: cachedfib = cached_function(fibonacci) ## line 2279 ##
> sage: sage_getsourcelines(cachedfib)[0][0] ## line 2280 ##
> 'def fibonacci(n, algorithm="pari"):\n'
> sage: sage_getsourcelines(type(cachedfib))[0][0] ## line 2282 ##
> 'cdef class CachedFunction(object):\n'
> sage: cython('''cpdef test_funct(x,y): return''') ## line 2287 ##
> sage: sage_getsourcelines(test_funct) ## line 2288 ##
> (['cpdef test_funct(x,y): return\n'], 1)
> sage: from sage.tests.functools_partial_src import test_func ## line 2294 ##
> sage: sage_getsourcelines(test_func) ## line 2295 ##
> (['def base(x):\n', '    """\n', '    Test function to make sure\n', '    :func:`~sage.misc.sageinspect.sage_getsourcelines` can get\n', '    the code of a function created by ``functools.partial``.\n', '\n', '    EXAMPLES::\n', '\n', '        sage: from sage.tests.functools_partial_src import base, test_func\n', '        sage: base(3)\n', '        21\n', '        sage: test_func()\n', '        42\n', '    """\n', '    x = x * 7\n', '    return x\n'], 7)
> sage: P.<x,y> = QQ[] ## line 2304 ##
> sage: I = P*[x,y] ## line 2305 ##
> sage: sage_getsourcelines(P) ## line 2306 ##
> (['cdef class MPolynomialRing_libsingular(MPolynomialRing_base):\n', '\n', '    def __cinit__(self):\n', '        """\n', '        The Cython constructor.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: from sage.rings.polynomial.multi_polynomial_libsingular import MPolynomialRing_libsingular\n', "            sage: MPolynomialRing_libsingular(QQ, 3, ('x', 'y', 'z'), TermOrder('degrevlex', 3))\n", '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '            sage: type(_)\n', "            <type 'sage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular'>\n", '\n', '            sage: P.<x,y,z> = QQ[]; P\n', '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '            sage: type(P)\n', "            <type 'sage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular'>\n", '        """\n', '        self._ring = NULL\n', '\n', "    def __init__(self, base_ring, n, names, order='degrevlex'):\n", '        """\n', '        Construct a multivariate polynomial ring subject to the\n', '        following conditions:\n', '\n', '        INPUT:\n', '\n', '        - ``base_ring`` - base ring (must be either GF(q), ZZ, ZZ/nZZ,\n', '                          QQ or absolute number field)\n', '\n', '        - ``n`` - number of variables (must be at least 1)\n', '\n', '        - ``names`` - names of ring variables, may be string of list/tuple\n', '\n', '        - ``order`` - term order (default: ``degrevlex``)\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P\n', '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '\n', '            sage: f = 27/113 * x^2 + y*z + 1/2; f\n', '            27/113*x^2 + y*z + 1/2\n', '\n', '            sage: P.term_order()\n', '            Degree reverse lexicographic term order\n', '\n', "            sage: P = PolynomialRing(GF(127),3,names='abc', order='lex')\n", '            sage: P\n', '            Multivariate Polynomial Ring in a, b, c over Finite Field of size 127\n', '\n', '            sage: a,b,c = P.gens()\n', '            sage: f = 57 * a^2*b + 43 * c + 1; f\n', '            57*a^2*b + 43*c + 1\n', '\n', '            sage: P.term_order()\n', '            Lexicographic term order\n', '\n', "            sage: z = QQ['z'].0\n", '            sage: K.<s> = NumberField(z^2 - 2)\n', '            sage: P.<x,y> = PolynomialRing(K, 2)\n', '            sage: 1/2*s*x^2 + 3/4*s\n', '            (1/2*s)*x^2 + (3/4*s)\n', '\n', '            sage: P.<x,y,z> = ZZ[]; P\n', '            Multivariate Polynomial Ring in x, y, z over Integer Ring\n', '\n', '            sage: P.<x,y,z> = Zmod(2^10)[]; P\n', '            Multivariate Polynomial Ring in x, y, z over Ring of integers modulo 1024\n', '\n', '            sage: P.<x,y,z> = Zmod(3^10)[]; P\n', '            Multivariate Polynomial Ring in x, y, z over Ring of integers modulo 59049\n', '\n', '            sage: P.<x,y,z> = Zmod(2^100)[]; P\n', '            Multivariate Polynomial Ring in x, y, z over Ring of integers modulo 1267650600228229401496703205376\n', '\n', '            sage: P.<x,y,z> = Zmod(2521352)[]; P\n', '            Multivariate Polynomial Ring in x, y, z over Ring of integers modulo 2521352\n', '            sage: type(P)\n', "            <type 'sage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular'>\n", '\n', '            sage: P.<x,y,z> = Zmod(25213521351515232)[]; P\n', '            Multivariate Polynomial Ring in x, y, z over Ring of integers modulo 25213521351515232\n', '            sage: type(P)\n', "            <class 'sage.rings.polynomial.multi_polynomial_ring.MPolynomialRing_polydict_with_category'>\n", '\n', "            sage: P.<x,y,z> = PolynomialRing(Integers(2^32),order='lex')\n", '            sage: P(2^32-1)\n', '            4294967295\n', '\n', '        TESTS:\n', '\n', '        Make sure that a faster coercion map from the base ring is used;\n', '        see :trac:`9944`::\n', '\n', '            sage: R.<x,y> = PolynomialRing(ZZ)\n', '            sage: R.coerce_map_from(R.base_ring())\n', '            Polynomial base injection morphism:\n', '              From: Integer Ring\n', '              To:   Multivariate Polynomial Ring in x, y over Integer Ring\n', '\n', '        Check some invalid input::\n', '\n', '            sage: from sage.rings.polynomial.multi_polynomial_libsingular import MPolynomialRing_libsingular\n', '            sage: MPolynomialRing_libsingular(Zmod(1), 1, ["x"], "lex")\n', '            Traceback (most recent call last):\n', '            ...\n', '            NotImplementedError: polynomials over Ring of integers modulo 1 are not supported in Singular\n', '            sage: MPolynomialRing_libsingular(SR, 1, ["x"], "lex")\n', '            Traceback (most recent call last):\n', '            ...\n', '            NotImplementedError: polynomials over Symbolic Ring are not supported in Singular\n', '            sage: MPolynomialRing_libsingular(QQ, 0, [], "lex")\n', '            Traceback (most recent call last):\n', '            ...\n', '            NotImplementedError: polynomials in 0 variables are not supported in Singular\n', '            sage: MPolynomialRing_libsingular(QQ, -1, [], "lex")\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Multivariate Polynomial Rings must have more than 0 variables.\n', '        """\n', '        MPolynomialRing_base.__init__(self, base_ring, n, names, order)\n', '        self._has_singular = True\n', '        assert(n == len(self._names))\n', '        self.__ngens = n\n', '        self._ring = singular_ring_new(base_ring, n, self._names, order)\n', '        self._zero_element = new_MP(self, NULL)\n', '        cdef MPolynomial_libsingular one = new_MP(self, p_ISet(1, self._ring))\n', '        self._one_element = one\n', '        self._one_element_poly = one._poly\n', '        # This polynomial ring should belong to Algebras(base_ring).\n', '        # Algebras(...).parent_class, which was called from MPolynomialRing_base.__init__,\n', '        # tries to provide a conversion from the base ring, if it does not exist.\n', '        # This is for algebras that only do the generic stuff in their initialisation.\n', '        # But here, we want to use PolynomialBaseringInjection. Hence, we need to\n', '        # wipe the memory and construct the conversion from scratch.\n', '        from sage.rings.polynomial.polynomial_element import PolynomialBaseringInjection\n', '        base_inject = PolynomialBaseringInjection(base_ring, self)\n', '        self.register_coercion(base_inject)\n', '        #permanently store a reference to this ring until deallocation works reliably\n', '        permstore.append(self)\n', '\n', '    def __dealloc__(self):\n', '        r"""\n', '        Deallocate the ring without changing ``currRing``\n', '\n', '        TESTS:\n', '\n', '        This example caused a segmentation fault with a previous version\n', '        of this method::\n', '\n', '            sage: import gc\n', '            sage: from sage.rings.polynomial.multi_polynomial_libsingular import MPolynomialRing_libsingular\n', "            sage: R1 = MPolynomialRing_libsingular(GF(5), 2, ('x', 'y'), TermOrder('degrevlex', 2))\n", "            sage: R2 = MPolynomialRing_libsingular(GF(11), 2, ('x', 'y'), TermOrder('degrevlex', 2))\n", "            sage: R3 = MPolynomialRing_libsingular(GF(13), 2, ('x', 'y'), TermOrder('degrevlex', 2))\n", '            sage: _ = gc.collect()\n', '            sage: foo = R1.gen(0)\n', '            sage: del foo\n', '            sage: del R1\n', '            sage: _ = gc.collect()\n', '            sage: del R2\n', '            sage: _ = gc.collect()\n', '            sage: del R3\n', '            sage: _ = gc.collect()\n', '        """\n', '        if self._ring != NULL:  # the constructor did not raise an exception\n', '            singular_ring_delete(self._ring)\n', '\n', '    def __copy__(self):\n', '        """\n', '        Copy ``self``.\n', '\n', '        The ring is unique and immutable, so we do not copy.\n', '\n', '        TESTS::\n', '\n', '            sage: import gc\n', '            sage: from sage.rings.polynomial.multi_polynomial_libsingular import MPolynomialRing_libsingular\n', '            sage: from sage.libs.singular.ring import ring_refcount_dict\n', '            sage: gc.collect()  # random output\n', '            sage: n = len(ring_refcount_dict)\n', "            sage: R = MPolynomialRing_libsingular(GF(547), 2, ('x', 'y'), TermOrder('degrevlex', 2))\n", '            sage: len(ring_refcount_dict) == n + 1\n', '            True\n', '\n', '            sage: Q = copy(R)   # indirect doctest\n', '            sage: p = R.gen(0) ^2+R.gen(1)^2\n', '            sage: q = copy(p)\n', '            sage: del R\n', '            sage: del Q\n', '            sage: del p\n', '            sage: del q\n', '            sage: gc.collect() # random output\n', '            sage: len(ring_refcount_dict) == n\n', '            False\n', '        """\n', '        return self\n', '\n', '    def __deepcopy__(self, memo):\n', '        """\n', '        Deep copy ``self``.\n', '\n', '        The ring should be immutable, so we do not copy.\n', '\n', '        TESTS::\n', '\n', '            sage: R.<x,y> = GF(547)[]\n', '            sage: R is deepcopy(R)   # indirect doctest\n', '            True\n', '        """\n', '        memo[id(self)] = self\n', '        return self\n', '\n', '    cpdef _coerce_map_from_(self, other):\n', '        """\n', '        Return True if and only if there exists a coercion map from\n', '        ``other`` to ``self``.\n', '\n', '        TESTS::\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: type(R)\n', "            <type 'sage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular'>\n", "            sage: R.has_coerce_map_from(ZZ['t'])\n", '            False\n', "            sage: R.coerce_map_from(ZZ['x'])\n", '            Coercion map:\n', '              From: Univariate Polynomial Ring in x over Integer Ring\n', '              To:   Multivariate Polynomial Ring in x, y over Rational Field\n', '\n', '        """\n', '        base_ring = self.base_ring()\n', '\n', '        if isinstance(other, MPolynomialRing_libsingular):\n', '            if self is other:\n', '                return True\n', '            n = other.ngens()\n', '            if(other.base_ring is base_ring and self.ngens() >= n and\n', '               self.variable_names()[:n] == other.variable_names()):\n', '                return True\n', '            elif base_ring.has_coerce_map_from(other._mpoly_base_ring(self.variable_names())):\n', '                return True\n', '        elif isinstance(other, MPolynomialRing_polydict):\n', '            if self == other:\n', '                return True\n', '            elif other.ngens() == 0:\n', '                return True\n', '            elif base_ring.has_coerce_map_from(other._mpoly_base_ring(self.variable_names())):\n', '                return True\n', '        elif is_PolynomialRing(other):\n', '            if base_ring.has_coerce_map_from(other._mpoly_base_ring(self.variable_names())):\n', '                return True\n', '        elif base_ring.has_coerce_map_from(other):\n', '            return True\n', '\n', '    Element = MPolynomial_libsingular\n', '\n', '    def _element_constructor_(self, element, check=True):\n', '        """\n', '        Construct a new element in this polynomial ring by converting\n', '        ``element`` into ``self`` if possible.\n', '\n', '        INPUT:\n', '\n', '        - ``element`` -- several types are supported, see below\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '\n', '        We can coerce elements of self to self::\n', '\n', '            sage: P._coerce_(x*y + 1/2)\n', '            x*y + 1/2\n', '\n', '        We can coerce elements for a ring with the same algebraic properties::\n', '\n', '            sage: from sage.rings.polynomial.multi_polynomial_libsingular import MPolynomialRing_libsingular\n', '            sage: R.<x,y,z> = MPolynomialRing_libsingular(QQ,3)\n', '            sage: P == R\n', '            True\n', '\n', '            sage: P is R\n', '            False\n', '\n', '            sage: P._coerce_(x*y + 1)\n', '            x*y + 1\n', '\n', '        We can coerce base ring elements::\n', '\n', '            sage: P._coerce_(3/2)\n', '            3/2\n', '\n', '        and all kinds of integers::\n', '\n', '            sage: P._coerce_(ZZ(1))\n', '            1\n', '\n', '            sage: P._coerce_(int(1))\n', '            1\n', '\n', '            sage: k.<a> = GF(2^8)\n', '            sage: P.<x,y> = PolynomialRing(k,2)\n', '            sage: P._coerce_(a)\n', '            (a)\n', '\n', "            sage: z = QQ['z'].0\n", '            sage: K.<s> = NumberField(z^2 - 2)\n', '            sage: P.<x,y> = PolynomialRing(K, 2)\n', '            sage: P._coerce_(1/2*s)\n', '            (1/2*s)\n', '\n', '        TESTS::\n', '\n', '            sage: P.<x,y> = PolynomialRing(GF(127))\n', '            sage: P("111111111111111111111111111111111111111111111111111111111")\n', '            21\n', '            sage: P.<x,y> = PolynomialRing(QQ)\n', '            sage: P("111111111111111111111111111111111111111111111111111111111")\n', '            111111111111111111111111111111111111111111111111111111111\n', '            sage: P("31367566080")\n', '            31367566080\n', '\n', '        Check if :trac:`7582` is fixed::\n', '\n', '            sage: R.<x,y,z> = PolynomialRing(CyclotomicField(2),3)\n', '            sage: R.coerce(1)\n', '            1\n', '\n', '        Check if :trac:`6160` is fixed::\n', '\n', "            sage: x=var('x')\n", '            sage: K.<j> = NumberField(x-1728)\n', '            sage: R.<b,c> = K[]\n', '            sage: R.coerce(1)\n', '            1\n', '\n', '        Check if coercion from zero variable polynomial rings work\n', '        (:trac:`7951`)::\n', '\n', "            sage: P = PolynomialRing(QQ,0,'')\n", '            sage: R.<x,y> = QQ[]\n', '            sage: P(5)*x\n', '            5*x\n', "            sage: P = PolynomialRing(ZZ,0,'')\n", '            sage: R.<x,y> = GF(127)[]\n', '            sage: R.coerce(P(5))\n', '            5\n', '\n', '        Conversion from strings::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', "            sage: P('x+y + 1/4')\n", '            x + y + 1/4\n', '\n', '        Coercion from SINGULAR elements::\n', '\n', '            sage: P._singular_()\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 3\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y z\n', '            //        block   2 : ordering C\n', '\n', '            sage: P._singular_().set_ring()\n', "            sage: P(singular('x + 3/4'))\n", '            x + 3/4\n', '\n', '        Coercion from symbolic variables::\n', '\n', "            sage: R = QQ['x,y,z']\n", "            sage: var('x')\n", '            x\n', '            sage: R(x)\n', '            x\n', '\n', "        Coercion from 'similar' rings, which maps by index::\n", '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: R.<a,b,c> = ZZ[]\n', '            sage: P(a)\n', '            x\n', '\n', '        ::\n', '\n', '            sage: P.<x,y> = QQ[]\n', '            sage: R.<a,b,c> = QQ[]\n', '            sage: R(x)\n', '            a\n', '\n', '        Coercion from PARI objects::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', "            sage: P(pari('x^2 + y'))\n", '            x^2 + y\n', "            sage: P(pari('x*y'))\n", '            x*y\n', '\n', '        Coercion from boolean polynomials, also by index::\n', '\n', '            sage: B.<x,y,z> = BooleanPolynomialRing(3)\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P(B.gen(0))\n', '            x\n', '\n', '        If everything else fails, we try to coerce to the base ring::\n', '\n', '            sage: R.<x,y,z> = GF(3)[]\n', '            sage: R(1/2)\n', '            -1\n', '\n', '        Finally, conversions from other polynomial rings which are not\n', '        coercions are provided. Variables are mapped as follows. Say,\n', '        we are mapping an element from `P` to `Q` (this ring). If the\n', '        variables of `P` are a subset of `Q`, we perform a name\n', '        preserving conversion::\n', '\n', '            sage: P.<y_2, y_1, z_3, z_2, z_1> = GF(3)[]\n', "            sage: Q = GF(3)['y_4', 'y_3', 'y_2', 'y_1', 'z_5', 'z_4', 'z_3', 'z_2', 'z_1']\n", '            sage: Q(y_1*z_2^2*z_1)\n', '            y_1*z_2^2*z_1\n', '\n', '        Otherwise, if `P` has less than or equal the number of\n', '        variables as `Q`, we perform a conversion by index::\n', '\n', '            sage: P.<a,b,c> = GF(2)[]\n', "            sage: Q = GF(2)['c','b','d','e']\n", '            sage: f = Q.convert_map_from(P)\n', '            sage: f(a), f(b), f(c)\n', '            (c, b, d)\n', '\n', '        ::\n', '\n', '            sage: P.<a,b,c> = GF(2)[]\n', "            sage: Q = GF(2)['c','b','d']\n", '            sage: f = Q.convert_map_from(P)\n', '            sage: f(a),f(b),f(c)\n', '            (c, b, d)\n', '\n', '        In all other cases, we fail::\n', '\n', '            sage: P.<a,b,c,f> = GF(2)[]\n', "            sage: Q = GF(2)['c','d','e']\n", '            sage: f = Q.convert_map_from(P)\n', '            sage: f(a)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: Could not find a mapping of the passed element to this ring.\n', '\n', "        Coerce in a polydict where a coefficient reduces to 0 but isn't 0. ::\n", '\n', '            sage: R.<x,y> = QQ[]; S.<xx,yy> = GF(5)[]; S( (5*x*y + x + 17*y)._mpoly_dict_recursive() )\n', '            xx + 2*yy\n', '\n', '        Coerce in a polynomial one of whose coefficients reduces to 0. ::\n', '\n', '            sage: R.<x,y> = QQ[]; S.<xx,yy> = GF(5)[]; S(5*x*y + x + 17*y)\n', '            xx + 2*yy\n', '\n', '        Some other examples that illustrate the same coercion idea::\n', '\n', '            sage: R.<x,y> = ZZ[]\n', "            sage: S.<xx,yy> = GF(25,'a')[]\n", '            sage: S(5*x*y + x + 17*y)\n', '            xx + 2*yy\n', '\n', '            sage: S.<xx,yy> = Integers(5)[]\n', '            sage: S(5*x*y + x + 17*y)\n', '            xx + 2*yy\n', '\n', '        See :trac:`5292`::\n', '\n', '            sage: R.<x> = QQ[]; S.<q,t> = QQ[]; F = FractionField(S)\n', '            sage: x in S\n', '            False\n', '            sage: x in F\n', '            False\n', '\n', '        Check if :trac:`8228` is fixed::\n', '\n', '            sage: P.<x,y> = Zmod(10)[]; P(0)\n', '            0\n', '            sage: P.<x,y> = Zmod(2^10)[]; P(0)\n', '            0\n', '\n', '        And :trac:`7597` is fixed if this does not segfault::\n', '\n', '            sage: F2 = GF(2)\n', '            sage: F.<x> = GF(2^8)\n', '            sage: R4.<a,b> = PolynomialRing(F)\n', '            sage: R.<u,v> = PolynomialRing(F2)\n', '            sage: P = a\n', '            sage: (P(0,0).polynomial()[0])*u\n', '            0\n', '            sage: P(a,b)\n', '            a\n', '\n', '        Check that :trac:`15746` is fixed::\n', '\n', '            sage: R.<x,y> = GF(7)[]\n', '            sage: R(2^31)\n', '            2\n', '\n', '        Check that :trac:`17964` is fixed::\n', '\n', '            sage: K.<a> = QuadraticField(17)\n', '            sage: Q.<x,y> = K[]\n', '            sage: f = (-3*a)*y + (5*a)\n', '            sage: p = K.primes_above(5)[0]\n', '            sage: R = K.residue_field(p)\n', "            sage: S = R['x','y']\n", '            sage: S(f)\n', '            (2*abar)*y\n', '\n', '        """\n', '        cdef poly *_p\n', '        cdef poly *mon\n', '        cdef poly *El_poly\n', '        cdef ring *_ring = self._ring\n', '        cdef number *_n\n', '        cdef ring *El_ring\n', '        cdef long mpos\n', '        cdef MPolynomial_libsingular Element\n', '        cdef MPolynomialRing_libsingular El_parent\n', '        cdef int i, j\n', '        cdef int e\n', '        cdef list ind_map = []\n', '        cdef sBucket *bucket\n', '\n', '        if _ring!=currRing: rChangeCurrRing(_ring)\n', '\n', '        base_ring = self.base_ring()\n', '\n', '        if isinstance(element, MPolynomial_libsingular):\n', '            n = (<MPolynomial_libsingular>element)._parent.ngens()\n', '            if element.parent() is self:\n', '                return element\n', '            elif(base_ring is element.base_ring() and\n', '                 self.ngens() >= n and\n', '                 self.variable_names()[:n] == (<MPolynomial_libsingular>element)._parent.variable_names()):\n', '                if self.term_order() == (<MPolynomial_libsingular>element)._parent.term_order():\n', '                    _p = prCopyR_NoSort((<MPolynomial_libsingular>element)._poly,\n', '                                        (<MPolynomial_libsingular>element)._parent_ring,\n', '                                        _ring)\n', '                else:\n', '                    _p = prCopyR((<MPolynomial_libsingular>element)._poly,\n', '                                 (<MPolynomial_libsingular>element)._parent_ring, _ring)\n', '                return new_MP(self, _p)\n', '            elif base_ring.has_coerce_map_from(element.parent()._mpoly_base_ring(self.variable_names())):\n', '                return self(element._mpoly_dict_recursive(self.variable_names(), base_ring))\n', '\n', '        elif isinstance(element, MPolynomial_polydict):\n', '            if element.parent() == self:\n', '                bucket = sBucketCreate(_ring)\n', '                try:\n', '                    for (m,c) in element.element().dict().iteritems():\n', '                        mon = p_Init(_ring)\n', '                        p_SetCoeff(mon, sa2si(c, _ring), _ring)\n', '                        for pos in m.nonzero_positions():\n', '                            overflow_check(m[pos], _ring)\n', '                            p_SetExp(mon, pos+1, m[pos], _ring)\n', '                        p_Setm(mon, _ring)\n', '                        #we can use "_m" because we\'re merging a monomial and\n', '                        #"Merge" because this monomial is different from the rest \n', '                        sBucket_Merge_m(bucket, mon)\n', '                    e=0\n', '                    #we can use "Merge" because the monomials are distinct\n', '                    sBucketClearMerge(bucket, &_p, &e)\n', '                    sBucketDestroy(&bucket)\n', '                except:\n', '                     sBucketDeleteAndDestroy(&bucket)\n', '                     raise\n', '                return new_MP(self, _p)\n', '            elif element.parent().ngens() == 0:\n', '                # zero variable polynomials\n', '                _p = p_NSet(sa2si(base_ring(element[tuple()]), _ring),\n', '                        _ring)\n', '                return new_MP(self, _p)\n', '            elif base_ring.has_coerce_map_from(element.parent()._mpoly_base_ring(self.variable_names())):\n', '                return self(element._mpoly_dict_recursive(self.variable_names(), base_ring))\n', '\n', '        elif isinstance(element, polynomial_element.Polynomial):\n', '            if base_ring.has_coerce_map_from(element.parent()._mpoly_base_ring(self.variable_names())):\n', '                return self(element._mpoly_dict_recursive(self.variable_names(), base_ring))\n', '\n', '        if isinstance(element, CommutativeRingElement):\n', '            # base ring elements\n', '            if element.parent() is base_ring:\n', '                # shortcut for GF(p)\n', '                if isinstance(base_ring, FiniteField_prime_modn):\n', '                    _p = p_ISet(int(element) % _ring.cf.ch, _ring)\n', '                else:\n', '                    _n = sa2si(element,_ring)\n', '                    _p = p_NSet(_n, _ring)\n', '                return new_MP(self, _p)\n', '            # also accepting ZZ\n', '            elif is_IntegerRing(element.parent()):\n', '                if isinstance(base_ring, FiniteField_prime_modn):\n', '                    _p = p_ISet(int(element),_ring)\n', '                else:\n', '                    _n = sa2si(base_ring(element),_ring)\n', '                    _p = p_NSet(_n, _ring)\n', '                return new_MP(self, _p)\n', '            # fall back to base ring\n', '            try:\n', '                element = base_ring._coerce_c(element)\n', '                _n = sa2si(element,_ring)\n', '                _p = p_NSet(_n, _ring)\n', '                return new_MP(self, _p)\n', '            except TypeError:\n', '                pass\n', '\n', '        elif isinstance(element, int) or isinstance(element, long):\n', '            if isinstance(base_ring, FiniteField_prime_modn):\n', '                _p = p_ISet(element % _ring.cf.ch, _ring)\n', '            else:\n', '                _n = sa2si(base_ring(element), _ring)\n', '                _p = p_NSet(_n, _ring)\n', '            return new_MP(self, _p)\n', '\n', '        if isinstance(element, (SingularElement, cypari2.gen.Gen)):\n', '            element = str(element)\n', '\n', '        if isinstance(element, MPolynomial_libsingular) and element.parent() is not self and element.parent() != self:\n', '            variable_names_s = element.parent().variable_names()\n', '            variable_names_t = self.variable_names()\n', '\n', '            if set(variable_names_s).issubset(variable_names_t):\n', '                for v in variable_names_s:\n', '                    ind_map.append(variable_names_t.index(v)+1)\n', '            else:\n', '                ind_map = [i+1 for i in range(_ring.N)]\n', '\n', '            if element.parent().ngens() <= self.ngens():\n', '                # Map the variables by indices\n', '                _p = p_ISet(0, _ring)\n', '                Element = <MPolynomial_libsingular>element\n', '                El_poly = Element._poly\n', '                El_parent = Element._parent\n', '                El_ring = Element._parent_ring\n', '                El_base = El_parent._base\n', '\n', '                #this loop needs improvement\n', '                while El_poly:\n', '                    c = si2sa(p_GetCoeff(El_poly, El_ring), El_ring, El_base)\n', '                    if check:\n', '                        try:\n', '                            c = base_ring(c)\n', '                        except TypeError:\n', '                            p_Delete(&_p, _ring)\n', '                            raise\n', '                    if c:\n', '                        mon = p_Init(_ring)\n', '                        p_SetCoeff(mon, sa2si(c, _ring), _ring)\n', '                        for j from 1 <= j <= El_ring.N:\n', '                            e = p_GetExp(El_poly, j, El_ring)\n', '                            if e:\n', '                                p_SetExp(mon, ind_map[j-1], e, _ring)\n', '                        p_Setm(mon, _ring)\n', '                        _p = p_Add_q(_p, mon, _ring)\n', '                    El_poly = pNext(El_poly)\n', '                return new_MP(self, _p)\n', '\n', '        if isinstance(element, MPolynomial_polydict):\n', '            variable_names_s = element.parent().variable_names()\n', '            variable_names_t = self.variable_names()\n', '\n', '            if set(variable_names_s).issubset(variable_names_t):\n', '                for v in variable_names_s:\n', '                    ind_map.append(variable_names_t.index(v)+1)\n', '            else:\n', '                ind_map = [i+1 for i in range(_ring.N)]\n', '\n', '            if element.parent().ngens() <= self.ngens():\n', '                bucket = sBucketCreate(_ring)\n', '                try:\n', '                    for (m,c) in element.element().dict().iteritems():\n', '                        if check:\n', '                            c = base_ring(c)\n', '                        if not c:\n', '                            continue\n', '                        mon = p_Init(_ring)\n', '                        p_SetCoeff(mon, sa2si(c , _ring), _ring)\n', '                        for pos in m.nonzero_positions():\n', '                            overflow_check(m[pos], _ring)\n', '                            p_SetExp(mon, ind_map[pos], m[pos], _ring)\n', '                        p_Setm(mon, _ring)\n', '                        sBucket_Merge_m(bucket, mon)\n', '                    e=0\n', '                    sBucketClearMerge(bucket, &_p, &e)\n', '                    sBucketDestroy(&bucket)\n', '                except TypeError:\n', '                    sBucketDeleteAndDestroy(&bucket)\n', '                    raise\n', '                return new_MP(self, _p)\n', '\n', '        from sage.rings.polynomial.pbori import BooleanPolynomial\n', '        if isinstance(element, BooleanPolynomial):\n', '            if element.constant():\n', '                if element:\n', '                    return self._one_element\n', '                else:\n', '                    return self._zero_element\n', '\n', '            variable_names_s = set(element.parent().variable_names())\n', '            variable_names_t = self.variable_names()\n', '\n', '            if variable_names_s.issubset(variable_names_t):\n', '                return eval(str(element),self.gens_dict(copy=False))\n', '\n', '            elif element.parent().ngens() <= self.ngens():\n', '                Q = element.parent()\n', '                gens_map = dict(zip(Q.variable_names(),self.gens()[:Q.ngens()]))\n', '                return eval(str(element),gens_map)\n', '\n', '        if isinstance(element, str):\n', '            # let python do the parsing\n', '            d = self.gens_dict()\n', '            if self.base_ring().gen() != 1:\n', '                d[str(self.base_ring().gen())]=self.base_ring().gen()\n', '            try:\n', "                if '/' in element:\n", '                    element = sage_eval(element,d)\n', '                else:\n', '                    element = element.replace("^","**")\n', '                    element = eval(element, d, {})\n', '            except (SyntaxError, NameError):\n', '                raise TypeError("Could not find a mapping of the passed element to this ring.")\n', '\n', '            # we need to do this, to make sure that we actually get an\n', '            # element in self.\n', '            return self._coerce_c(element)\n', '\n', '        if isinstance(element, dict):\n', '            if len(element)==0:\n', '                _p = p_ISet(0, _ring)\n', '            else:\n', '                bucket = sBucketCreate(_ring)\n', '                try:\n', '                    for (m,c) in element.iteritems():\n', '                        if check:\n', '                            c = base_ring(c)\n', '                        if not c:\n', '                            continue\n', '                        mon = p_Init(_ring)\n', '                        p_SetCoeff(mon, sa2si(c , _ring), _ring)\n', '                        if len(m) != self.ngens():\n', '                            raise TypeError("tuple key must have same length as ngens")\n', '                        for pos from 0 <= pos < len(m):\n', '                            if m[pos]:\n', '                                overflow_check(m[pos], _ring)\n', '                                p_SetExp(mon, pos+1, m[pos], _ring)\n', '                        p_Setm(mon, _ring)\n', '                        sBucket_Merge_m(bucket, mon)\n', '                    e=0\n', '                    sBucketClearMerge(bucket, &_p, &e)\n', '                    sBucketDestroy(&bucket)\n', '                except TypeError:\n', '                    sBucketDeleteAndDestroy(&bucket)\n', '                    raise\n', '            return new_MP(self, _p)\n', '\n', "        try: #if hasattr(element,'_polynomial_'):\n", '            # SymbolicVariable\n', '            return element._polynomial_(self)\n', '        except AttributeError:\n', '            pass\n', '\n', '        if is_Macaulay2Element(element):\n', '            return self(element.external_string())\n', '        try:\n', '            return self(str(element))\n', '        except TypeError:\n', '            pass\n', '\n', '        try:\n', "            # now try calling the base ring's __call__ methods\n", '            element = self.base_ring()(element)\n', '            _p = p_NSet(sa2si(element,_ring), _ring)\n', '            return new_MP(self,_p)\n', '        except (TypeError, ValueError):\n', '            raise TypeError("Could not find a mapping of the passed element to this ring.")\n', '\n', '    def _repr_(self):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y> = QQ[]\n', '            sage: P # indirect doctest\n', '            Multivariate Polynomial Ring in x, y over Rational Field\n', '        """\n', '        varstr = ", ".join(char_to_str(rRingVar(i,self._ring))\n', '                           for i in range(self.__ngens))\n', '        return "Multivariate Polynomial Ring in %s over %s" % (varstr, self.base_ring())\n', '\n', '    def ngens(self):\n', '        """\n', '        Returns the number of variables in this multivariate polynomial ring.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y> = QQ[]\n', '            sage: P.ngens()\n', '            2\n', '\n', '            sage: k.<a> = GF(2^16)\n', "            sage: P = PolynomialRing(k,1000,'x')\n", '            sage: P.ngens()\n', '            1000\n', '        """\n', '        return int(self.__ngens)\n', '\n', '    def gen(self, int n=0):\n', '        """\n', '        Returns the ``n``-th generator of this multivariate polynomial\n', '        ring.\n', '\n', '        INPUT:\n', '\n', '        - ``n`` -- an integer ``>= 0``\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.gen(),P.gen(1)\n', '            (x, y)\n', '\n', "            sage: P = PolynomialRing(GF(127),1000,'x')\n", '            sage: P.gen(500)\n', '            x500\n', '\n', '            sage: P.<SAGE,SINGULAR> = QQ[] # weird names\n', '            sage: P.gen(1)\n', '            SINGULAR\n', '        """\n', '        cdef poly *_p\n', '        cdef ring *_ring = self._ring\n', '\n', '        if n < 0 or n >= self.__ngens:\n', '            raise ValueError("Generator not defined.")\n', '\n', '        rChangeCurrRing(_ring)\n', '        _p = p_ISet(1, _ring)\n', '        p_SetExp(_p, n+1, 1, _ring)\n', '        p_Setm(_p, _ring);\n', '\n', '        return new_MP(self, _p)\n', '\n', '    def ideal(self, *gens, **kwds):\n', '        """\n', '        Create an ideal in this polynomial ring.\n', '\n', '        INPUT:\n', '\n', '        - ``*gens`` - list or tuple of generators (or several input arguments)\n', '\n', '        - ``coerce`` - bool (default: ``True``); this must be a\n', '          keyword argument. Only set it to ``False`` if you are certain\n', '          that each generator is already in the ring.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: sage.rings.ideal.Katsura(P)\n', '            Ideal (x + 2*y + 2*z - 1, x^2 + 2*y^2 + 2*z^2 - x, 2*x*y + 2*y*z - y) of Multivariate Polynomial Ring in x, y, z over Rational Field\n', '\n', '            sage: P.ideal([x + 2*y + 2*z-1, 2*x*y + 2*y*z-y, x^2 + 2*y^2 + 2*z^2-x])\n', '            Ideal (x + 2*y + 2*z - 1, 2*x*y + 2*y*z - y, x^2 + 2*y^2 + 2*z^2 - x) of Multivariate Polynomial Ring in x, y, z over Rational Field\n', '        """\n', "        coerce = kwds.get('coerce', True)\n", '        if len(gens) == 1:\n', '            gens = gens[0]\n', '        from sage.rings.ideal import is_Ideal\n', '        if is_Ideal(gens):\n', '            if gens.ring() is self:\n', '                return gens\n', '            gens = gens.gens()\n', '        if is_SingularElement(gens):\n', '            gens = list(gens)\n', '            coerce = True\n', '        elif is_Macaulay2Element(gens):\n', '            gens = list(gens)\n', '            coerce = True\n', '        if not isinstance(gens, (list, tuple)):\n', '            gens = [gens]\n', '        if coerce:\n', '            gens = [self(x) for x in gens]  # this will even coerce from singular ideals correctly!\n', '        return MPolynomialIdeal(self, gens, coerce=False)\n', '\n', '    def _macaulay2_(self, macaulay2=macaulay2_default):\n', '        """\n', '        Create an M2 representation of this polynomial ring if\n', '        Macaulay2 is installed.\n', '\n', '        INPUT:\n', '\n', '        - ``macaulay2`` - M2 interpreter (default: ``macaulay2_default``)\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = ZZ[]\n', '            sage: macaulay2(R).describe()  # optional - macaulay2\n', '            ZZ[x..y, Degrees => {2:1}, Heft => {1}, MonomialOrder => {MonomialSize => 16},\n', '                                                                     {GRevLex => {2:1}  }\n', '                                                                     {Position => Up    }\n', '            --------------------------------------------------------------------------------\n', '            DegreeRank => 1]\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: macaulay2(R)  # optional - macaulay2\n', '            QQ[x, y]\n', '\n', '            sage: R.<x,y> = GF(17)[]\n', '            sage: macaulay2(R)  # optional - macaulay2\n', '            ZZ\n', '            --[x, y]\n', '            17\n', '        """\n', '        try:\n', '            R = self.__macaulay2\n', '            if R is None or not (R.parent() is macaulay2):\n', '                raise ValueError\n', '            R._check_valid()\n', '            return R\n', '        except (AttributeError, ValueError):\n', '            self.__macaulay2 = macaulay2(self._macaulay2_init_(macaulay2))\n', '        return self.__macaulay2\n', '\n', '    def _macaulay2_init_(self, macaulay2=None):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: PolynomialRing(QQ, 'x', 2, order='deglex')._macaulay2_init_()     # optional - macaulay2\n", "            'sage...[symbol x0,symbol x1, MonomialSize=>16, MonomialOrder=>GLex]'\n", '        """\n', '        if macaulay2 is None:\n', '            macaulay2 = macaulay2_default\n', '        return macaulay2._macaulay2_input_ring(self.base_ring(), self.gens(),\n', '                                               self.term_order().macaulay2_str())\n', '\n', '    def _singular_(self, singular=singular_default):\n', '        """\n', '        Create a SINGULAR (as in the computer algebra system)\n', '        representation of this polynomial ring. The result is cached.\n', '\n', '        INPUT:\n', '\n', '        - ``singular`` - SINGULAR interpreter (default: ``singular_default``)\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P._singular_()\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 3\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y z\n', '            //        block   2 : ordering C\n', '\n', '            sage: P._singular_() is P._singular_()\n', '            True\n', '\n', '            sage: P._singular_().name() == P._singular_().name()\n', '            True\n', '\n', '            sage: k.<a> = GF(3^3)\n', '            sage: P.<x,y,z> = PolynomialRing(k,3)\n', '            sage: P._singular_()\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: ZZ/3[a]/(a^3-a+1)\n', '            //   number of vars : 3\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y z\n', '            //        block   2 : ordering C\n', '\n', '            sage: P._singular_() is P._singular_()\n', '            True\n', '\n', '            sage: P._singular_().name() == P._singular_().name()\n', '            True\n', '\n', '        TESTS:\n', '            sage: P.<x> = QQ[]\n', '            sage: P._singular_()\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 1\n', '            //        block   1 : ordering lp\n', '            //                  : names    x\n', '            //        block   2 : ordering C\n', '        """\n', '        try:\n', '            R = self.__singular\n', '            if R is None or not (R.parent() is singular):\n', '                raise ValueError\n', '            R._check_valid()\n', '            if not self.base_ring().is_field():\n', '                return R\n', '            if self.base_ring().is_prime_field():\n', '                return R\n', '            if self.base_ring().is_finite() \\\n', '                    or (isinstance(self.base_ring(), NumberField) and self.base_ring().is_absolute()):\n', '                R.set_ring() #sorry for that, but needed for minpoly\n', '                if  singular.eval(\'minpoly\') != "(" + self.__minpoly + ")":\n', '                    singular.eval("minpoly=%s"%(self.__minpoly))\n', "                    self.__minpoly = singular.eval('minpoly')[1:-1] # store in correct format\n", '            return R\n', '        except (AttributeError, ValueError):\n', '            return self._singular_init_(singular)\n', '\n', '    def _singular_init_(self, singular=singular_default):\n', '        """\n', '        Create a SINGULAR (as in the computer algebra system)\n', '        representation of this polynomial ring. The result is NOT\n', '        cached.\n', '\n', '        INPUT:\n', '\n', '        - ``singular`` - SINGULAR interpreter (default: ``singular_default``)\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P._singular_init_()\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 3\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y z\n', '            //        block   2 : ordering C\n', '            sage: P._singular_init_() is P._singular_init_()\n', '            False\n', '\n', '            sage: P._singular_init_().name() == P._singular_init_().name()\n', '            False\n', '\n', "            sage: w = var('w')\n", "            sage: R.<x,y> = PolynomialRing(NumberField(w^2+1,'s'))\n", '            sage: singular(R)\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ[s]/(s^2+1)\n', '            //   number of vars : 2\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = PolynomialRing(GF(2**8,'a'),10,'x', order='invlex')\n", '            sage: singular(R)\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: ZZ/2[a]/(a^8+a^4+a^3+a^2+1)\n', '            //   number of vars : 10\n', '            //        block   1 : ordering rp\n', '            //                  : names    x0 x1 x2 x3 x4 x5 x6 x7 x8 x9\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = PolynomialRing(GF(127),2,'x', order='invlex')\n", '            sage: singular(R)\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: ZZ/127\n', '            //   number of vars : 2\n', '            //        block   1 : ordering rp\n', '            //                  : names    x0 x1\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = PolynomialRing(QQ,2,'x', order='invlex')\n", '            sage: singular(R)\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 2\n', '            //        block   1 : ordering rp\n', '            //                  : names    x0 x1\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = PolynomialRing(QQ,2,'x', order='degneglex')\n", '            sage: singular(R)\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 2\n', '            //        block   1 : ordering a\n', '            //                  : names    x0 x1\n', '            //                  : weights   1  1\n', '            //        block   2 : ordering ls\n', '            //                  : names    x0 x1\n', '            //        block   3 : ordering C\n', '\n', "            sage: R = PolynomialRing(QQ,'x')\n", '            sage: singular(R)\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 1\n', '            //        block   1 : ordering lp\n', '            //                  : names    x\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = PolynomialRing(GF(127),'x')\n", '            sage: singular(R)\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: ZZ/127\n', '            //   number of vars : 1\n', '            //        block   1 : ordering lp\n', '            //                  : names    x\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = ZZ['x,y']\n", '            sage: singular(R)\n', '            polynomial ring, over a domain, global ordering\n', '            //   coefficients: ZZ\n', '            //   number of vars : 2\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = IntegerModRing(1024)['x,y']\n", '            sage: singular(R)\n', '            polynomial ring, over a ring (with zero-divisors), global ordering\n', '            //   coefficients: ZZ/(2^10)\n', '            //   number of vars : 2\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y\n', '            //        block   2 : ordering C\n', '\n', "            sage: R = IntegerModRing(15)['x,y']\n", '            sage: singular(R)\n', '            polynomial ring, over a ring (with zero-divisors), global ordering\n', '            //   coefficients: ZZ/bigint(15)\n', '            //   number of vars : 2\n', '            //        block   1 : ordering dp\n', '            //                  : names    x y\n', '            //        block   2 : ordering C\n', '\n', '        TESTS::\n', '\n', '            sage: P.<x> = QQ[]\n', '            sage: P._singular_init_()\n', '            polynomial ring, over a field, global ordering\n', '            //   coefficients: QQ\n', '            //   number of vars : 1\n', '            //        block   1 : ordering lp\n', '            //                  : names    x\n', '            //        block   2 : ordering C\n', '\n', '        """\n', '        from sage.functions.other import ceil\n', '\n', '        if self.ngens()==1:\n', '            _vars = str(self.gen())\n', '            if "*" in _vars: # 1.000...000*x\n', '                _vars = _vars.split("*")[1]\n', '        else:\n', '            _vars = str(self.gens())\n', '\n', '        order = self.term_order().singular_str()%dict(ngens=self.ngens())\n', '\n', '        base_ring = self.base_ring()\n', '\n', '        if is_RealField(base_ring):\n', '            # singular converts to bits from base_10 in mpr_complex.cc by:\n', '            #  size_t bits = 1 + (size_t) ((float)digits * 3.5);\n', '            precision = base_ring.precision()\n', '            digits = ceil((2*precision - 2)/7.0)\n', '            self.__singular = singular.ring("(real,%d,0)"%digits, _vars, order=order)\n', '\n', '        elif is_ComplexField(base_ring):\n', '            # singular converts to bits from base_10 in mpr_complex.cc by:\n', '            #  size_t bits = 1 + (size_t) ((float)digits * 3.5);\n', '            precision = base_ring.precision()\n', '            digits = ceil((2*precision - 2)/7.0)\n', '            self.__singular = singular.ring("(complex,%d,0,I)"%digits, _vars,  order=order)\n', '\n', '        elif base_ring.is_prime_field():\n', '            self.__singular = singular.ring(self.characteristic(), _vars, order=order)\n', '\n', '        elif base_ring.is_field() and base_ring.is_finite(): #must be extension field\n', '            gen = str(base_ring.gen())\n', '            r = singular.ring( "(%s,%s)"%(self.characteristic(),gen), _vars, order=order)\n', '            self.__minpoly = (str(base_ring.modulus()).replace("x",gen)).replace(" ","")\n', '            if  singular.eval(\'minpoly\') != "(" + self.__minpoly + ")":\n', '                singular.eval("minpoly=%s"%(self.__minpoly) )\n', "                self.__minpoly = singular.eval('minpoly')[1:-1]\n", '            self.__singular = r\n', '\n', '        elif isinstance(base_ring, NumberField) and base_ring.is_absolute():\n', '            gen = str(base_ring.gen())\n', '            poly = base_ring.polynomial()\n', '            poly_gen = str(poly.parent().gen())\n', '            poly_str = str(poly).replace(poly_gen,gen)\n', '            r = singular.ring( "(%s,%s)"%(self.characteristic(),gen), _vars, order=order, check=False)\n', '            self.__minpoly = (poly_str).replace(" ","")\n', '            if  singular.eval(\'minpoly\') != "(" + self.__minpoly + ")":\n', '                singular.eval("minpoly=%s"%(self.__minpoly) )\n', "                self.__minpoly = singular.eval('minpoly')[1:-1]\n", '            self.__singular = r\n', '\n', '        elif is_IntegerRing(base_ring):\n', '            self.__singular = singular.ring("(integer)", _vars, order=order)\n', '\n', '        elif is_IntegerModRing(base_ring):\n', '            ch = base_ring.characteristic()\n', '            if ch.is_power_of(2):\n', '                exp = ch.nbits() -1\n', '                self.__singular = singular.ring("(integer,2,%d)"%(exp,), _vars, order=order, check=False)\n', '            else:\n', '                self.__singular = singular.ring("(integer,%d)"%(ch,), _vars, order=order, check=False)\n', '\n', '        else:\n', '            raise TypeError("no conversion to a Singular ring defined")\n', '\n', '        return self.__singular\n', '\n', '    # It is required in cython to redefine __hash__ when __richcmp__ is\n', '    # overloaded. Also just writing\n', '    #         __hash__ = CategoryObject.__hash__\n', "    # doesn't work.\n", '    def __hash__(self):\n', '        """\n', '        Return a hash for this ring, that is, a hash of the string\n', '        representation of this polynomial ring.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: hash(P)      # somewhat random output\n', '            967902441410893180 # 64-bit\n', '            -1767675994        # 32-bit\n', '        """\n', '        return CategoryObject.__hash__(self)\n', '\n', '    def __richcmp__(left, right, int op):\n', '        r"""\n', '        Multivariate polynomial rings are said to be equal if:\n', '\n', '        - their base rings match,\n', '        - their generator names match and\n', '        - their term orderings match.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: R.<x,y,z> = QQ[]\n', '            sage: P == R\n', '            True\n', '\n', '            sage: R.<x,y,z> = GF(127)[]\n', '            sage: P == R\n', '            False\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: P == R\n', '            False\n', '\n', "            sage: R.<x,y,z> = PolynomialRing(QQ,order='invlex')\n", '            sage: P == R\n', '            False\n', '\n', '        TESTS::\n', '\n', "            sage: R = QQ['x', 'y']; R\n", '            Multivariate Polynomial Ring in x, y over Rational Field\n', '            sage: R == R\n', '            True\n', "            sage: R == QQ['x','z']\n", '            False\n', '        """\n', '        if left is right:\n', '            return rich_to_bool(op, 0)\n', '\n', '        if not isinstance(right, Parent) or not isinstance(left, Parent):\n', '            # One is not a parent -- not equal and not ordered\n', '            return op == Py_NE\n', '\n', '        if not isinstance(right, (MPolynomialRing_libsingular,\n', '                                  MPolynomialRing_polydict_domain)):\n', '            return op == Py_NE\n', '\n', '        def cmp_key(x):\n', '            return (x.base_ring(), [str(v) for v in x.gens()], x.term_order())\n', '        return richcmp(cmp_key(left), cmp_key(right), op)\n', '\n', '    def __reduce__(self):\n', '        """\n', '        Serializes self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: P.<x,y,z> = PolynomialRing(QQ, order='degrevlex')\n", '            sage: P == loads(dumps(P))\n', '            True\n', '\n', "            sage: P.<x,y,z> = PolynomialRing(ZZ, order='degrevlex')\n", '            sage: P == loads(dumps(P))\n', '            True\n', '\n', "            sage: P = PolynomialRing(GF(127), names='abc')\n", '            sage: P == loads(dumps(P))\n', '            True\n', '\n', "            sage: P = PolynomialRing(GF(2^8,'F'), names='abc')\n", '            sage: P == loads(dumps(P))\n', '            True\n', '\n', "            sage: P = PolynomialRing(GF(2^16,'B'), names='abc')\n", '            sage: P == loads(dumps(P))\n', '            True\n', "            sage: z = QQ['z'].0\n", "            sage: P = PolynomialRing(NumberField(z^2 + 3,'B'), names='abc')\n", '            sage: P == loads(dumps(P))\n', '            True\n', '        """\n', '        return unpickle_MPolynomialRing_libsingular, \\\n', '            (self.base_ring(), self.variable_names(), self.term_order())\n', '\n', '    def __temporarily_change_names(self, names, latex_names):\n', '        """\n', '        This is used by the variable names context manager.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = QQ[] # indirect doctest\n', "            sage: with localvars(R, 'z,w'):\n", '            ....:      print(x^3 + y^3 - x*y)\n', '            z^3 + w^3 - z*w\n', '        """\n', '        cdef ring *_ring = self._ring\n', '        cdef char **_names\n', '        cdef char **_orig_names\n', '        cdef int i\n', '\n', '        if len(names) != _ring.N:\n', '            raise TypeError("len(names) doesn\'t equal self.ngens()")\n', '\n', '        old = self._names, self._latex_names\n', '        (self._names, self._latex_names) = names, latex_names\n', '\n', '        _names = <char**>omAlloc0(sizeof(char*)*_ring.N)\n', '        for i from 0 <= i < _ring.N:\n', '            _name = str_to_bytes(names[i])\n', '            _names[i] = omStrDup(_name)\n', '\n', '        _orig_names = _ring.names\n', '        _ring.names = _names\n', '\n', '        for i from 0 <= i < _ring.N:\n', '            omFree(_orig_names[i])\n', '        omFree(_orig_names)\n', '\n', '        return old\n', '\n', '    ### The following methods are handy for implementing Groebner\n', '    ### basis algorithms. They do only superficial type/sanity checks\n', '    ### and should be called carefully.\n', '\n', '    def monomial_quotient(self, MPolynomial_libsingular f, MPolynomial_libsingular g, coeff=False):\n', '        r"""\n', '        Return ``f/g``, where both ``f`` and`` ``g`` are treated as\n', '        monomials.\n', '\n', '        Coefficients are ignored by default.\n', '\n', '        INPUT:\n', '\n', '        - ``f`` - monomial\n', '        - ``g`` - monomial\n', '        - ``coeff`` - divide coefficients as well (default: ``False``)\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_quotient(3/2*x*y,x)\n', '            y\n', '\n', '            sage: P.monomial_quotient(3/2*x*y,x,coeff=True)\n', '            3/2*y\n', '\n', '        Note, that `\\ZZ` behaves different if ``coeff=True``::\n', '\n', '            sage: P.monomial_quotient(2*x,3*x)\n', '            1\n', '\n', '            sage: P.<x,y> = PolynomialRing(ZZ)\n', '            sage: P.monomial_quotient(2*x,3*x,coeff=True)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ArithmeticError: Cannot divide these coefficients.\n', '\n', '        TESTS::\n', '\n', '            sage: R.<x,y,z> = QQ[]\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_quotient(x*y,x)\n', '            y\n', '\n', '            sage: P.monomial_quotient(x*y,R.gen())\n', '            y\n', '\n', '            sage: P.monomial_quotient(P(0),P(1))\n', '            0\n', '\n', '            sage: P.monomial_quotient(P(1),P(0))\n', '            Traceback (most recent call last):\n', '            ...\n', '            ZeroDivisionError\n', '\n', '            sage: P.monomial_quotient(P(3/2),P(2/3), coeff=True)\n', '            9/4\n', '\n', '            sage: P.monomial_quotient(x,y) # Note the wrong result\n', '            x*y^65535*z^65535\n', '\n', '            sage: P.monomial_quotient(x,P(1))\n', '            x\n', '\n', '        .. warning::\n', '\n', '           Assumes that the head term of f is a multiple of the head\n', '           term of g and return the multiplicant m. If this rule is\n', '           violated, funny things may happen.\n', '        """\n', '        cdef poly *res\n', '        cdef ring *r = self._ring\n', '        cdef number *n\n', '        cdef number *denom\n', '\n', '        if self is not f._parent:\n', '            f = self._coerce_c(f)\n', '        if self is not g._parent:\n', '            g = self._coerce_c(g)\n', '\n', '        if not f._poly:\n', '            return self._zero_element\n', '        if not g._poly:\n', '            raise ZeroDivisionError\n', '\n', '        if r is not currRing:\n', '            rChangeCurrRing(r)\n', '        res = pMDivide(f._poly, g._poly)\n', '        if coeff:\n', '            if r.cf.type == n_unknown or r.cf.cfDivBy(p_GetCoeff(f._poly, r), p_GetCoeff(g._poly, r), r.cf):\n', '                n = r.cf.cfDiv( p_GetCoeff(f._poly, r) , p_GetCoeff(g._poly, r), r.cf)\n', '                p_SetCoeff0(res, n, r)\n', '            else:\n', '                raise ArithmeticError("Cannot divide these coefficients.")\n', '        else:\n', '            p_SetCoeff0(res, n_Init(1, r), r)\n', '        return new_MP(self, res)\n', '\n', '    def monomial_divides(self, MPolynomial_libsingular a, MPolynomial_libsingular b):\n', '        """\n', '        Return ``False`` if a does not divide b and ``True``\n', '        otherwise.\n', '\n', '        Coefficients are ignored.\n', '\n', '        INPUT:\n', '\n', '        - ``a`` -- monomial\n', '\n', '        - ``b`` -- monomial\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_divides(x*y*z, x^3*y^2*z^4)\n', '            True\n', '            sage: P.monomial_divides(x^3*y^2*z^4, x*y*z)\n', '            False\n', '\n', '        TESTS::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_divides(P(1), P(0))\n', '            True\n', '            sage: P.monomial_divides(P(1), x)\n', '            True\n', '        """\n', '        cdef poly *_a\n', '        cdef poly *_b\n', '        cdef ring *_r\n', '        if a._parent is not b._parent:\n', '            b = a._parent._coerce_c(b)\n', '\n', '        _a = a._poly\n', '        _b = b._poly\n', '        _r = a._parent_ring\n', '\n', '        if _a == NULL:\n', '            raise ZeroDivisionError\n', '        if _b == NULL:\n', '            return True\n', '\n', '        if not p_DivisibleBy(_a, _b, _r):\n', '            return False\n', '        else:\n', '            return True\n', '\n', '\n', '    def monomial_lcm(self, MPolynomial_libsingular f, MPolynomial_libsingular g):\n', '        """\n', '        LCM for monomials. Coefficients are ignored.\n', '\n', '        INPUT:\n', '\n', '        - ``f`` - monomial\n', '\n', '        - ``g`` - monomial\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_lcm(3/2*x*y,x)\n', '            x*y\n', '\n', '        TESTS::\n', '\n', '            sage: R.<x,y,z> = QQ[]\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_lcm(x*y,R.gen())\n', '            x*y\n', '\n', '            sage: P.monomial_lcm(P(3/2),P(2/3))\n', '            1\n', '\n', '            sage: P.monomial_lcm(x,P(1))\n', '            x\n', '        """\n', '        cdef poly *m = p_ISet(1,self._ring)\n', '\n', '        if self is not f._parent:\n', '            f = self._coerce_c(f)\n', '        if self is not g._parent:\n', '            g = self._coerce_c(g)\n', '\n', '        if f._poly == NULL:\n', '            if g._poly == NULL:\n', '                return self._zero_element\n', '            else:\n', '                raise ArithmeticError("Cannot compute LCM of zero and nonzero element.")\n', '        if g._poly == NULL:\n', '            raise ArithmeticError("Cannot compute LCM of zero and nonzero element.")\n', '\n', '        if(self._ring != currRing): rChangeCurrRing(self._ring)\n', '\n', '        pLcm(f._poly, g._poly, m)\n', '        p_Setm(m, self._ring)\n', '        return new_MP(self,m)\n', '\n', '    def monomial_reduce(self, MPolynomial_libsingular f, G):\n', '        """\n', '        Try to find a ``g`` in ``G`` where ``g.lm()`` divides\n', '        ``f``. If found ``(flt,g)`` is returned, ``(0,0)`` otherwise,\n', '        where ``flt`` is ``f/g.lm()``.\n', '\n', '        It is assumed that ``G`` is iterable and contains *only*\n', '        elements in this polynomial ring.\n', '\n', '        Coefficients are ignored.\n', '\n', '        INPUT:\n', '\n', '        - ``f`` - monomial\n', '        - ``G`` - list/set of mpolynomials\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: f = x*y^2\n', '            sage: G = [ 3/2*x^3 + y^2 + 1/2, 1/4*x*y + 2/7, 1/2  ]\n', '            sage: P.monomial_reduce(f,G)\n', '            (y, 1/4*x*y + 2/7)\n', '\n', '        TESTS::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: f = x*y^2\n', '            sage: G = [ 3/2*x^3 + y^2 + 1/2, 1/4*x*y + 2/7, 1/2  ]\n', '\n', '            sage: P.monomial_reduce(P(0),G)\n', '            (0, 0)\n', '\n', '            sage: P.monomial_reduce(f,[P(0)])\n', '            (0, 0)\n', '        """\n', '        cdef poly *m = f._poly\n', '        cdef ring *r = self._ring\n', '        cdef poly *flt\n', '\n', '        if not m:\n', '            return (f, f)\n', '\n', '        for g in G:\n', '            if isinstance(g, MPolynomial_libsingular) and g:\n', '                h = <MPolynomial_libsingular>g\n', '                if h._parent is self and p_LmDivisibleBy(h._poly, m, r):\n', '                    if r is not currRing:\n', '                        rChangeCurrRing(r)\n', '                    flt = pMDivide(f._poly, h._poly)\n', '                    p_SetCoeff(flt, n_Init(1, r), r)\n', '                    return (new_MP(self, flt), h)\n', '        return (self._zero_element, self._zero_element)\n', '\n', '    def monomial_pairwise_prime(self, MPolynomial_libsingular g, MPolynomial_libsingular h):\n', '        """\n', '        Return ``True`` if ``h`` and ``g`` are pairwise prime. Both\n', '        are treated as monomials.\n', '\n', '        Coefficients are ignored.\n', '\n', '        INPUT:\n', '\n', '        - ``h`` - monomial\n', '        - ``g`` - monomial\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_pairwise_prime(x^2*z^3, y^4)\n', '            True\n', '\n', '            sage: P.monomial_pairwise_prime(1/2*x^3*y^2, 3/4*y^3)\n', '            False\n', '\n', '        TESTS::\n', '\n', '            sage: Q.<x,y,z> = QQ[]\n', '            sage: P.<x,y,z> = QQ[]\n', "            sage: P.monomial_pairwise_prime(x^2*z^3, Q('y^4'))\n", '            True\n', '\n', '            sage: P.monomial_pairwise_prime(1/2*x^3*y^2, Q(0))\n', '            True\n', '\n', '            sage: P.monomial_pairwise_prime(P(1/2),x)\n', '            False\n', '        """\n', '        cdef int i\n', '        cdef ring *r\n', '        cdef poly *p\n', '        cdef poly *q\n', '\n', '        if h._parent is not g._parent:\n', '            g = h._parent._coerce_c(g)\n', '\n', '        r = h._parent_ring\n', '        p = g._poly\n', '        q = h._poly\n', '\n', '        if p == NULL:\n', '            if q == NULL:\n', '                return False #GCD(0,0) = 0\n', '            else:\n', '                return True #GCD(x,0) = 1\n', '        elif q == NULL:\n', '            return True # GCD(0,x) = 1\n', '        elif p_IsConstant(p,r) or p_IsConstant(q,r): # assuming a base field\n', '            return False\n', '\n', '        for i from 1 <= i <= r.N:\n', '            if p_GetExp(p,i,r) and p_GetExp(q,i,r):\n', '                return False\n', '        return True\n', '\n', '    def monomial_all_divisors(self, MPolynomial_libsingular t):\n', '        """\n', '        Return a list of all monomials that divide ``t``.\n', '\n', '        Coefficients are ignored.\n', '\n', '        INPUT:\n', '\n', '        - ``t`` - a monomial\n', '\n', '        OUTPUT:\n', '            a list of monomials\n', '\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = QQ[]\n', '            sage: P.monomial_all_divisors(x^2*z^3)\n', '            [x, x^2, z, x*z, x^2*z, z^2, x*z^2, x^2*z^2, z^3, x*z^3, x^2*z^3]\n', '\n', '        ALGORITHM: addwithcarry idea by Toon Segers\n', '        """\n', '\n', '        M = list()\n', '\n', '        cdef ring *_ring = self._ring\n', '        cdef poly *maxvector = t._poly\n', '        cdef poly *tempvector = p_ISet(1, _ring)\n', '\n', '        pos = 1\n', '\n', '        while not p_ExpVectorEqual(tempvector, maxvector, _ring):\n', '          tempvector = addwithcarry(tempvector, maxvector, pos, _ring)\n', '          M.append(new_MP(self, p_Copy(tempvector, _ring)))\n', '        return M\n'], 261)
> sage: sage_getsourcelines(I) ## line 2311 ##
> (['class MPolynomialIdeal( MPolynomialIdeal_singular_repr, \\\n', '                        MPolynomialIdeal_macaulay2_repr, \\\n', '                        MPolynomialIdeal_magma_repr, \\\n', '                        Ideal_generic ):\n', '    def __init__(self, ring, gens, coerce=True):\n', '        r"""\n', '        Create an ideal in a multivariate polynomial ring.\n', '\n', '        INPUT:\n', '\n', '        - ``ring`` - the ring the ideal is defined in\n', '\n', '        - ``gens`` - a list of generators for the ideal\n', '\n', '        - ``coerce`` - coerce elements to the ring ``ring``?\n', '\n', '        EXAMPLES::\n', '\n', "            sage: R.<x,y> = PolynomialRing(IntegerRing(), 2, order='lex')\n", '            sage: R.ideal([x, y])\n', '            Ideal (x, y) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '            sage: R.<x0,x1> = GF(3)[]\n', '            sage: R.ideal([x0^2, x1^3])\n', '            Ideal (x0^2, x1^3) of Multivariate Polynomial Ring in x0, x1 over Finite Field of size 3\n', '        """\n', '        Ideal_generic.__init__(self, ring, gens, coerce=coerce)\n', '        self._gb_by_ordering = dict()\n', '\n', '    def __hash__(self):\n', '        r"""\n', '        Stupid constant hash function!\n', '\n', '        TESTS::\n', '\n', "            sage: R.<x,y> = PolynomialRing(IntegerRing(), 2, order='lex')\n", '            sage: hash(R.ideal([x, y]))\n', '            0\n', '        """\n', '        return 0\n', '\n', '    @cached_method\n', '    def gens(self):\n', '        """\n', '        Return a set of generators / a basis of this ideal. This is usually the\n', '        set of generators provided during object creation.\n', '\n', '        EXAMPLES::\n', '\n', '           sage: P.<x,y> = PolynomialRing(QQ,2)\n', '           sage: I = Ideal([x,y+1]); I\n', '           Ideal (x, y + 1) of Multivariate Polynomial Ring in x, y over Rational Field\n', '           sage: I.gens()\n', '           [x, y + 1]\n', '         """\n', '        from sage.rings.polynomial.multi_polynomial_sequence import PolynomialSequence\n', '        return PolynomialSequence(self.ring(), Ideal_generic.gens(self), immutable=True)\n', '\n', '    @property\n', '    def basis(self):\n', '        """\n', '        Shortcut to ``gens()``.\n', '\n', '        EXAMPLES::\n', '\n', '           sage: P.<x,y> = PolynomialRing(QQ,2)\n', '           sage: I = Ideal([x,y+1])\n', '           sage: I.basis\n', '           [x, y + 1]\n', '\n', '        """\n', '        return self.gens()\n', '\n', '    def __richcmp__(self, other, op):\n', '        """\n', '        Compare ``self`` and ``other``.\n', '\n', '        INPUT:\n', '\n', '        - ``other`` -- a polynomial ideal\n', '\n', '        OUTPUT:\n', '\n', '        boolean\n', '\n', '        ALGORITHM:\n', '\n', '        Comparison for ``==`` and ``!=`` compares two Groebner bases.\n', '\n', '        Comparison for ``<=` and ``>=`` tests the inclusion of ideals\n', '        using the usual ideal membership test, namely all generators\n', "        of one ideal must reduce to zero in the other ideal's Groebner\n", '        basis.\n', '\n', '        Comparison for ``<`` and ``>`` tests for inclusion and different\n', '        Groebner bases.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = ZZ[]; I = R*[x^2 + y, 2*y]; J = R*[x^2 + y]\n', '            sage: I > J\n', '            True\n', '            sage: J < I\n', '            True\n', '            sage: I == I\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R.<x,y> = GF(32003)[]\n', '            sage: I = R*[x^2 + x, y]\n', '            sage: J = R*[x + 1, y]\n', '            sage: J < I\n', '            False\n', '            sage: I < J\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R.<x,y> = GF(32003)[]\n', '            sage: I = R*[x^2 + x, y]\n', '            sage: J = R*[x + 1, y]\n', '            sage: J > I\n', '            True\n', '            sage: I > J\n', '            False\n', '\n', '        ::\n', '\n', "            sage: R = PolynomialRing(QQ,'x,y,z')\n", '            sage: I = R.ideal()\n', '            sage: I == R.ideal()\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R = PolynomialRing(QQ, names=[])\n', '            sage: R.ideal(0) == R.ideal(0)\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: I = (x^3 + y, y)*R\n', '            sage: J = (x^3 + y, y, y*x^3 + y^2)*R\n', '            sage: I == J\n', '            True\n', '\n', '        ::\n', '\n', "            sage: R = PolynomialRing(QQ, 'x,y,z', order='degrevlex')\n", "            sage: S = PolynomialRing(QQ, 'x,y,z', order='invlex')\n", '            sage: I = R.ideal([R.0,R.1])\n', '            sage: J = S.ideal([S.0,S.1])\n', '            sage: I == J\n', '            True\n', '\n', '        TESTS:\n', '\n', '        We test to make sure that pickling works with the cached\n', '        Groebner basis::\n', '\n', '            sage: R.<x,y> = GF(32003)[]\n', '            sage: I = R*[x^2 + x, y]\n', '            sage: J = R*[x + 1, y]\n', '            sage: J >= I\n', '            True\n', '            sage: I >= J\n', '            False\n', '\n', '            sage: loads(dumps(I)).__getstate__()\n', '            (Monoid of ideals of Multivariate Polynomial Ring in x, y over Finite Field of size 32003,\n', "             {'_Ideal_generic__ring': Multivariate Polynomial Ring in x, y over Finite Field of size 32003,\n", "              '_Ideal_generic__gens': (x^2 + x, y),\n", "              '_gb_by_ordering': {'degrevlex': [x^2 + x, y]},\n", '              \'gens\': Pickle of the cached method "gens",\n', "              '_cache__groebner_basis': {},\n", '              \'groebner_basis\': Pickle of the cached method "groebner_basis"})\n', '\n', '        This example checks :trac:`12802`::\n', '\n', '            sage: R.<x,y> = ZZ[]\n', '            sage: I = R * [ x^2 + y, 2*y ]\n', '            sage: J = R * [ x^2 - y, 2*y ]\n', '            sage: I == J\n', '            True\n', '\n', '        Another good test from the discussion in :trac:`12802`::\n', '\n', '            sage: Rx = PolynomialRing(QQ, 2, "x")\n', '            sage: Ix = Rx.ideal(Rx.0)\n', '            sage: Ry = PolynomialRing(QQ, 2, "y")\n', '            sage: Iy = Ry.ideal(Ry.0)\n', '            sage: Ix == Iy\n', '            False\n', '\n', '        However, this should work if only the orderings are different::\n', '\n', "            sage: R = PolynomialRing(QQ, 'x', 2, order='degrevlex')\n", "            sage: S = PolynomialRing(QQ, 'x', 2, order='lex')\n", '            sage: R == S\n', '            False\n', '            sage: I = R*[R.0^2 + R.1, R.1]\n', '            sage: J = S*[S.0^2 + S.1, S.1]\n', '            sage: I == J\n', '            True\n', '        """\n', '        # first check the type\n', '        if not isinstance(other, MPolynomialIdeal):\n', '            return NotImplemented\n', '\n', '        if self is other:\n', '            return rich_to_bool(op, 0)\n', '\n', '        # comparison for >= and > : swap the arguments\n', '        if op == op_GE:\n', '            return other.__richcmp__(self, op_LE)\n', '        elif op == op_GT:\n', '            return other.__richcmp__(self, op_LT)\n', '\n', '        # the ideals may be defined w.r.t. to different term orders\n', '        # but are still the same.\n', '        R = self.ring()\n', '        S = other.ring()\n', '\n', '        # separate next two tests to avoid unnecessary creation of\n', '        # Groebner basis\n', '        if S is not R:\n', '          if S.change_ring(order=R.term_order()) != R: # rings are unique\n', '            return NotImplemented\n', '          else:\n', '            # at this point, the rings are the same, but for the term order,\n', '            # and we can fix that easily\n', '            other_new = other.change_ring(R)\n', '        else:\n', '            other_new = other\n', '\n', '        s_gens = self.gens()\n', '        o_gens = other_new.gens()\n', '        try:\n', '            if (s_gens == o_gens) or (set(s_gens) == set(o_gens)):\n', '                # the first clause works in the non-hashable case\n', '                return rich_to_bool(op, 0)\n', '        except TypeError:\n', '            pass\n', '\n', '        # comparison for <=\n', '        # needs just the Groebner basis for other\n', '        if op == op_LE:\n', '            l = self.gens()\n', '            try:\n', '                # first check whether the GB is cached already\n', '                if other_new.groebner_basis.is_in_cache():\n', '                    r = other_new.groebner_basis()\n', '                elif len(other_new._gb_by_ordering):\n', '                    o, r = next(iteritems(other_new._gb_by_ordering))\n', '                    l = self.change_ring(R.change_ring(order=o)).gens()\n', '                else: # use easy GB otherwise\n', '                    newR = R.change_ring(order="degrevlex")\n', '                    l = self.change_ring(newR).gens()\n', '                    r = other_new.change_ring(newR).groebner_basis()\n', '                    # remember this Groebner basis for future reference\n', "                    other_new._gb_by_ordering['degrevlex'] = r\n", '            except AttributeError: # e.g. quotient rings\n', '                r = other_new.groebner_basis()\n', '            return all(f.reduce(r) == 0 for f in l)\n', '\n', '        # comparison for == and != and <\n', '        # needs both groebner bases for the same term order\n', '        # first check whether the GBs are cached already\n', '        if op in [op_EQ, op_NE, op_LT]:\n', '            try:\n', '                if (other_new.groebner_basis.is_in_cache()\n', '                    or self.groebner_basis().is_in_cache()):\n', '                    l = self.groebner_basis()\n', '                    r = other_new.groebner_basis()\n', '                else: # use easy GB otherwise\n', '                    newR = R.change_ring(order="degrevlex")\n', '                    l = self.change_ring(newR).groebner_basis()\n', '                    r = other_new.change_ring(newR).groebner_basis()\n', '            except AttributeError: # e.g. quotient rings\n', '                l = self.groebner_basis()\n', '                r = other_new.groebner_basis()\n', '            contained = all(f.reduce(r) == 0 for f in l)\n', '            contains = all(f.reduce(l) == 0 for f in r)\n', '            if op == op_EQ:\n', '                return contained and contains\n', '            elif op == op_NE:\n', '                return not (contained and contains)\n', '            else:  # remaining case <\n', '                return contained and not contains\n', '\n', '    def groebner_fan(self, is_groebner_basis=False, symmetry=None, verbose=False):\n', '        r"""\n', '        Return the Groebner fan of this ideal.\n', '\n', '        The base ring must be `\\QQ` or a finite field\n', '        `\\GF{p}` of with `p \\leq 32749`.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y> = PolynomialRing(QQ)\n', '            sage: i = ideal(x^2 - y^2 + 1)\n', '            sage: g = i.groebner_fan()\n', '            sage: g.reduced_groebner_bases()\n', '            [[x^2 - y^2 + 1], [-x^2 + y^2 - 1]]\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``is_groebner_basis`` - bool (default False). if\n', '           True, then I.gens() must be a Groebner basis with respect to the\n', '           standard degree lexicographic term order.\n', '\n', '        -  ``symmetry`` - default: None; if not None, describes\n', '           symmetries of the ideal\n', '\n', '        -  ``verbose`` - default: False; if True, printout\n', '           useful info during computations\n', '        """\n', '        import sage.rings.polynomial.groebner_fan as groebner_fan\n', '        return groebner_fan.GroebnerFan(self, is_groebner_basis=is_groebner_basis,\n', '                                        symmetry=symmetry, verbose=verbose)\n', '\n', '    @cached_method(do_pickle=True)\n', '    @handle_AA_and_QQbar\n', "    def groebner_basis(self, algorithm='', deg_bound=None, mult_bound=None, prot=False, *args, **kwds):\n", '        r"""\n', '        Return the reduced Groebner basis of this ideal.\n', '\n', '        A Groebner basis `g_1,...,g_n` for an ideal `I` is a\n', '        generating set such that `<LM(g_i)> = LM(I)`, i.e., the\n', '        leading monomial ideal of `I` is spanned by the leading terms\n', '        of `g_1,...,g_n`. Groebner bases are the key concept in\n', '        computational ideal theory in multivariate polynomial rings\n', '        which allows a variety of problems to be solved.\n', '\n', '        Additionally, a *reduced* Groebner basis `G` is a unique\n', '        representation for the ideal `<G>` with respect to the chosen\n', '        monomial ordering.\n', '\n', '        INPUT:\n', '\n', '        - ``algorithm`` - determines the algorithm to use, see below\n', '           for available algorithms.\n', '\n', '        - ``deg_bound`` - only compute to degree ``deg_bound``, that\n', '          is, ignore all S-polynomials of higher degree. (default:\n', '          ``None``)\n', '\n', '        - ``mult_bound`` - the computation is stopped if the ideal is\n', '          zero-dimensional in a ring with local ordering and its\n', '          multiplicity is lower than ``mult_bound``. Singular\n', '          only. (default: ``None``)\n', '\n', '        - ``prot`` - if set to ``True`` the computation protocol of\n', '          the underlying implementation is printed. If an algorithm\n', '          from the ``singular:`` or ``magma:`` family is used,\n', '          ``prot`` may also be ``sage`` in which case the output is\n', '          parsed and printed in a common format where the amount of\n', '          information printed can be controlled via calls to\n', '          :func:`set_verbose`.\n', '\n', '        - ``*args`` - additional parameters passed to the respective\n', '           implementations\n', '\n', '        - ``**kwds`` - additional keyword parameters passed to the\n', '           respective implementations\n', '\n', '        ALGORITHMS:\n', '\n', "        ''\n", '            autoselect (default)\n', '\n', "        'singular:groebner'\n", "            Singular's ``groebner`` command\n", '\n', "        'singular:std'\n", "            Singular's ``std`` command\n", '\n', "        'singular:stdhilb'\n", "            Singular's ``stdhib`` command\n", '\n', "        'singular:stdfglm'\n", "            Singular's ``stdfglm`` command\n", '\n', "        'singular:slimgb'\n", "            Singular's ``slimgb`` command\n", '\n', "        'libsingular:groebner'\n", "            libSingular's ``groebner`` command\n", '\n', "        'libsingular:std'\n", "            libSingular's ``std`` command\n", '\n', "        'libsingular:slimgb'\n", "            libSingular's ``slimgb`` command\n", '\n', "        'libsingular:stdhilb'\n", "            libSingular's ``stdhib`` command\n", '\n', "        'libsingular:stdfglm'\n", "            libSingular's ``stdfglm`` command\n", '\n', "        'toy:buchberger'\n", "            Sage's toy/educational buchberger without Buchberger criteria\n", '\n', "        'toy:buchberger2'\n", "            Sage's toy/educational buchberger with Buchberger criteria\n", '\n', "        'toy:d_basis'\n", "            Sage's toy/educational algorithm for computation over PIDs\n", '\n', "        'macaulay2:gb'\n", "            Macaulay2's ``gb`` command (if available)\n", '\n', "        'macaulay2:f4'\n", '            Macaulay2\'s ``GroebnerBasis`` command with the strategy "F4" (if available)\n', '\n', "        'macaulay2:mgb'\n", '            Macaulay2\'s ``GroebnerBasis`` command with the strategy "MGB" (if available)\n', '\n', "        'magma:GroebnerBasis'\n", "            Magma's ``Groebnerbasis`` command (if available)\n", '\n', "        'ginv:TQ', 'ginv:TQBlockHigh', 'ginv:TQBlockLow' and 'ginv:TQDegree'\n", "            One of GINV's implementations (if available)\n", '\n', "        'giac:gbasis'\n", "            Giac's ``gbasis`` command (if available)\n", '\n', "        If only a system is given - e.g. 'magma' - the default algorithm is\n", '        chosen for that system.\n', '\n', '        .. NOTE::\n', '\n', '            The Singular and libSingular versions of the respective\n', '            algorithms are identical, but the former calls an external\n', '            Singular process while the latter calls a C function,\n', '            i.e. the calling overhead is smaller. However, the\n', '            libSingular interface does not support pretty printing of\n', '            computation protocols.\n', '\n', '        EXAMPLES:\n', '\n', '        Consider Katsura-3 over `\\QQ` with lexicographical term\n', '        ordering. We compute the reduced Groebner basis using every\n', '        available implementation and check their equality.\n', '\n', '        ::\n', '\n', "            sage: P.<a,b,c> = PolynomialRing(QQ,3, order='lex')\n", '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', '            sage: I.groebner_basis()\n', '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:groebner')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:std')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdhilb')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdfglm')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:slimgb')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        Although Giac does support lexicographical ordering, we use degree\n', '        reverse lexicographical ordering here, in order to test against\n', '        :trac:`21884`::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: J = I.change_ring(P.change_ring(order='degrevlex'))\n", "            sage: gb = J.groebner_basis('giac') # optional - giacpy_sage, random\n", '            sage: gb  # optional - giacpy_sage\n', '            [c^3 - 79/210*c^2 + 1/30*b + 1/70*c, b^2 - 3/5*c^2 - 1/5*b + 1/5*c, b*c + 6/5*c^2 - 1/10*b - 2/5*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: J.groebner_basis.set_cache(gb)  # optional - giacpy_sage\n', '            sage: ideal(J.transformed_basis()).change_ring(P).interreduced_basis()  # testing trac 21884\n', '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', "        Giac's gbasis over `\\QQ` can benefit from a probabilistic lifting and\n", '        multi threaded operations::\n', '\n', "            sage: A9=PolynomialRing(QQ,9,'x') # optional - giacpy_sage\n", '            sage: I9=sage.rings.ideal.Katsura(A9) # optional - giacpy_sage\n', '            sage: I9.groebner_basis("giac",proba_epsilon=1e-7) # optional - giacpy_sage, long time (3s)\n', '            ...Running a probabilistic check for the reconstructed Groebner basis...\n', '            Polynomial Sequence with 143 Polynomials in 9 Variables\n', '\n', '        The list of available Giac options is provided at :func:`sage.libs.giac.groebner_basis`.\n', '\n', '        Note that ``toy:buchberger`` does not return the reduced Groebner\n', '        basis, ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: gb = I.groebner_basis('toy:buchberger')\n", '            sage: gb.is_groebner()\n', '            True\n', '            sage: gb == gb.reduced()\n', '            False\n', '\n', '        but that ``toy:buchberger2`` does. ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: gb = I.groebner_basis('toy:buchberger2'); gb\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '            sage: gb == gb.reduced()\n', '            True\n', '\n', '        Here we use Macaulay2 with three different strategies over a finite\n', '        field. ::\n', '\n', '            sage: R.<a,b,c> = PolynomialRing(GF(101), 3)\n', '            sage: I = sage.rings.ideal.Katsura(R,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:gb')  # optional - macaulay2\n", '            [c^3 + 28*c^2 - 37*b + 13*c, b^2 - 41*c^2 + 20*b - 20*c, b*c - 19*c^2 + 10*b + 40*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(R,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:f4')  # optional - macaulay2\n", '            [c^3 + 28*c^2 - 37*b + 13*c, b^2 - 41*c^2 + 20*b - 20*c, b*c - 19*c^2 + 10*b + 40*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(R,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:mgb') # optional - macaulay2\n", '            [c^3 + 28*c^2 - 37*b + 13*c, b^2 - 41*c^2 + 20*b - 20*c, b*c - 19*c^2 + 10*b + 40*c, a + 2*b + 2*c - 1]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('magma:GroebnerBasis') # optional - magma\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        Singular and libSingular can compute Groebner basis with degree\n', '        restrictions. ::\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: I = R*[x^3+y^2,x^2*y+1]\n', "            sage: I.groebner_basis(algorithm='singular')\n", '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', "            sage: I.groebner_basis(algorithm='singular',deg_bound=2)\n", '            [x^3 + y^2, x^2*y + 1]\n', '            sage: I.groebner_basis()\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '            sage: I.groebner_basis(deg_bound=2)\n', '            [x^3 + y^2, x^2*y + 1]\n', '\n', '        A protocol is printed, if the verbosity level is at least 2,\n', '        or if the argument ``prot`` is provided. Historically, the\n', '        protocol did not appear during doctests, so, we skip the\n', '        examples with protocol output.  ::\n', '\n', '            sage: set_verbose(2)\n', '            sage: I = R*[x^3+y^2,x^2*y+1]\n', '            sage: I.groebner_basis()  # not tested\n', '            std in (QQ),(x,y),(dp(2),C)\n', '            [...:2]3ss4s6\n', '            (S:2)--\n', '            product criterion:1 chain criterion:0\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '            sage: I.groebner_basis(prot=False)\n', '            std in (QQ),(x,y),(dp(2),C)\n', '            [...:2]3ss4s6\n', '            (S:2)--\n', '            product criterion:1 chain criterion:0\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '            sage: set_verbose(0)\n', '            sage: I.groebner_basis(prot=True)  # not tested\n', '            std in (QQ),(x,y),(dp(2),C)\n', '            [...:2]3ss4s6\n', '            (S:2)--\n', '            product criterion:1 chain criterion:0\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '\n', '        The list of available options is provided at\n', '        :class:`~sage.libs.singular.option.LibSingularOptions`.\n', '\n', '        Note that Groebner bases over `\\ZZ` can also be computed. ::\n', '\n', '            sage: P.<a,b,c> = PolynomialRing(ZZ,3)\n', '            sage: I = P * (a + 2*b + 2*c - 1, a^2 - a + 2*b^2 + 2*c^2, 2*a*b + 2*b*c - b)\n', '            sage: I.groebner_basis()\n', '            [b^3 - 181*b*c^2 + 222*c^3 - 26*b*c - 146*c^2 + 19*b + 24*c,\n', '             2*b*c^2 - 48*c^3 + 3*b*c + 22*c^2 - 2*b - 2*c,\n', '             42*c^3 + 45*b^2 + 54*b*c + 22*c^2 - 13*b - 12*c,\n', '             2*b^2 + 6*b*c + 6*c^2 - b - 2*c,\n', '             10*b*c + 12*c^2 - b - 4*c,\n', '             a + 2*b + 2*c - 1]\n', '\n', '        ::\n', '\n', "            sage: I.groebner_basis('macaulay2') # optional - macaulay2\n", '            [b^3 + b*c^2 + 12*c^3 + b^2 + b*c - 4*c^2,\n', '             2*b*c^2 - 6*c^3 + b^2 + 5*b*c + 8*c^2 - b - 2*c,\n', '             42*c^3 + b^2 + 2*b*c - 14*c^2 + b,\n', '             2*b^2 - 4*b*c - 6*c^2 + 2*c, 10*b*c + 12*c^2 - b - 4*c,\n', '             a + 2*b + 2*c - 1]\n', '\n', '        Groebner bases over `\\ZZ/n\\ZZ` are also supported::\n', '\n', '            sage: P.<a,b,c> = PolynomialRing(Zmod(1000),3)\n', '            sage: I = P * (a + 2*b + 2*c - 1, a^2 - a + 2*b^2 + 2*c^2, 2*a*b + 2*b*c - b)\n', '            sage: I.groebner_basis()\n', '            [b*c^2 + 732*b*c + 808*b,\n', '             2*c^3 + 884*b*c + 666*c^2 + 320*b,\n', '             b^2 + 438*b*c + 281*b,\n', '             5*b*c + 156*c^2 + 112*b + 948*c,\n', '             50*c^2 + 600*b + 650*c,\n', '             a + 2*b + 2*c + 999,\n', '             125*b]\n', '\n', '        ::\n', '\n', '            sage: R.<x,y,z> = PolynomialRing(Zmod(2233497349584))\n', '            sage: I = R.ideal([z*(x-3*y), 3^2*x^2-y*z, z^2+y^2])\n', '            sage: I.groebner_basis()\n', '            [2*z^4, y*z^2 + 81*z^3, 248166372176*z^3, 9*x^2 - y*z, y^2 + z^2, x*z +\n', '            2233497349581*y*z, 248166372176*y*z]\n', '\n', '        Sage also supports local orderings::\n', '\n', "            sage: P.<x,y,z> = PolynomialRing(QQ,3,order='negdegrevlex')\n", '            sage: I = P * (  x*y*z + z^5, 2*x^2 + y^3 + z^7, 3*z^5 +y ^5 )\n', '            sage: I.groebner_basis()\n', '            [x^2 + 1/2*y^3, x*y*z + z^5, y^5 + 3*z^5, y^4*z - 2*x*z^5, z^6]\n', '\n', '        We can represent every element in the ideal as a combination\n', '        of the generators using the :meth:`~sage.rings.polynomial.multi_polynomial_element.MPolynomial_polydict.lift` method::\n', '\n', '            sage: P.<x,y,z> = PolynomialRing(QQ,3)\n', '            sage: I = P * ( x*y*z + z^5, 2*x^2 + y^3 + z^7, 3*z^5 +y ^5 )\n', '            sage: J = Ideal(I.groebner_basis())\n', '            sage: f = sum(P.random_element(terms=2)*f for f in I.gens())\n', '            sage: f\n', '            1/2*y^2*z^7 - 1/4*y*z^8 + 2*x*z^5 + 95*z^6 + 1/2*y^5 - 1/4*y^4*z + x^2*y^2 + 3/2*x^2*y*z + 95*x*y*z^2\n', '            sage: f.lift(I.gens())\n', '            [2*x + 95*z, 1/2*y^2 - 1/4*y*z, 0]\n', '            sage: l = f.lift(J.gens()); l\n', '            [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1/2*y^2 + 1/4*y*z, 1/2*y^2*z^2 - 1/4*y*z^3 + 2*x + 95*z]\n', '            sage: sum(map(mul, zip(l,J.gens()))) == f\n', '            True\n', '\n', '        Groebner bases over fraction fields of polynomial rings are also supported::\n', '\n', '            sage: P.<t> = QQ[]\n', '            sage: F = Frac(P)\n', '            sage: R.<X,Y,Z> = F[]\n', '            sage: I = Ideal([f + P.random_element() for f in sage.rings.ideal.Katsura(R).gens()])\n', '            sage: I.groebner_basis()\n', '            [Z^3 + (-79/105*t - 79/70)*Z^2 + (2/15*t^2 - 74/315*t + 94/105)*Y + (2/35*t^2 + 194/315*t + 1/105)*Z - 4/105*t^2 - 17/210*t - 1/28, Y^2 + (-3/5)*Z^2 + (-2/5*t - 3/5)*Y + (2/5*t + 3/5)*Z - 4/15*t + 1/2, Y*Z + 6/5*Z^2 + (-1/5*t - 3/10)*Y + (-4/5*t - 6/5)*Z + 8/15*t - 1/2, X + 2*Y + 2*Z - t - 2]\n', '\n', "        In cases where a characteristic cannot be determined, we use a toy implementation of Buchberger's algorithm\n", '        (see :trac:`6581`)::\n', '\n', '            sage: R.<a,b> = QQ[]; I = R.ideal(a^2+b^2-1)\n', '            sage: Q = QuotientRing(R,I); K = Frac(Q)\n', '            sage: R2.<x,y> = K[]; J = R2.ideal([(a^2+b^2)*x + y, x+y])\n', '            sage: J.groebner_basis()\n', '            verbose 0 (...: multi_polynomial_ideal.py, groebner_basis) Warning: falling back to very slow toy implementation.\n', '            [x + y]\n', '\n', '        ALGORITHM:\n', '\n', '        Uses Singular, Magma (if available), Macaulay2 (if available),\n', '        Giac (if available), or a toy implementation.\n', '\n', '        TESTS:\n', '\n', '        Check :trac:`27445`::\n', '\n', "            sage: P = PolynomialRing(QQ, 't', 0)\n", '            sage: P.ideal([P(2)]).groebner_basis()\n', '            [1]\n', '            sage: P.ideal([]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([0]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([3, 4, 0, 5]).groebner_basis()\n', '            [1]\n', '\n', "            sage: P = PolynomialRing(ZZ, 't', 0)\n", '            sage: P.ideal([P(2)]).groebner_basis()\n', '            [2]\n', '            sage: P.ideal([]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([0]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([2, 4, 6]).groebner_basis()\n', '            [2]\n', '\n', "            sage: P = PolynomialRing(Zmod(8), 't', 0)\n", '            sage: P.ideal([P(2)]).groebner_basis()\n', '            [2]\n', '            sage: P.ideal([]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([0]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([P(3)]).groebner_basis()\n', '            [1]\n', '\n', '        Check that this method works over QQbar (:trac:`25351`)::\n', '\n', "            sage: P.<a,b,c> = PolynomialRing(QQbar,3, order='lex')\n", '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', '            sage: I.groebner_basis()\n', '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:groebner')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:std')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdhilb')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdfglm')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:slimgb')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: J = I.change_ring(P.change_ring(order='degrevlex'))\n", "            sage: gb = J.groebner_basis('giac') # optional - giacpy_sage, random\n", '            sage: gb  # optional - giacpy_sage\n', '            [c^3 + (-79/210)*c^2 + 1/30*b + 1/70*c, b^2 + (-3/5)*c^2 + (-1/5)*b + 1/5*c, b*c + 6/5*c^2 + (-1/10)*b + (-2/5)*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('toy:buchberger2')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:gb') # optional - macaulay2\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('magma:GroebnerBasis') # optional - magma\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '        """\n', '        from sage.rings.finite_rings.integer_mod_ring import is_IntegerModRing\n', '        from sage.rings.polynomial.multi_polynomial_sequence import PolynomialSequence\n', '        from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing\n', '\n', '        if algorithm.lower() == "magma":\n', '            algorithm = "magma:GroebnerBasis"\n', '        elif algorithm.lower() == "singular":\n', '            algorithm = "singular:groebner"\n', '        elif algorithm.lower() == "libsingular":\n', '            algorithm = "libsingular:groebner"\n', '        elif algorithm.lower() == "macaulay2":\n', '            algorithm = "macaulay2:gb"\n', '        elif algorithm.lower() == "toy":\n', '            algorithm = "toy:buchberger2"\n', '        elif algorithm.lower() == "giac":\n', '            algorithm = "giac:gbasis"\n', '\n', '        if not algorithm:\n', '            try:\n', '                gb = self._groebner_basis_libsingular("groebner", deg_bound=deg_bound, mult_bound=mult_bound, *args, **kwds)\n', '            except (TypeError, NameError): # conversion to Singular not supported\n', '                try:\n', '                    gb = self._groebner_basis_singular("groebner", deg_bound=deg_bound, mult_bound=mult_bound, *args, **kwds)\n', '                except (TypeError, NameError, NotImplementedError): # conversion to Singular not supported\n', '                    R = self.ring()\n', '                    B = R.base_ring()\n', '                    if R.ngens() == 0:\n', '                        if R.base_ring().is_field():\n', '                            if any(g != 0 for g in self.gens()):\n', '                                gb = [R.one()]\n', '                            else:\n', '                                gb = [R.zero()]\n', '                        else:\n', '                            # To deal with this degenerated case,\n', '                            # we take a detour to a polynomial ring\n', '                            # with one variable and then go back.\n', "                            Rt = PolynomialRing(B, 't', 1)\n", '                            It = Rt.ideal([Rt(g) for g in self.gens()])\n', '                            gb = [R(g) for g in It.groebner_basis(\n', '                                algorithm=algorithm,\n', '                                deg_bound=deg_bound, mult_bound=mult_bound,\n', '                                prot=prot, *args, **kwds)]\n', '                    elif (R.term_order().is_global()\n', '                          and is_IntegerModRing(B)\n', '                          and not B.is_field()):\n', '                        verbose("Warning: falling back to very slow toy implementation.", level=0)\n', '\n', '                        ch = B.characteristic()\n', '                        R_ZZ = R.change_ring(ZZ)\n', '                        I = R_ZZ.ideal([R_ZZ(f) for f in self.gens()] + [R_ZZ(ch)])\n', '                        gb_ZZ = toy_d_basis.d_basis(I, *args, **kwds)\n', '                        gb = [r for r in (R(f) for f in gb_ZZ) if r]\n', '                    elif R.term_order().is_global():\n', '                        verbose("Warning: falling back to very slow toy implementation.", level=0)\n', '                        gb = toy_buchberger.buchberger_improved(self, *args, **kwds)\n', '                    else:\n', '                        raise TypeError("Local/unknown orderings not supported by \'toy_buchberger\' implementation.")\n', '\n', "        elif algorithm.startswith('singular:'):\n", '            gb = self._groebner_basis_singular(algorithm[9:], deg_bound=deg_bound, mult_bound=mult_bound, prot=prot, *args, **kwds)\n', "        elif algorithm.startswith('libsingular:'):\n", '            if prot == "sage":\n', '                warn("The libsingular interface does not support prot=\'sage\', reverting to \'prot=True\'.")\n', "            gb = self._groebner_basis_libsingular(algorithm[len('libsingular:'):], deg_bound=deg_bound, mult_bound=mult_bound, prot=prot, *args, **kwds)\n", '        elif algorithm.startswith("macaulay2:"):\n', '            gb = self._groebner_basis_macaulay2(strategy=algorithm.split(":")[1], *args, **kwds)\n', "        elif algorithm == 'magma:GroebnerBasis':\n", '            gb = self._groebner_basis_magma(prot=prot, deg_bound=deg_bound, *args, **kwds)\n', "        elif algorithm == 'toy:buchberger':\n", '            gb = toy_buchberger.buchberger(self, *args, **kwds)\n', "        elif algorithm == 'toy:buchberger2':\n", '            gb = toy_buchberger.buchberger_improved(self, *args, **kwds)\n', "        elif algorithm == 'toy:d_basis':\n", '            gb = toy_d_basis.d_basis(self, *args, **kwds)\n', "        elif algorithm.startswith('ginv'):\n", "            if algorithm == 'ginv':\n", '                gb = self._groebner_basis_ginv(*args, **kwds)\n', '            elif ":" in algorithm:\n', '                ginv,alg = algorithm.split(":")\n', '                gb = self._groebner_basis_ginv(algorithm=alg,*args, **kwds)\n', '            else:\n', '                raise NameError("Algorithm \'%s\' unknown."%algorithm)\n', "        elif algorithm == 'giac:gbasis':\n", '            from sage.libs.giac import groebner_basis as groebner_basis_libgiac\n', '            gb = groebner_basis_libgiac(self, prot=prot, *args, **kwds)\n', '\n', '        else:\n', '            raise NameError("Algorithm \'%s\' unknown."%algorithm)\n', '\n', '        gb = sorted(gb, reverse=True)\n', '        if self.ring().base_ring().is_field():\n', '            _gb = []\n', '            for f in gb:\n', '                if f.lc():\n', '                    _gb.append(f*f.lc()**(-1))\n', '                else:\n', '                    _gb.append(f)\n', '            gb = _gb\n', '        elif self.ring().base_ring() is ZZ:\n', '            if gb[-1].degree() == 0:\n', '                gb = [f % gb[-1] for f in gb[:-1]] + [gb[-1]]\n', '\n', '        gb = PolynomialSequence(self.ring(), gb, immutable=True)\n', '        return gb\n', '\n', '    def change_ring(self, P):\n', '        r"""\n', '        Return the ideal ``I`` in ``P`` spanned by\n', '        the generators `g_1, ..., g_n` of self as returned by\n', '        ``self.gens()``.\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``P`` - a multivariate polynomial ring\n', '\n', '\n', '        EXAMPLES::\n', '\n', "            sage: P.<x,y,z> = PolynomialRing(QQ,3,order='lex')\n", '            sage: I = sage.rings.ideal.Cyclic(P)\n', '            sage: I\n', '            Ideal (x + y + z, x*y + x*z + y*z, x*y*z - 1) of\n', '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '\n', '        ::\n', '\n', '            sage: I.groebner_basis()\n', '            [x + y + z, y^2 + y*z + z^2, z^3 - 1]\n', '\n', '        ::\n', '\n', "            sage: Q.<x,y,z> = P.change_ring(order='degrevlex'); Q\n", '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '            sage: Q.term_order()\n', '            Degree reverse lexicographic term order\n', '\n', '        ::\n', '\n', '            sage: J = I.change_ring(Q); J\n', '            Ideal (x + y + z, x*y + x*z + y*z, x*y*z - 1) of\n', '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '\n', '        ::\n', '\n', '            sage: J.groebner_basis()\n', '            [z^3 - 1, y^2 + y*z + z^2, x + y + z]\n', '        """\n', '        return P.ideal([P(f) for f in self.gens()])\n', '\n', '    def subs(self, in_dict=None, **kwds):\n', '        """\n', '        Substitute variables.\n', '\n', '        This method substitutes some variables in the polynomials that\n', '        generate the ideal with given values. Variables that are not\n', '        specified in the input remain unchanged.\n', '\n', '        INPUT:\n', '\n', '        - ``in_dict`` -- (optional) dictionary of inputs\n', '\n', '        - ``**kwds`` -- named parameters\n', '\n', '        OUTPUT:\n', '\n', '        A new ideal with modified generators. If possible, in the same\n', '        polynomial ring. Raises a ``TypeError`` if no common\n', '        polynomial ring of the substituted generators can be found.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: R.<x,y> = PolynomialRing(ZZ,2,'xy')\n", '            sage: I = R.ideal(x^5+y^5, x^2 + y + x^2*y^2 + 5); I\n', '            Ideal (x^5 + y^5, x^2*y^2 + x^2 + y + 5) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '            sage: I.subs(x=y)\n', '            Ideal (2*y^5, y^4 + y^2 + y + 5) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '            sage: I.subs({x:y})    # same substitution but with dictionary\n', '            Ideal (2*y^5, y^4 + y^2 + y + 5) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '\n', '        The new ideal can be in a different ring::\n', '\n', '            sage: R.<a,b> = PolynomialRing(QQ,2)\n', '            sage: S.<x,y> = PolynomialRing(QQ,2)\n', '            sage: I = R.ideal(a^2+b^2+a-b+2); I\n', '            Ideal (a^2 + b^2 + a - b + 2) of Multivariate Polynomial Ring in a, b over Rational Field\n', '            sage: I.subs(a=x, b=y)\n', '            Ideal (x^2 + y^2 + x - y + 2) of Multivariate Polynomial Ring in x, y over Rational Field\n', '\n', '        The resulting ring need not be a multivariate polynomial ring::\n', '\n', '            sage: T.<t> = PolynomialRing(QQ)\n', '            sage: I.subs(a=t, b=t)\n', '            Principal ideal (t^2 + 1) of Univariate Polynomial Ring in t over Rational Field\n', '            sage: var("z")\n', '            z\n', '            sage: I.subs(a=z, b=z)\n', '            Principal ideal (2*z^2 + 2) of Symbolic Ring\n', '\n', '        Variables that are not substituted remain unchanged::\n', '\n', '            sage: R.<x,y> = PolynomialRing(QQ,2)\n', '            sage: I = R.ideal(x^2+y^2+x-y+2); I\n', '            Ideal (x^2 + y^2 + x - y + 2) of Multivariate Polynomial Ring in x, y over Rational Field\n', '            sage: I.subs(x=1)\n', '            Ideal (y^2 - y + 4) of Multivariate Polynomial Ring in x, y over Rational Field\n', '        """\n', '        ring = self.ring()\n', '        generators = [f.subs(in_dict, **kwds) for f in self.gens()]\n', '        if not all(gen in ring for gen in generators):\n', '            ring = Sequence(generators).universe()\n', '        try:\n', '            return ring.ideal(generators)\n', '        except AttributeError:\n', "            raise TypeError('Cannot construct an ideal from the substituted generators!')\n", '\n', '    def reduce(self, f):\n', '        """\n', '        Reduce an element modulo the reduced Groebner basis for this ideal.\n', '        This returns 0 if and only if the element is in this ideal. In any\n', '        case, this reduction is unique up to monomial orders.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = PolynomialRing(QQ, 2)\n', '            sage: I = (x^3 + y, y)*R\n', '            sage: I.reduce(y)\n', '            0\n', '            sage: I.reduce(x^3)\n', '            0\n', '            sage: I.reduce(x - y)\n', '            x\n', '\n', '            sage: I = (y^2 - (x^3 + x))*R\n', '            sage: I.reduce(x^3)\n', '            y^2 - x\n', '            sage: I.reduce(x^6)\n', '            y^4 - 2*x*y^2 + x^2\n', '            sage: (y^2 - x)^2\n', '            y^4 - 2*x*y^2 + x^2\n', '\n', '        .. NOTE::\n', '\n', '            Requires computation of a Groebner basis, which can be a\n', '            very expensive operation.\n', '        """\n', '        try:\n', '            strat = self._groebner_strategy()\n', '            return strat.normal_form(f)\n', '        except (TypeError, NotImplementedError, ValueError):\n', '            pass\n', '\n', '        gb = self.groebner_basis()\n', '        return f.reduce(gb)\n', '\n', '    def _contains_(self, f):\n', '        r"""\n', '        Returns ``True`` if ``f`` is in this ideal,\n', '        ``False`` otherwise.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: I = (x^3 + y, y)*R\n', '            sage: x in I # indirect doctest\n', '            False\n', '            sage: y in I\n', '            True\n', '            sage: x^3 + 2*y in I\n', '            True\n', '\n', '        .. NOTE::\n', '\n', '            Requires computation of a Groebner basis, which can be a very\n', '            expensive operation.\n', '        """\n', '        g = f.reduce(self.groebner_basis())\n', '        return self.ring()(g).is_zero()\n', '\n', "    def homogenize(self, var='h'):\n", '        """\n', '        Return homogeneous ideal spanned by the homogeneous polynomials\n', '        generated by homogenizing the generators of this ideal.\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``h`` - variable name or variable in cover ring\n', "           (default: 'h')\n", '\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = PolynomialRing(GF(2))\n', '            sage: I = Ideal([x^2*y + z + 1, x + y^2 + 1]); I\n', '            Ideal (x^2*y + z + 1, y^2 + x + 1) of Multivariate\n', '            Polynomial Ring in x, y, z over Finite Field of size 2\n', '\n', '        ::\n', '\n', '            sage: I.homogenize()\n', '            Ideal (x^2*y + z*h^2 + h^3, y^2 + x*h + h^2) of\n', '            Multivariate Polynomial Ring in x, y, z, h over Finite\n', '            Field of size 2\n', '\n', '        ::\n', '\n', '            sage: I.homogenize(y)\n', '            Ideal (x^2*y + y^3 + y^2*z, x*y) of Multivariate\n', '            Polynomial Ring in x, y, z over Finite Field of size 2\n', '\n', '        ::\n', '\n', '                   sage: I = Ideal([x^2*y + z^3 + y^2*x, x + y^2 + 1])\n', '            sage: I.homogenize()\n', '            Ideal (x^2*y + x*y^2 + z^3, y^2 + x*h + h^2) of\n', '            Multivariate Polynomial Ring in x, y, z, h over Finite\n', '            Field of size 2\n', '        """\n', '        I = [f.homogenize(var) for f in self.gens()]\n', '        P = max(I, key=lambda x: x.parent().ngens()).parent()\n', '        return P.ideal([P(f) for f in I])\n', '\n', '    def is_homogeneous(self):\n', '        r"""\n', '        Return ``True`` if this ideal is spanned by homogeneous\n', '        polynomials, i.e. if it is a homogeneous ideal.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = PolynomialRing(QQ,3)\n', '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: I\n', '            Ideal (x + 2*y + 2*z - 1, x^2 + 2*y^2 + 2*z^2 - x, 2*x*y +\n', '            2*y*z - y) of Multivariate Polynomial Ring in x, y, z over\n', '            Rational Field\n', '\n', '        ::\n', '\n', '            sage: I.is_homogeneous()\n', '            False\n', '\n', '        ::\n', '\n', '            sage: J = I.homogenize()\n', '            sage: J\n', '            Ideal (x + 2*y + 2*z - h, x^2 + 2*y^2 + 2*z^2 - x*h, 2*x*y\n', '            + 2*y*z - y*h) of Multivariate Polynomial Ring in x, y, z,\n', '            h over Rational Field\n', '\n', '        ::\n', '\n', '            sage: J.is_homogeneous()\n', '            True\n', '        """\n', '        for f in self.gens():\n', '            if not f.is_homogeneous():\n', '                return False\n', '        return True\n', '\n', '    def degree_of_semi_regularity(self):\n', '        r"""\n', '        Return the degree of semi-regularity of this ideal under the\n', '        assumption that it is semi-regular.\n', '\n', '        Let `\\{f_1, ... , f_m\\} \\subset K[x_1 , ... , x_n]` be\n', '        homogeneous polynomials of degrees `d_1,... ,d_m`\n', '        respectively. This sequence is semi-regular if:\n', '\n', '         * `\\{f_1, ... , f_m\\} \\neq K[x_1 , ... , x_n]`\n', '\n', '         * for all `1 \\leq i \\leq m` and `g \\in K[x_1,\\dots,x_n]`:\n', '           `deg(g \\cdot pi ) < D` and\n', '           `g \\cdot f_i \\in <f_1 , \\dots , f_{i-1}>` implies that\n', '           `g \\in <f_1, ..., f_{i-1}>` where `D` is the degree of regularity.\n', '\n', '        This notion can be extended to affine polynomials by\n', '        considering their homogeneous components of highest degree.\n', '\n', '        The degree of regularity of a semi-regular sequence\n', '        `f_1, ...,f_m` of respective degrees `d_1,...,d_m` is given by the\n', '        index of the first non-positive coefficient of:\n', '\n', '            `\\sum c_k z^k = \\frac{\\prod (1 - z^{d_i})}{(1-z)^n}`\n', '\n', '        EXAMPLES:\n', '\n', '        We consider a homogeneous example::\n', '\n', '            sage: n = 8\n', '            sage: K = GF(127)\n', "            sage: P = PolynomialRing(K,n,'x')\n", '            sage: s = [K.random_element() for _ in range(n)]\n', '            sage: L = []\n', '            sage: for i in range(2*n):\n', '            ....:     f = P.random_element(degree=2, terms=binomial(n,2))\n', '            ....:     f -= f(*s)\n', '            ....:     L.append(f.homogenize())\n', '            sage: I = Ideal(L)\n', '            sage: I.degree_of_semi_regularity()\n', '            4\n', '\n', '        From this, we expect a Groebner basis computation to reach at\n', '        most degree 4. For homogeneous systems this is equivalent to\n', '        the largest degree in the Groebner basis::\n', '\n', '            sage: max(f.degree() for f in I.groebner_basis())\n', '            4\n', '\n', '        We increase the number of polynomials and observe a decrease\n', '        the degree of regularity::\n', '\n', '            sage: for i in range(2*n):\n', '            ....:     f = P.random_element(degree=2, terms=binomial(n,2))\n', '            ....:     f -= f(*s)\n', '            ....:     L.append(f.homogenize())\n', '            sage: I = Ideal(L)\n', '            sage: I.degree_of_semi_regularity()\n', '            3\n', '\n', '            sage: max(f.degree() for f in I.groebner_basis())\n', '            3\n', '\n', '        The degree of regularity approaches 2 for quadratic systems as\n', '        the number of polynomials approaches `n^2`::\n', '\n', '            sage: for i in range((n-4)*n):\n', '            ....:     f = P.random_element(degree=2, terms=binomial(n,2))\n', '            ....:     f -= f(*s)\n', '            ....:     L.append(f.homogenize())\n', '            sage: I = Ideal(L)\n', '            sage: I.degree_of_semi_regularity()\n', '            2\n', '\n', '            sage: max(f.degree() for f in I.groebner_basis())\n', '            2\n', '\n', '        .. NOTE::\n', '\n', '            It is unknown whether semi-regular sequences\n', '            exist. However, it is expected that random systems are\n', '            semi-regular sequences. For more details about\n', '            semi-regular sequences see [BFS2004]_.\n', '        """\n', '        degs = [f.degree() for f in self.gens() if f!=0] # we ignore zeroes\n', '        m, n = self.ngens(), len(set(sum([f.variables() for f in self.gens()],())))\n', '        if m <= n:\n', '            raise ValueError("This function requires an overdefined system of polynomials.")\n', '\n', '        from sage.rings.all import QQ\n', '        from sage.misc.misc_c import prod\n', '        from sage.rings.power_series_ring import PowerSeriesRing\n', '\n', "        R = PowerSeriesRing(QQ,'z', default_prec=sum(degs))\n", '        z = R.gen()\n', '        dreg = 0\n', '        s = prod([1-z**d for d in degs]) / (1-z)**n\n', '        for dreg in range(sum(degs)):\n', '            if s[dreg] <= 0:\n', '                return ZZ(dreg)\n', '        else:\n', '            raise ValueError("BUG: Could not compute the degree of semi-regularity")\n', '\n', '    def plot(self, *args, **kwds):\n', '        """\n', '        Plot the real zero locus of this principal ideal.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - a principal ideal in 2 variables\n', '\n', "        - ``algorithm`` - set this to 'surf' if you want 'surf' to\n", '           plot the ideal (default: None)\n', '\n', '        - ``*args`` - optional tuples ``(variable, minimum, maximum)``\n', '           for plotting dimensions\n', '\n', '        - ``**kwds`` - optional keyword arguments passed on to\n', '           ``implicit_plot``\n', '\n', '        EXAMPLES:\n', '\n', '        Implicit plotting in 2-d::\n', '\n', '            sage: R.<x,y> = PolynomialRing(QQ,2)\n', '            sage: I = R.ideal([y^3 - x^2])\n', '            sage: I.plot()                         # cusp\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: I = R.ideal([y^2 - x^2 - 1])\n', '            sage: I.plot((x,-3, 3), (y, -2, 2))  # hyperbola\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: I = R.ideal([y^2 + x^2*(1/4) - 1])\n', '            sage: I.plot()                         # ellipse\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: I = R.ideal([y^2-(x^2-1)*(x-2)])\n', '            sage: I.plot()                         # elliptic curve\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: f = ((x+3)^3 + 2*(x+3)^2 - y^2)*(x^3 - y^2)*((x-3)^3-2*(x-3)^2-y^2)\n', '            sage: I = R.ideal(f)\n', '            sage: I.plot()                         # the Singular logo\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        This used to be :trac:`5267`::\n', '\n', '            sage: I = R.ideal([-x^2*y+1])\n', '            sage: I.plot()\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        AUTHORS:\n', '\n', '        - Martin Albrecht (2008-09)\n', '        """\n', '        from sage.rings.real_mpfr import RR\n', '        from sage.plot.all import implicit_plot\n', '\n', '        K = self.base_ring()\n', '        if not RR.has_coerce_map_from(K):\n', '            raise NotImplementedError("plotting of curves over %s is not implemented yet" % K)\n', '\n', '        if not self.is_principal():\n', '            raise TypeError("ideal must be principal")\n', '\n', '        f = self.gens()[0]\n', '\n', '        variables = sorted(f.variables(), reverse=True)\n', '\n', "        if len(variables) == 2 and kwds.get('algorithm','') != 'surf':\n", '            V = [(variables[0], None, None), (variables[1], None, None)]\n', '\n', '            if len(args) > 2:\n', '                raise TypeError("Expected up to 2 optional parameters but got %d."%len(args))\n', '\n', '            # first check whether user supplied boundaries\n', '            for e in args:\n', '                if not isinstance(e, (tuple, list)) or len(e) != 3:\n', '                    raise TypeError("Optional parameter must be list or tuple or length 3.")\n', '                v,mi,ma = e\n', '\n', '                if v not in variables:\n', '                    raise TypeError("Optional parameter must contain variable of ideal generator.")\n', '\n', '                vi = variables.index(v)\n', '                V[vi] = v,mi,ma\n', '\n', '            # now check whether we should find boundaries\n', '            for var_index in range(2):\n', '                if V[var_index][1] is None:\n', '                    v, mi, ma = variables[var_index], -10, 10\n', '                    for i in range(mi, ma):\n', '                        roots = f.subs({v:i}).univariate_polynomial().change_ring(RR).roots()\n', '                        if len(roots) > 0:\n', '                            mi = i - 1\n', '                            break\n', '\n', '                    for i in range(ma, mi, -1):\n', '                        roots = f.subs({v:i}).univariate_polynomial().change_ring(RR).roots()\n', '                        if len(roots) > 0:\n', '                            ma = i + 1\n', '                            break\n', '                    V[var_index] = variables[var_index], mi, ma\n', '\n', '            kwds.setdefault("plot_points",200)\n', "            kwds.pop('algorithm', '')\n", '            return implicit_plot(f, V[0], V[1], **kwds)\n', '\n', "        elif len(variables) == 3 or kwds.get('algorithm','') == 'surf':\n", '            MPolynomialIdeal_singular_repr.plot(self, kwds.get("singular",singular_default))\n', '        else:\n', '            raise TypeError("Ideal generator may not have either 2 or 3 variables.")\n', '\n', '    def random_element(self, degree, compute_gb=False, *args, **kwds):\n', '        r"""\n', '        Return a random element in this ideal as `r = \\sum h_i·f_i`.\n', '\n', '        INPUT:\n', '\n', '        - ``compute_gb`` - if ``True`` then a Gröbner basis is computed first\n', '          and `f_i` are the elements in the Gröbner basis. Otherwise whatever\n', '          basis is returned by ``self.gens()`` is used.\n', '\n', '        - ``*args`` and ``**kwds`` are passed to ``R.random_element()`` with\n', '          ``R = self.ring()``.\n', '\n', '        EXAMPLES:\n', '\n', '        We compute a uniformly random element up to the provided degree. ::\n', '\n', '            sage: P.<x,y,z> = GF(127)[]\n', '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: I.random_element(degree=4, compute_gb=True, terms=infinity)\n', '            34*x^4 - 33*x^3*y + 45*x^2*y^2 - 51*x*y^3 - 55*y^4 + 43*x^3*z ... - 28*y - 33*z + 45\n', '\n', '        Note that sampling uniformly at random from the ideal at some large enough degree is\n', '        equivalent to computing a Gröbner basis. We give an example showing how to compute a Gröbner\n', '        basis if we can sample uniformly at random from an ideal::\n', '\n', '            sage: n = 3; d = 4\n', "            sage: P = PolynomialRing(GF(127), n, 'x')\n", '            sage: I = sage.rings.ideal.Cyclic(P)\n', '\n', '        1. We sample `n^d` uniformly random elements in the ideal::\n', '\n', '            sage: F = Sequence(I.random_element(degree=d, compute_gb=True, terms=infinity) for _ in range(n^d))\n', '\n', '        2. We linearize and compute the echelon form::\n', '\n', '            sage: A,v = F.coefficient_matrix()\n', '            sage: A.echelonize()\n', '\n', '        3. The result is the desired Gröbner basis::\n', '\n', '            sage: G = Sequence((A*v).list())\n', '            sage: G.is_groebner()\n', '            True\n', '            sage: Ideal(G) == I\n', '            True\n', '\n', '        We return some element in the ideal with no guarantee on the distribution::\n', '\n', "            sage: P = PolynomialRing(GF(127), 10, 'x')\n", '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: f = I.random_element(degree=3)\n', '            sage: f  # random\n', '            -25*x0^2*x1 + 14*x1^3 + 57*x0*x1*x2 + ... + 19*x7*x9 + 40*x8*x9 + 49*x1\n', '            sage: f.degree()\n', '            3\n', '\n', '        We show that the default method does not sample uniformly at random from the ideal::\n', '\n', '            sage: P.<x,y,z> = GF(127)[]\n', '            sage: G = Sequence([x+7, y-2, z+110])\n', '            sage: I = Ideal([sum(P.random_element() * g for g in G) for _ in range(4)])\n', '            sage: all(I.random_element(degree=1) == 0 for _ in range(100))\n', '            True\n', '\n', '        If degree equals the degree of the generators a random linear\n', '        combination of the generators is returned::\n', '\n', '            sage: P.<x,y> = QQ[]\n', '            sage: I = P.ideal([x^2,y^2])\n', '            sage: set_random_seed(5)\n', '            sage: I.random_element(degree=2)\n', '            -2*x^2 + 2*y^2\n', '\n', '        """\n', '        if compute_gb:\n', '            gens = self.groebner_basis()\n', '        else:\n', '            gens = self.basis\n', '\n', '        R = self.ring()\n', '\n', '        r = R.zero()\n', '\n', '        for f in gens:\n', '            d = degree - f.degree()\n', '            if d >= 0:\n', '                h = R.random_element(degree=d, *args, **kwds)\n', '                r += h*f\n', '        return r\n', '\n', '    @require_field\n', '    def weil_restriction(self):\n', '        r"""\n', '        Compute the Weil restriction of this ideal over some extension\n', '        field. If the field is a finite field, then this computes\n', '        the Weil restriction to the prime subfield.\n', '\n', '        A Weil restriction of scalars - denoted `Res_{L/k}` - is a\n', '        functor which, for any finite extension of fields `L/k` and\n', '        any algebraic variety `X` over `L`, produces another\n', '        corresponding variety `Res_{L/k}(X)`, defined over `k`. It is\n', '        useful for reducing questions about varieties over large\n', '        fields to questions about more complicated varieties over\n', '        smaller fields.\n', '\n', '        This function does not compute this Weil restriction directly\n', '        but computes on generating sets of polynomial ideals:\n', '\n', '        Let `d` be the degree of the field extension `L/k`, let `a` a\n', '        generator of `L/k` and `p` the minimal polynomial of\n', '        `L/k`. Denote this ideal by `I`.\n', '\n', '        Specifically, this function first maps each variable `x` to\n', '        its representation over `k`: `\\sum_{i=0}^{d-1} a^i x_i`. Then\n', '        each generator of `I` is evaluated over these representations\n', '        and reduced modulo the minimal polynomial `p`. The result is\n', '        interpreted as a univariate polynomial in `a` and its\n', '        coefficients are the new generators of the returned ideal.\n', '\n', '        If the input and the output ideals are radical, this is\n', '        equivalent to the statement about algebraic varieties above.\n', '\n', '        OUTPUT: MPolynomial Ideal\n', '\n', '        EXAMPLES::\n', '\n', '            sage: k.<a> = GF(2^2)\n', '            sage: P.<x,y> = PolynomialRing(k,2)\n', '            sage: I = Ideal([x*y + 1, a*x + 1])\n', '            sage: I.variety()\n', '            [{y: a, x: a + 1}]\n', '            sage: J = I.weil_restriction()\n', '            sage: J\n', '            Ideal (x0*y0 + x1*y1 + 1, x1*y0 + x0*y1 + x1*y1, x1 + 1, x0 + x1) of\n', '            Multivariate Polynomial Ring in x0, x1, y0, y1 over Finite Field of size\n', '            2\n', '            sage: J += sage.rings.ideal.FieldIdeal(J.ring()) # ensure radical ideal\n', '            sage: J.variety() # py2\n', '            [{y1: 1, x1: 1, x0: 1, y0: 0}]\n', '            sage: J.variety() # py3\n', '            [{y1: 1, y0: 0, x1: 1, x0: 1}]\n', '\n', '            sage: J.weil_restriction() # returns J\n', '            Ideal (x0*y0 + x1*y1 + 1, x1*y0 + x0*y1 + x1*y1, x1 + 1, x0 + x1, x0^2 +\n', '            x0, x1^2 + x1, y0^2 + y0, y1^2 + y1) of Multivariate Polynomial Ring in\n', '            x0, x1, y0, y1 over Finite Field of size 2\n', '\n', '            sage: k.<a> = GF(3^5)\n', '            sage: P.<x,y,z> = PolynomialRing(k)\n', '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: I.dimension()\n', '            0\n', '            sage: I.variety() # py2\n', '            [{y: 0, z: 0, x: 1}]\n', '            sage: I.variety() # py3\n', '             [{z: 0, y: 0, x: 1}]\n', '\n', '            sage: J = I.weil_restriction(); J\n', '            Ideal (x0 - y0 - z0 - 1, x1 - y1 - z1, x2 - y2 - z2, x3 - y3 - z3, x4 -\n', '            y4 - z4, x0^2 + x2*x3 + x1*x4 - y0^2 - y2*y3 - y1*y4 - z0^2 - z2*z3 -\n', '            z1*z4 - x0, -x0*x1 - x2*x3 - x3^2 - x1*x4 + x2*x4 + y0*y1 + y2*y3 + y3^2\n', '            + y1*y4 - y2*y4 + z0*z1 + z2*z3 + z3^2 + z1*z4 - z2*z4 - x1, x1^2 -\n', '            x0*x2 + x3^2 - x2*x4 + x3*x4 - y1^2 + y0*y2 - y3^2 + y2*y4 - y3*y4 -\n', '            z1^2 + z0*z2 - z3^2 + z2*z4 - z3*z4 - x2, -x1*x2 - x0*x3 - x3*x4 - x4^2\n', '            + y1*y2 + y0*y3 + y3*y4 + y4^2 + z1*z2 + z0*z3 + z3*z4 + z4^2 - x3, x2^2\n', '            - x1*x3 - x0*x4 + x4^2 - y2^2 + y1*y3 + y0*y4 - y4^2 - z2^2 + z1*z3 +\n', '            z0*z4 - z4^2 - x4, -x0*y0 + x4*y1 + x3*y2 + x2*y3 + x1*y4 - y0*z0 +\n', '            y4*z1 + y3*z2 + y2*z3 + y1*z4 - y0, -x1*y0 - x0*y1 - x4*y1 - x3*y2 +\n', '            x4*y2 - x2*y3 + x3*y3 - x1*y4 + x2*y4 - y1*z0 - y0*z1 - y4*z1 - y3*z2 +\n', '            y4*z2 - y2*z3 + y3*z3 - y1*z4 + y2*z4 - y1, -x2*y0 - x1*y1 - x0*y2 -\n', '            x4*y2 - x3*y3 + x4*y3 - x2*y4 + x3*y4 - y2*z0 - y1*z1 - y0*z2 - y4*z2 -\n', '            y3*z3 + y4*z3 - y2*z4 + y3*z4 - y2, -x3*y0 - x2*y1 - x1*y2 - x0*y3 -\n', '            x4*y3 - x3*y4 + x4*y4 - y3*z0 - y2*z1 - y1*z2 - y0*z3 - y4*z3 - y3*z4 +\n', '            y4*z4 - y3, -x4*y0 - x3*y1 - x2*y2 - x1*y3 - x0*y4 - x4*y4 - y4*z0 -\n', '            y3*z1 - y2*z2 - y1*z3 - y0*z4 - y4*z4 - y4) of Multivariate Polynomial\n', '            Ring in x0, x1, x2, x3, x4, y0, y1, y2, y3, y4, z0, z1, z2, z3, z4 over\n', '            Finite Field of size 3\n', '            sage: J += sage.rings.ideal.FieldIdeal(J.ring()) # ensure radical ideal\n', '            sage: from sage.doctest.fixtures import reproducible_repr\n', '            sage: print(reproducible_repr(J.variety()))\n', '            [{x0: 1, x1: 0, x2: 0, x3: 0, x4: 0, y0: 0, y1: 0, y2: 0, y3: 0, y4: 0, z0: 0, z1: 0, z2: 0, z3: 0, z4: 0}]\n', '\n', '\n', '        Weil restrictions are often used to study elliptic curves over\n', '        extension fields so we give a simple example involving those::\n', '\n', '            sage: K.<a> = QuadraticField(1/3)\n', '            sage: E = EllipticCurve(K,[1,2,3,4,5])\n', '\n', '        We pick a point on ``E``::\n', '\n', '            sage: p = E.lift_x(1); p\n', '            (1 : 2 : 1)\n', '\n', '            sage: I = E.defining_ideal(); I\n', '            Ideal (-x^3 - 2*x^2*z + x*y*z + y^2*z - 4*x*z^2 + 3*y*z^2 - 5*z^3) of Multivariate Polynomial Ring in x, y, z over Number Field in a with defining polynomial x^2 - 1/3 with a = 0.5773502691896258?\n', '\n', '        Of course, the point ``p`` is a root of all generators of ``I``::\n', '\n', '            sage: I.subs(x=1,y=2,z=1)\n', '            Ideal (0) of Multivariate Polynomial Ring in x, y, z over Number Field in a with defining polynomial x^2 - 1/3 with a = 0.5773502691896258?\n', '\n', '        ``I`` is also radical::\n', '\n', '            sage: I.radical() == I\n', '            True\n', '\n', '        So we compute its Weil restriction::\n', '\n', '            sage: J = I.weil_restriction()\n', '            sage: J\n', '            Ideal (-x0^3 - x0*x1^2 - 2*x0^2*z0 - 2/3*x1^2*z0 + x0*y0*z0 + y0^2*z0 +\n', '            1/3*x1*y1*z0 + 1/3*y1^2*z0 - 4*x0*z0^2 + 3*y0*z0^2 - 5*z0^3 -\n', '            4/3*x0*x1*z1 + 1/3*x1*y0*z1 + 1/3*x0*y1*z1 + 2/3*y0*y1*z1 - 8/3*x1*z0*z1\n', '            + 2*y1*z0*z1 - 4/3*x0*z1^2 + y0*z1^2 - 5*z0*z1^2, -3*x0^2*x1 - 1/3*x1^3\n', '            - 4*x0*x1*z0 + x1*y0*z0 + x0*y1*z0 + 2*y0*y1*z0 - 4*x1*z0^2 + 3*y1*z0^2\n', '            - 2*x0^2*z1 - 2/3*x1^2*z1 + x0*y0*z1 + y0^2*z1 + 1/3*x1*y1*z1 +\n', '            1/3*y1^2*z1 - 8*x0*z0*z1 + 6*y0*z0*z1 - 15*z0^2*z1 - 4/3*x1*z1^2 +\n', '            y1*z1^2 - 5/3*z1^3) of Multivariate Polynomial Ring in x0, x1, y0, y1,\n', '            z0, z1 over Rational Field\n', '\n', '        We can check that the point ``p`` is still a root of all generators of ``J``::\n', '\n', '            sage: J.subs(x0=1,y0=2,z0=1,x1=0,y1=0,z1=0)\n', '            Ideal (0, 0) of Multivariate Polynomial Ring in x0, x1, y0, y1, z0, z1 over Rational Field\n', '\n', '        Example for relative number fields::\n', '\n', '            sage: R.<x> = QQ[]\n', '            sage: K.<w> = NumberField(x^5-2)\n', '            sage: R.<x> = K[]\n', '            sage: L.<v> = K.extension(x^2+1)\n', '            sage: S.<x,y> = L[]\n', '            sage: I = S.ideal([y^2-x^3-1])\n', '            sage: I.weil_restriction()\n', '            Ideal (-x0^3 + 3*x0*x1^2 + y0^2 - y1^2 - 1, -3*x0^2*x1 + x1^3 + 2*y0*y1)\n', '            of Multivariate Polynomial Ring in x0, x1, y0, y1 over Number Field in w\n', '            with defining polynomial x^5 - 2\n', '\n', '        .. NOTE::\n', '\n', '            Based on a Singular implementation by Michael Brickenstein\n', '        """\n', '        from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing\n', '\n', '        R = self.ring()\n', '        nvars = R.ngens()\n', '        L = R.base_ring()\n', '        if L.is_finite():\n', '            k = L.prime_subfield()\n', '            d = L.degree()\n', '            poly = L.polynomial()\n', '        else:\n', '            k = L.base_field()\n', '            d = L.relative_degree()\n', '            poly = L.relative_polynomial()\n', '\n', '        if d == 1:\n', '            return self\n', '\n', "        helper = PolynomialRing(k, nvars + 1, (L.variable_name(),) + R.variable_names(), order='lex')\n", '        myminpoly = poly.subs(helper.gen(0))\n', '\n', '        l = [helper(str(f))  for f in self.gens()]\n', '        r = myminpoly.degree()\n', "        intermediate_ring = PolynomialRing(k, nvars*r+1, 'x')\n", '        a = intermediate_ring.gen(0)\n', '\n', '        # map e.g. x -> a^2*x_2 + a*x_1 + x_0, where x_0,..,x_2\n', '        # represent the components of x if viewed as a vector in k^r\n', '        map_ideal = [a]\n', '\n', '        variables = iter(intermediate_ring.gens()[1:])\n', '        for _ in range(nvars):\n', '           map_ideal.append(sum([a**i * next(variables) for i in range(r)]))\n', '\n', '        myminpoly = myminpoly(*map_ideal)\n', '        l = [f(*map_ideal).reduce([myminpoly]) for f in l]\n', '\n', '        result = []\n', '        # split e.g. a^2*x2+a*x1+x0 to x0,x1,x2\n', '        for f in l:\n', '            t = []\n', '            for i in reversed(range(r)):\n', '               g = f.coefficient(a**i)\n', '               f =  f - a**i * g\n', '               t.append(g)\n', '            result += reversed(t)\n', '\n', '        # eliminate parameter\n', '        new_var_names = [str(var) + "%d"%i for var in R.gens() for i in range(r)]\n', '\n', '        result_ring = PolynomialRing(k, nvars*r, new_var_names)\n', '\n', '        map_ideal = (0,) + result_ring.gens()\n', '        result = [h(*map_ideal) for h in result]\n', '\n', '        return result_ring.ideal(result)\n'], 3399)
> sage: x = var('x') ## line 2314 ##
> sage: sage_getsourcelines(x) ## line 2315 ##
> (['cdef class Expression(CommutativeRingElement):\n', '    cpdef object pyobject(self):\n', '        """\n', '        Get the underlying Python object.\n', '\n', '        OUTPUT:\n', '\n', '        The Python object corresponding to this expression, assuming\n', '        this expression is a single numerical value or an infinity\n', '        representable in Python. Otherwise, a ``TypeError`` is raised.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x')\n", '            x\n', '            sage: b = -17.3\n', '            sage: a = SR(b)\n', '            sage: a.pyobject()\n', '            -17.3000000000000\n', '            sage: a.pyobject() is b\n', '            True\n', '\n', '        Integers and Rationals are converted internally though, so you\n', "        won't get back the same object::\n", '\n', '            sage: b = -17/3\n', '            sage: a = SR(b)\n', '            sage: a.pyobject()\n', '            -17/3\n', '            sage: a.pyobject() is b\n', '            False\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).pyobject()\n', '            +Infinity\n', '            sage: SR(-oo).pyobject()\n', '            -Infinity\n', '            sage: SR(unsigned_infinity).pyobject()\n', '            Infinity\n', '            sage: SR(I*oo).pyobject()\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: Python infinity cannot have complex phase.\n', '        """\n', '        cdef GConstant* c\n', '        if is_a_constant(self._gobj):\n', '            from sage.symbolic.constants import constants_name_table\n', '            return constants_name_table[ccrepr(self._gobj)]\n', '\n', '        if is_a_infinity(self._gobj):\n', '            if (ex_to_infinity(self._gobj).is_unsigned_infinity()): return unsigned_infinity\n', '            if (ex_to_infinity(self._gobj).is_plus_infinity()):     return infinity\n', '            if (ex_to_infinity(self._gobj).is_minus_infinity()):    return minus_infinity\n', "            raise TypeError('Python infinity cannot have complex phase.')\n", '\n', '        if not is_a_numeric(self._gobj):\n', '            raise TypeError("self must be a numeric expression")\n', '        return py_object_from_numeric(self._gobj)\n', '\n', '    def __init__(self, SR, x=0):\n', '        """\n', '        Nearly all expressions are created by calling new_Expression_from_*,\n', '        but we need to make sure this at least does not leave self._gobj\n', '        uninitialized and segfault.\n', '\n', '        TESTS::\n', '\n', '            sage: sage.symbolic.expression.Expression(SR)\n', '            0\n', '            sage: sage.symbolic.expression.Expression(SR, 5)\n', '            5\n', '\n', '        We test subclassing ``Expression``::\n', '\n', '            sage: from sage.symbolic.expression import Expression\n', '            sage: class exp_sub(Expression): pass\n', "            sage: f = function('f')\n", '            sage: t = f(x)\n', '            sage: u = exp_sub(SR, t)\n', '            sage: u.operator()\n', '            f\n', '        """\n', '        self._parent = SR\n', '        cdef Expression exp = self.coerce_in(x)\n', '        self._gobj = GEx(exp._gobj)\n', '\n', '    def __getstate__(self):\n', '        """\n', '        Return a tuple describing the state of this expression for pickling.\n', '\n', '        This should return all information that will be required to unpickle\n', '        the object. The functionality for unpickling is implemented in\n', '        __setstate__().\n', '\n', '        In order to pickle Expression objects, we return a tuple containing\n', '\n', '         * 0  - as pickle version number\n', '                in case we decide to change the pickle format in the feature\n', '         * names of symbols of this expression\n', '         * a string representation of self stored in a Pynac archive.\n', '\n', '        TESTS::\n', '\n', "            sage: var('x,y,z')\n", '            (x, y, z)\n', '            sage: t = 2*x*y^z+3\n', '            sage: s = dumps(t)\n', '\n', '            sage: t.__getstate__()\n', '            (0,\n', "             ['x', 'y', 'z'],\n", '             ...)\n', '        """\n', '        cdef GArchive ar\n', '        ar.archive_ex(self._gobj, "sage_ex")\n', '        return (0, [repr(x) for x in self.variables()], ccrepr(ar))\n', '\n', '    def _dbgprint(self):\n', '        r"""\n', '        Print pynac debug output to ``stderr``.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (1+x)._dbgprint()\n', '            x + 1\n', '        """\n', '        sig_on()\n', '        try:\n', '            self._gobj.dbgprint()\n', '        finally:\n', '            sig_off()\n', '\n', '    def _dbgprinttree(self):\n', '        r"""\n', '        Print pynac expression tree debug output to ``stderr``.\n', '\n', '        EXAMPLES:\n', '\n', '        The expression tree is composed of Ginac primitives\n', '        and functions, organized by the tree, with various\n', '        other memory and hash information which will vary::\n', '\n', '            sage: (1+x+exp(x+1))._dbgprinttree()    # not tested\n', '            add @0x65e5960, hash=0x4727e01a, flags=0x3, nops=3\n', '                x (symbol) @0x6209150, serial=6, hash=0x2057b15e, flags=0xf, domain=0\n', '                1 (numeric) @0x3474cf0, hash=0x0, flags=0x7\n', '                -----\n', '                function exp @0x24835d0, hash=0x765c2165, flags=0xb, nops=1\n', '                    add @0x65df570, hash=0x420740d2, flags=0xb, nops=2\n', '                        x (symbol) @0x6209150, serial=6, hash=0x2057b15e, flags=0xf, domain=0\n', '                        1 (numeric) @0x3474cf0, hash=0x0, flags=0x7\n', '                        -----\n', '                        overall_coeff\n', '                        1 (numeric) @0x65e4df0, hash=0x7fd3, flags=0x7\n', '                        =====\n', '                    =====\n', '                1 (numeric) @0x3474cf0, hash=0x0, flags=0x7\n', '                -----\n', '                overall_coeff\n', '                1 (numeric) @0x663cc40, hash=0x7fd3, flags=0x7\n', '                =====\n', '\n', '        TESTS:\n', '\n', '        This test is just to make sure the function is working::\n', '\n', '            sage: (1+x+exp(x+1))._dbgprinttree()\n', '            add @...\n', '                x (symbol) ...\n', '                1 (numeric) ...\n', '                ...\n', '                overall_coeff\n', '                1 (numeric) ...\n', '                =====\n', '\n', '        Check that user-defined functions get the same treatment (:trac:`19194`)::\n', '\n', "            sage: f=function('f')(x)\n", '            sage: f._dbgprinttree()\n', '            function f ...\n', '                x (symbol) ...\n', '                =====\n', '        """\n', '        sig_on()\n', '        try:\n', '            self._gobj.dbgprinttree()\n', '        finally:\n', '            sig_off()\n', '\n', '    def __setstate__(self, state):\n', '        """\n', '        Initialize the state of the object from data saved in a pickle.\n', '\n', '        During unpickling __init__ methods of classes are not called, the saved\n', '        data is passed to the class via this function instead.\n', '\n', '        TESTS::\n', '\n', "            sage: var('x,y,z')\n", '            (x, y, z)\n', '            sage: t = 2*x*y^z+3\n', '            sage: u = loads(dumps(t)) # indirect doctest\n', '            sage: u\n', '            2*x*y^z + 3\n', '            sage: bool(t == u)\n', '            True\n', '            sage: u.subs(x=z)\n', '            2*y^z*z + 3\n', '\n', '            sage: loads(dumps(x.parent()(2)))\n', '            2\n', '        """\n', '        # check input\n', '        if state[0] != 0 or len(state) != 3:\n', '            raise ValueError("unknown state information")\n', '        # set parent\n', '        self._parent = ring.SR\n', '        # get variables\n', '        cdef GExList sym_lst\n', '        for name in state[1]:\n', '            sym_lst.append_sym(\\\n', '                    ex_to_symbol((<Expression>ring.SR.symbol(name))._gobj))\n', '\n', '        # initialize archive\n', '        cdef GArchive ar\n', '        ccreadstr(ar, state[2])\n', '\n', '        # extract the expression from the archive\n', '        self._gobj = GEx(ar.unarchive_ex(sym_lst, <unsigned>0))\n', '\n', '    def __copy__(self):\n', '        """\n', '        TESTS::\n', '\n', '            sage: copy(x)\n', '            x\n', '        """\n', '        return new_Expression_from_GEx(self._parent, self._gobj)\n', '\n', '    def _repr_(self):\n', '        """\n', '        Return string representation of this symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: var("x y")\n', '            (x, y)\n', '            sage: repr(x+y)\n', "            'x + y'\n", '\n', '        TESTS:\n', '\n', '        Rational functions::\n', '\n', '            sage: x/y\n', '            x/y\n', '            sage: x/2/y\n', '            1/2*x/y\n', '            sage: .5*x/y\n', '            0.500000000000000*x/y\n', '            sage: x^(-1)\n', '            1/x\n', '            sage: x^(-5)\n', '            x^(-5)\n', '            sage: x^(-y)\n', '            1/(x^y)\n', '            sage: 2*x^(-1)\n', '            2/x\n', '            sage: i*x\n', '            I*x\n', '            sage: -x.parent(i)\n', '            -I\n', '            sage: y + 3*(x^(-1))\n', '            y + 3/x\n', '\n', '        Printing the exp function::\n', '\n', '            sage: x.parent(1).exp()\n', '            e\n', '            sage: x.exp()\n', '            e^x\n', '\n', '        Powers::\n', '\n', "            sage: _ = var('A,B,n'); (A*B)^n\n", '            (A*B)^n\n', '            sage: (A/B)^n\n', '            (A/B)^n\n', '            sage: n*x^(n-1)\n', '            n*x^(n - 1)\n', '            sage: (A*B)^(n+1)\n', '            (A*B)^(n + 1)\n', '            sage: (A/B)^(n-1)\n', '            (A/B)^(n - 1)\n', '            sage: n*x^(n+1)\n', '            n*x^(n + 1)\n', '            sage: n*x^(n-1)\n', '            n*x^(n - 1)\n', '            sage: n*(A/B)^(n+1)\n', '            n*(A/B)^(n + 1)\n', '            sage: (n+A/B)^(n+1)\n', '            (n + A/B)^(n + 1)\n', '\n', '        Powers where the base or exponent is a Python object::\n', '\n', '            sage: (2/3)^x\n', '            (2/3)^x\n', '            sage: x^CDF(1,2)\n', '            x^(1.0 + 2.0*I)\n', '            sage: (2/3)^(2/3)\n', '            (2/3)^(2/3)\n', '            sage: (-x)^(1/4)\n', '            (-x)^(1/4)\n', '\n', '        Check if :trac:`7876` is fixed::\n', '\n', '            sage: (1/2-1/2*I )*sqrt(2)\n', '            -(1/2*I - 1/2)*sqrt(2)\n', '            sage: latex((1/2-1/2*I )*sqrt(2))\n', '            -\\left(\\frac{1}{2} i - \\frac{1}{2}\\right) \\, \\sqrt{2}\n', '\n', '        Check if :trac:`9632` is fixed::\n', '\n', '            sage: zeta(x) + cos(x)\n', '            cos(x) + zeta(x)\n', '            sage: psi(1,1/3)*log(3)\n', '            log(3)*psi(1, 1/3)\n', '        """\n', '        return self._parent._repr_element_(self)\n', '\n', '    def _sympy_character_art(self, use_unicode):\n', '        r"""\n', '        Create character art using Sympy\n', '\n', '        INPUT:\n', '\n', '        - ``use_unicode`` -- boolean. Whether to allow unicode instead\n', '          of 7-bit clean output.\n', '\n', '        OUTPUT:\n', '\n', '        String.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: i = var('i')\n", '            sage: integral(exp(x + x^2)/(x+1), x)._sympy_character_art(False)\n', "            '  /          \\n |           \\n |   2       \\n |  x  + x   \\n | e...'\n", '        """\n', '        from sympy import pretty, sympify\n', '        # FIXME:: when *sage* will use at least sympy >= 0.7.2\n', '        # we could use a nice splitting with respect of the AsciiArt module.\n', '        # from sage.typeset.ascii_art import AsciiArt, MAX_LENGTH ## for import\n', '        #            num_columns = MAX_LENGTH  ## option of pretty\n', '        try:\n', '            return pretty(sympify(self, evaluate=False), use_unicode=use_unicode)\n', '        except Exception:\n', '            return str(self)\n', '\n', '    def _ascii_art_(self):\n', '        """\n', '        Ascii art magic method.\n', '\n', '        See :mod:`sage.typeset.ascii_art` for details.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: i = var('i')\n", '            sage: ascii_art(sum(i^2/pi*x^i, i, 0, oo))\n', '                          2\n', '                         x  + x\n', '            -------------------------------\n', '                  3         2\n', '            - pi*x  + 3*pi*x  - 3*pi*x + pi\n', '            sage: ascii_art(integral(exp(x + x^2)/(x+1), x))\n', '              /\n', '             |\n', '             |   2\n', '             |  x  + x\n', '             | e\n', '             | ------- dx\n', '             |  x + 1\n', '             |\n', '            /\n', '        """\n', '        from sage.typeset.ascii_art import AsciiArt\n', '        return AsciiArt(self._sympy_character_art(False).splitlines())\n', '\n', '    def _unicode_art_(self):\n', '        u"""\n', '        Unicode art magic method.\n', '\n', '        See :mod:`sage.typeset.unicode_art` for details.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: i = var('i')\n", '            sage: unicode_art(sum(i^2/pi*x^i, i, 0, oo))\n', '                        2\n', '                       x  + x\n', '            ───────────────────────────\n', '                 3        2\n', '            - π⋅x  + 3⋅π⋅x  - 3⋅π⋅x + π\n', '            sage: unicode_art(integral(exp(x + x^2)/(x+1), x))\n', '            ⌠\n', '            ⎮   2\n', '            ⎮  x  + x\n', '            ⎮ ℯ\n', '            ⎮ ─────── dx\n', '            ⎮  x + 1\n', '            ⌡\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`28891` is fixed::\n', '\n', '            sage: unicode_art(exp(x).series(x, 4))\n', '                     2    3\n', '                    x    x     ⎛ 4⎞\n', '            1 + x + ── + ── + O⎝x ⎠\n', '                    2    6\n', '            sage: unicode_art(exp(x).series(x==1, 3))\n', '                                     2\n', '                            ℯ⋅(x - 1)     ⎛       3       ⎞\n', '            ℯ + ℯ⋅(x - 1) + ────────── + O⎝(x - 1) ; x → 1⎠\n', '                                2\n', '        """\n', '        from sage.typeset.unicode_art import UnicodeArt\n', '        return UnicodeArt(self._sympy_character_art(True).splitlines())\n', '\n', '    def _interface_(self, I):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: f = sin(e + 2)\n', '            sage: f._interface_(sage.calculus.calculus.maxima)\n', '            sin(%e+2)\n', '        """\n', '        if is_a_constant(self._gobj):\n', '            return self.pyobject()._interface_(I)\n', '        return super(Expression, self)._interface_(I)\n', '\n', '    def _maxima_(self, session=None):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: f = sin(e + 2)\n', '            sage: f._maxima_()\n', '            sin(%e+2)\n', '            sage: _.parent() is sage.calculus.calculus.maxima\n', '            True\n', '        """\n', '        if session is None:\n', '            # This chooses the Maxima interface used by calculus\n', '            # Maybe not such a great idea because the "default" interface is another one\n', '            from sage.calculus.calculus import maxima\n', '            return super(Expression, self)._interface_(maxima)\n', '        else:\n', '            return super(Expression, self)._interface_(session)\n', '\n', '    def _interface_init_(self, I):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: a = (pi + 2).sin()\n', '            sage: a._maxima_init_()\n', "            'sin((%pi)+(2))'\n", '\n', '            sage: a = (pi + 2).sin()\n', '            sage: a._maple_init_()\n', "            'sin((pi)+(2))'\n", '\n', '            sage: a = (pi + 2).sin()\n', '            sage: a._mathematica_init_()\n', "            'Sin[(Pi)+(2)]'\n", '\n', '            sage: f = pi + I*e\n', '            sage: f._pari_init_()\n', "            '(Pi)+((exp(1))*(I))'\n", '\n', '        TESTS:\n', '\n', '        Check if complex numbers are converted to Maxima correctly\n', '        :trac:`7557`::\n', '\n', '            sage: SR(1.5*I)._maxima_init_()\n', "            '1.5000000000000000*%i'\n", '            sage: SR(CC.0)._maxima_init_()\n', "            '1.0000000000000000*%i'\n", '            sage: SR(CDF.0)._maxima_init_()\n', "            '1.0000000000000000*%i'\n", '        """\n', '        from sage.symbolic.expression_conversions import InterfaceInit\n', '        return InterfaceInit(I)(self)\n', '\n', '    def _gap_init_(self):\n', '        """\n', '        Convert symbolic object to GAP string.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: gap(e + pi^2 + x^3)\n', '            x^3 + pi^2 + e\n', '        """\n', '        return \'"%s"\'%repr(self)\n', '\n', '    def _singular_init_(self):\n', '        """\n', '        Conversion of a symbolic object to Singular string.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: singular(e + pi^2 + x^3)\n', '            x^3 + pi^2 + e\n', '        """\n', '        return \'"%s"\'%repr(self)\n', '\n', '    def _magma_init_(self, magma):\n', '        """\n', '        Return string representation in Magma of this symbolic expression.\n', '\n', '        Since Magma has no notation of symbolic calculus, this simply\n', '        returns something that evaluates in Magma to a a Magma string.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: f = sin(cos(x^2) + log(x))\n', '            sage: f._magma_init_(magma)\n', '            \'"sin(cos(x^2) + log(x))"\'\n', '            sage: magma(f)                         # optional - magma\n', '            sin(cos(x^2) + log(x))\n', '            sage: magma(f).Type()                  # optional - magma\n', '            MonStgElt\n', '        """\n', '        return \'"%s"\'%repr(self)\n', '\n', '    def _latex_(self):\n', '        r"""\n', '        Return string representation of this symbolic expression.\n', '\n', '        TESTS::\n', '\n', "            sage: var('x,y,z')\n", '            (x, y, z)\n', '            sage: latex(y + 3*(x^(-1)))\n', '            y + \\frac{3}{x}\n', '            sage: latex(x^(y+z^(1/y)))\n', '            x^{y + z^{\\left(\\frac{1}{y}\\right)}}\n', '            sage: latex(1/sqrt(x+y))\n', '            \\frac{1}{\\sqrt{x + y}}\n', '            sage: latex(sin(x*(z+y)^x))\n', '            \\sin\\left(x {\\left(y + z\\right)}^{x}\\right)\n', '            sage: latex(3/2*(x+y)/z/y)\n', '            \\frac{3 \\, {\\left(x + y\\right)}}{2 \\, y z}\n', '            sage: latex((2^(x^y)))\n', '            2^{\\left(x^{y}\\right)}\n', '            sage: latex(abs(x))\n', '            {\\left| x \\right|}\n', '            sage: latex((x*y).conjugate())\n', '            \\overline{x} \\overline{y}\n', '            sage: latex(x*(1/(x^2)+sqrt(x^7)))\n', '            x {\\left(\\sqrt{x^{7}} + \\frac{1}{x^{2}}\\right)}\n', '\n', '        Check spacing of coefficients of mul expressions (:trac:`3202` and\n', '        :trac:`13356`)::\n', '\n', '            sage: latex(2*3^x)\n', '            2 \\cdot 3^{x}\n', '            sage: latex(1/2/3^x)\n', '            \\frac{1}{2 \\cdot 3^{x}}\n', '            sage: latex(1/2*3^x)\n', '            \\frac{1}{2} \\cdot 3^{x}\n', '\n', '        Powers::\n', '\n', "            sage: _ = var('A,B,n')\n", '            sage: latex((n+A/B)^(n+1))\n', '            {\\left(n + \\frac{A}{B}\\right)}^{n + 1}\n', '            sage: latex((A*B)^n)\n', '            \\left(A B\\right)^{n}\n', '            sage: latex((A*B)^(n-1))\n', '            \\left(A B\\right)^{n - 1}\n', '\n', '        Powers where the base or exponent is a Python object::\n', '\n', '            sage: latex((2/3)^x)\n', '            \\left(\\frac{2}{3}\\right)^{x}\n', '            sage: latex(x^CDF(1,2))\n', '            x^{1.0 + 2.0i}\n', '            sage: latex((2/3)^(2/3))\n', '            \\left(\\frac{2}{3}\\right)^{\\frac{2}{3}}\n', '            sage: latex((-x)^(1/4))\n', '            \\left(-x\\right)^{\\frac{1}{4}}\n', '\n', '        More powers (:trac:`7406`)::\n', '\n', '            sage: latex((x^pi)^e)\n', '            {\\left(x^{\\pi}\\right)}^{e}\n', '            sage: latex((x^(pi+1))^e)\n', '            {\\left(x^{\\pi + 1}\\right)}^{e}\n', "            sage: a,b,c = var('a b c')\n", '            sage: latex(a^(b^c))\n', '            a^{\\left(b^{c}\\right)}\n', '            sage: latex((a^b)^c)\n', '            {\\left(a^{b}\\right)}^{c}\n', '\n', '        Separate coefficients to numerator and denominator (:trac:`7363`)::\n', '\n', '            sage: latex(2/(x+1))\n', '            \\frac{2}{x + 1}\n', '            sage: latex(1/2/(x+1))\n', '            \\frac{1}{2 \\, {\\left(x + 1\\right)}}\n', '\n', '        Check if rational function coefficients without a ``numerator()`` method\n', '        are printed correctly. :trac:`8491`::\n', '\n', '            sage: latex(6.5/x)\n', '            \\frac{6.50000000000000}{x}\n', '\n', '        Check if we avoid extra parenthesis in rational functions (:trac:`8688`)::\n', '\n', '            sage: latex((x+2)/(x^3+1))\n', '            \\frac{x + 2}{x^{3} + 1}\n', '            sage: latex((x+2)*(x+1)/(x^3+1))\n', '            \\frac{{\\left(x + 2\\right)} {\\left(x + 1\\right)}}{x^{3} + 1}\n', '            sage: latex((x+2)/(x^3+1)/(x+1))\n', '            \\frac{x + 2}{{\\left(x^{3} + 1\\right)} {\\left(x + 1\\right)}}\n', '\n', '        Check that the sign is correct (:trac:`9086`)::\n', '\n', '            sage: latex(-1/x)\n', '            -\\frac{1}{x}\n', '            sage: latex(1/-x)\n', '            -\\frac{1}{x}\n', '\n', '        More tests for the sign (:trac:`9314`)::\n', '\n', '            sage: latex(-2/x)\n', '            -\\frac{2}{x}\n', '            sage: latex(-x/y)\n', '            -\\frac{x}{y}\n', '            sage: latex(-x*z/y)\n', '            -\\frac{x z}{y}\n', '            sage: latex(-x/z/y)\n', '            -\\frac{x}{y z}\n', '\n', '        Check if :trac:`9394` is fixed::\n', '\n', "            sage: var('n')\n", '            n\n', '            sage: latex( e^(2*I*pi*n*x - 2*I*pi*n) )\n', '            e^{\\left(2 i \\, \\pi n x - 2 i \\, \\pi n\\right)}\n', '            sage: latex( e^(2*I*pi*n*x - (2*I+1)*pi*n) )\n', '            e^{\\left(2 i \\, \\pi n x - \\left(2 i + 1\\right) \\, \\pi n\\right)}\n', '            sage: x+(1-2*I)*y\n', '            x - (2*I - 1)*y\n', '            sage: latex(x+(1-2*I)*y)\n', '            x - \\left(2 i - 1\\right) \\, y\n', '\n', '        Check if complex coefficients with denominators are displayed\n', '        correctly (:trac:`10769`)::\n', '\n', "            sage: var('a x')\n", '            (a, x)\n', '            sage: latex(1/2*I/x)\n', '            \\frac{i}{2 \\, x}\n', '            sage: ratio = i/2* x^2/a\n', '            sage: latex(ratio)\n', '            \\frac{i \\, x^{2}}{2 \\, a}\n', '\n', '        Parenthesis in powers (:trac:`13262`)::\n', '\n', '            sage: latex(1+x^(2/3)+x^(-2/3))\n', '            x^{\\frac{2}{3}} + \\frac{1}{x^{\\frac{2}{3}}} + 1\n', '        """\n', '        return self._parent._latex_element_(self)\n', '\n', '    def _mathml_(self):\n', '        """\n', '        Return a MathML representation of this object.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: mathml(pi)\n', '            <mi>π</mi>\n', '            sage: mathml(pi+2)\n', '            MATHML version of the string pi + 2\n', '\n', '        """\n', '        from sage.misc.all import mathml\n', '        try:\n', '            obj = self.pyobject()\n', '        except TypeError:\n', '            return mathml(repr(self))\n', '        return mathml(obj)\n', '\n', '    def _integer_(self, ZZ=None):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: f = x^3 + 17*x -3\n', '            sage: ZZ(f.coefficient(x^3))\n', '            1\n', '            sage: ZZ(f.coefficient(x))\n', '            17\n', '            sage: ZZ(f.coefficient(x,0))\n', '            -3\n', '            sage: type(ZZ(f.coefficient(x,0)))\n', "            <type 'sage.rings.integer.Integer'>\n", '\n', '        Coercion is done if necessary::\n', '\n', '            sage: f = x^3 + 17/1*x\n', '            sage: ZZ(f.coefficient(x))\n', '            17\n', '            sage: type(ZZ(f.coefficient(x)))\n', "            <type 'sage.rings.integer.Integer'>\n", '\n', '        If the symbolic expression is just a wrapper around an integer,\n', '        that very same integer is not preserved, but a new one returned::\n', '\n', '            sage: n = 17; SR(n)._integer_() is n\n', '            False\n', '        """\n', '        try:\n', '            n = self.pyobject()\n', '        except TypeError:\n', '            raise TypeError("unable to convert %r to an integer" % self)\n', '        if isinstance(n, sage.rings.integer.Integer):\n', '            return n\n', '        return sage.rings.integer.Integer(n)\n', '\n', '    def __int__(self):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: int(log(8)/log(2))\n', '            3\n', '            sage: int(-log(8)/log(2))\n', '            -3\n', '            sage: int(sin(2)*100)\n', '            90\n', '            sage: int(-sin(2)*100)\n', '            -90\n', '            sage: int(SR(3^64)) == 3^64\n', '            True\n', '            sage: int(SR(10^100)) == 10^100\n', '            True\n', '            sage: int(SR(10^100-10^-100)) == 10^100 - 1\n', '            True\n', '            sage: int(sqrt(-3))\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: cannot convert sqrt(-3) to int\n', '        """\n', '        from sage.functions.all import floor, ceil\n', '        try:\n', '            rif_self = sage.rings.all.RIF(self)\n', '        except TypeError:\n', '            raise ValueError("cannot convert %s to int" % self)\n', '        if rif_self > 0 or (rif_self.contains_zero() and self > 0):\n', '            result = floor(self)\n', '        else:\n', '            result = ceil(self)\n', '        if not isinstance(result, sage.rings.integer.Integer):\n', '            raise ValueError("cannot convert %s to int" % self)\n', '        else:\n', '            return int(result)\n', '\n', '    def __long__(self):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: long(sin(2)*100)\n', '            90L\n', '        """\n', '        return long(int(self))\n', '\n', '    def _rational_(self):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: f = x^3 + 17/1*x - 3/8\n', '            sage: QQ(f.coefficient(x^2))\n', '            0\n', '            sage: QQ(f.coefficient(x^3))\n', '            1\n', '            sage: a = QQ(f.coefficient(x)); a\n', '            17\n', '            sage: type(a)\n', "            <type 'sage.rings.rational.Rational'>\n", '            sage: QQ(f.coefficient(x,0))\n', '            -3/8\n', '\n', '        If the symbolic expression is just a wrapper around a rational,\n', '        that very same rational is not preserved, but a new one returned::\n', '\n', '            sage: n = 17/1; SR(n)._rational_() is n\n', '            False\n', '        """\n', '        try:\n', '            n = self.pyobject()\n', '        except TypeError:\n', '            raise TypeError("unable to convert %s to a rational" % self)\n', '        if isinstance(n, sage.rings.rational.Rational):\n', '            return n\n', '        return sage.rings.rational.Rational(n)\n', '\n', '    cpdef _eval_self(self, R):\n', '        """\n', '        Evaluate this expression numerically.\n', '\n', '        This function is used to convert symbolic expressions to ``RR``,\n', '        ``CC``, ``float``, ``complex``, ``CIF`` and ``RIF``.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z')\n", '            (x, y, z)\n', '            sage: sin(x).subs(x=5)._eval_self(RR)\n', '            -0.958924274663138\n', '            sage: gamma(x).subs(x=I)._eval_self(CC)\n', '            -0.154949828301811 - 0.498015668118356*I\n', '            sage: x._eval_self(CC)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: Cannot evaluate symbolic expression to a numeric value.\n', '\n', '        Check if we can compute a real evaluation even if the expression\n', '        contains complex coefficients::\n', '\n', '            sage: RR((I - sqrt(2))*(I+sqrt(2)))\n', '            -3.00000000000000\n', '            sage: cos(I)._eval_self(RR)\n', '            1.54308063481524\n', '            sage: float(cos(I))  # abs tol 1e-15\n', '            1.5430806348152437\n', '\n', '        TESTS::\n', '\n', '            sage: e = sqrt(2)/sqrt(abs(-(I - 1)*sqrt(2) - I - 1))\n', '            sage: e._eval_self(float)\n', '            0.9036020036...\n', '        """\n', '        try:\n', "            res = self._convert({'parent':R})\n", '        except TypeError as err:\n', '            # try the evaluation again with the complex field\n', '            # corresponding to the parent R\n', '            if R in (float, complex):\n', '                R_complex = complex\n', '            else:\n', '                try:\n', '                    R_complex = R.complex_field()\n', '                except (TypeError, AttributeError):\n', '                    raise err\n', "            res = self._convert({'parent':R_complex})\n", '\n', '        if res.is_numeric():\n', '            ans = res.pyobject()\n', '            # Convert ans to R.\n', '            if R is float and isinstance(ans, complex) and not ans.imag:\n', '                # Python does not automatically convert "real" complex\n', '                # numbers to floats, so we do this manually:\n', '                ans = ans.real\n', '            return R(ans)\n', '        else:\n', '            raise TypeError("Cannot evaluate symbolic expression to a numeric value.")\n', '\n', '    cpdef _convert(self, kwds):\n', '        """\n', '        Convert all the numeric coefficients and constants in this expression\n', '        to the given ring `R`. This results in an expression which contains\n', '        only variables, and functions whose arguments contain a variable.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = sqrt(2) * cos(3); f\n', '            sqrt(2)*cos(3)\n', "            sage: f._convert({'parent':RDF})\n", '            -1.40006081533995\n', "            sage: f._convert({'parent':float})\n", '            -1.4000608153399503\n', '\n', '        There is nothing to convert for variables::\n', '\n', "            sage: x._convert({'parent':CC})\n", '            x\n', '\n', '        Note that the output is not meant to be in the in the given ring `R`.\n', '        Since the results of some functions will still be  floating point\n', '        approximations::\n', '\n', '            sage: t = log(10); t\n', '            log(10)\n', "            sage: t._convert({'parent':ZZ})\n", '            log(10)\n', '\n', '        ::\n', '\n', "            sage: (0.25 / (log(5.74 /x^0.9, 10))^2 / 4)._convert({'parent':QQ})\n", '            1/16*log(10)^2/log(287/50/x^0.900000000000000)^2\n', "            sage: (0.25 / (log(5.74 /x^0.9, 10))^2 / 4)._convert({'parent':CC})\n", '            0.331368631904900/log(5.74000000000000/x^0.900000000000000)^2\n', '\n', '        When converting to an exact domain, powers remain unevaluated::\n', '\n', '            sage: f = sqrt(2) * cos(3); f\n', '            sqrt(2)*cos(3)\n', "            sage: (sqrt(2))._convert({'parent':int})\n", '            sqrt(2)\n', "            sage: f._convert({'parent':int})\n", '            0\n', '        """\n', '        cdef GEx res = self._gobj.evalf(0, kwds)\n', '        return new_Expression_from_GEx(self._parent, res)\n', '\n', '    def _mpfr_(self, R):\n', '        """\n', '        Return a numerical approximation of this symbolic expression in the RealField R.\n', '\n', '        The precision of the approximation is determined by the precision of\n', '        the input R.\n', '\n', '        EXAMPLES::\n', '\n', '            0.090909090909090909090909090909090909090909090909090909090909\n', '\n', '            sage: a = sin(3); a\n', '            sin(3)\n', '            sage: RealField(200)(a)\n', '            0.14112000805986722210074480280811027984693326425226558415188\n', '            sage: a._mpfr_(RealField(100))\n', '            0.14112000805986722210074480281\n', '        """\n', '        return self._eval_self(R)\n', '\n', '    def _real_mpfi_(self, R):\n', '        """\n', '        Return this expression as a real interval.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: RIF(sqrt(2))\n', '            1.414213562373095?\n', '        """\n', '        try:\n', '            return self._eval_self(R)\n', '        except TypeError:\n', '            raise TypeError("unable to simplify to a real interval approximation")\n', '\n', '    def _complex_mpfi_(self, R):\n', '        """\n', '        Return this expression as a complex interval.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: CIF(pi)\n', '            3.141592653589794?\n', '        """\n', '        try:\n', '            return self._eval_self(R)\n', '        except TypeError:\n', '            raise TypeError("unable to simplify to a complex interval approximation")\n', '\n', '    def _real_double_(self, R):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: RDF(sin(3))\n', '            0.1411200080598672\n', '        """\n', '        return self._eval_self(R)\n', '\n', '    def _complex_mpfr_field_(self, R):\n', '        """\n', '        Return a numerical approximation to this expression in the given\n', '        ComplexField R.\n', '\n', '        The precision of the approximation is determined by the precision of\n', '        the input R.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: ComplexField(200)(SR(1/11))\n', '            0.090909090909090909090909090909090909090909090909090909090909\n', '            sage: zeta(x).subs(x=I)._complex_mpfr_field_(ComplexField(70))\n', '            0.0033002236853241028742 - 0.41815544914132167669*I\n', '            sage: gamma(x).subs(x=I)._complex_mpfr_field_(ComplexField(60))\n', '            -0.1549498283018106... - 0.49801566811835604*I\n', '            sage: log(x).subs(x=I)._complex_mpfr_field_(ComplexField(50))\n', '            1.5707963267949*I\n', '\n', '            sage: CC(sqrt(2))\n', '            1.41421356237309\n', '            sage: a = sqrt(-2); a\n', '            sqrt(-2)\n', '            sage: CC(a).imag()\n', '            1.41421356237309\n', '            sage: ComplexField(200)(a).imag()\n', '            1.4142135623730950488016887242096980785696718753769480731767\n', '            sage: ComplexField(100)((-1)^(1/10))\n', '            0.95105651629515357211643933338 + 0.30901699437494742410229341718*I\n', '            sage: CC(x*sin(0))\n', '            0.000000000000000\n', '        """\n', '        return self._eval_self(R)\n', '\n', '    def _complex_double_(self, R):\n', '        """\n', '        Return a numerical approximation to this expression in the given\n', '        Complex Double Field R.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: CDF(SR(1/11))\n', '            0.09090909090909091\n', '            sage: zeta(x).subs(x=I)._complex_double_(CDF)  # rel tol 1e-16\n', '            0.003300223685324103 - 0.4181554491413217*I\n', '            sage: gamma(x).subs(x=I)._complex_double_(CDF)\n', '            -0.15494982830181067 - 0.49801566811835607*I\n', '            sage: log(x).subs(x=I)._complex_double_(CDF)\n', '            1.5707963267948966*I\n', '            sage: CDF((-1)^(1/3))\n', '            0.5000000000000001 + 0.8660254037844386*I\n', '        """\n', '        return self._eval_self(R)\n', '\n', '    def __float__(self):\n', '        """\n', '        Return float conversion of self, assuming self is constant.\n', '        Otherwise, raise a TypeError.\n', '\n', '        OUTPUT:\n', '\n', '        A ``float``. Double precision evaluation of self.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: float(SR(12))\n', '            12.0\n', '            sage: float(SR(2/3))\n', '            0.6666666666666666\n', '            sage: float(sqrt(SR(2)))\n', '            1.4142135623730951\n', '            sage: float(SR(RIF(2)))\n', '            2.0\n', '            sage: float(x^2 + 1)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: unable to simplify to float approximation\n', '\n', '        TESTS::\n', '\n', '            sage: float(sqrt(2)/sqrt(abs(-(I - 1)*sqrt(2) - I - 1)))\n', '            0.9036020036...\n', '        """\n', '        from sage.functions.other import real, imag\n', '        try:\n', '            ret = float(self._eval_self(float))\n', '        except TypeError:\n', '            try:\n', '                c = (self._eval_self(complex))\n', '                if imag(c) == 0:\n', '                    ret = real(c)\n', '                else:\n', '                    raise\n', '            except TypeError:\n', '                raise TypeError("unable to simplify to float approximation")\n', '        return ret\n', '\n', '    def __complex__(self):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: complex(I)\n', '            1j\n', '            sage: complex(erf(3*I))\n', '            1629.9946226015657j\n', '        """\n', '        try:\n', '            return self._eval_self(complex)\n', '        except TypeError:\n', '            raise TypeError("unable to simplify to complex approximation")\n', '\n', '    def _sympy_(self):\n', '        """\n', '        Return a Sympy version of this object.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: pi._sympy_()\n', '            pi\n', '            sage: type(_)\n', "            <class 'sympy.core.numbers.Pi'>\n", '\n', '        """\n', '        from sage.symbolic.expression_conversions import sympy_converter\n', '        return sympy_converter(self)\n', '\n', '    def _fricas_init_(self):\n', '        """\n', '        Return a FriCAS version of this object.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: pi._fricas_()                                                 # optional - fricas\n', '            %pi\n', '\n', '        """\n', '        from sage.symbolic.expression_conversions import fricas_converter\n', '        return fricas_converter(self)\n', '\n', '    def _algebraic_(self, field):\n', '        """\n', '        Convert a symbolic expression to an algebraic number.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: QQbar(sqrt(2) + sqrt(8))\n', '            4.242640687119285?\n', '            sage: AA(sqrt(2) ^ 4) == 4\n', '            True\n', '            sage: AA(-golden_ratio)\n', '            -1.618033988749895?\n', '            sage: QQbar((2*I)^(1/2))\n', '            1 + 1*I\n', '            sage: QQbar(e^(pi*I/3))\n', '            0.50000000000000000? + 0.866025403784439?*I\n', '\n', '            sage: QQbar(sqrt(2))\n', '            1.414213562373095?\n', '            sage: AA(abs(1+I))\n', '            1.414213562373095?\n', '            sage: golden_ratio._algebraic_(QQbar)\n', '            1.618033988749895?\n', '            sage: QQbar(golden_ratio)\n', '            1.618033988749895?\n', '\n', '            sage: AA(x*sin(0))\n', '            0\n', '            sage: QQbar(x*sin(0))\n', '            0\n', '        """\n', '        from sage.symbolic.expression_conversions import algebraic\n', '        return algebraic(self, field)\n', '\n', '    def __hash__(self):\n', '        """\n', '        Return hash of this expression.\n', '\n', '        EXAMPLES::\n', '\n', '        The hash of an object in Python or its coerced version into\n', '        the symbolic ring is usually the same::\n', '\n', '            sage: hash(SR(3.1)) == hash(3.1)\n', '            True\n', '            sage: hash(SR(19.23)) == hash(19.23)\n', '            True\n', '            sage: hash(SR(3/1))\n', '            3\n', '            sage: hash(SR(19/23)) == hash(19/23)\n', '            True\n', '            sage: hash(SR(2^32)) == hash(2^32)\n', '            True\n', '            sage: hash(SR(2^64-1)) == hash(2^64-1)\n', '            True\n', '            sage: hash(SR(1e100)) == hash(1e100)\n', '            True\n', '\n', '        The hash for symbolic expressions are unfortunately random. Here we\n', '        only test that the hash() function returns without error, and that\n', '        the return type is correct::\n', '\n', '            sage: x, y = var("x y")\n', '            sage: t = hash(x); type(t)\n', "            <... 'int'>\n", '            sage: t = hash(x^y); type(t)\n', "            <... 'int'>\n", '            sage: type(hash(x+y))\n', "            <... 'int'>\n", '            sage: d = {x+y: 5}\n', '            sage: d\n', '            {x + y: 5}\n', '\n', '        In this example hashing is important otherwise the answer is\n', '        wrong::\n', '\n', '            sage: set([x-x, -x+x])\n', '            {0}\n', '\n', '        Test if exceptions during hashing are handled properly::\n', '\n', '            sage: t = SR(matrix(2,2,range(4)))\n', '            sage: hash(t)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: Python object not hashable\n', '\n', '        TESTS:\n', '\n', '        Test if hashes for fderivatives with different parameters collide.\n', '        :trac:`6243`::\n', '\n', "            sage: f = function('f'); t = f(x,y)\n", '            sage: u = t.derivative(x); v = t.derivative(y)\n', '            sage: hash(u) == hash(v)\n', '            False\n', '            sage: d = {u: 3, v: 5}; sorted(d.values())\n', '            [3, 5]\n', '\n', '        More checks for fderivative hashes :trac:`6851` ::\n', '\n', '            sage: hash(f(x).derivative(x)) == hash(f(x).derivative(x,2))\n', '            False\n', '            sage: d = dict( (f(x).derivative(x, i), i) for i in range(1,6) )\n', '            sage: len(d.keys())\n', '            5\n', '\n', '        We create a function with 10 arguments and test if there are\n', '        hash collisions between any of its derivatives of order at\n', '        most 7. :trac:`7508` ::\n', '\n', '            sage: num_vars = 10; max_order=7\n', "            sage: X = var(' '.join(['x'+str(i) for i in range(num_vars)]))\n", "            sage: f = function('f')(*X)\n", '            sage: hashes=set()\n', '            sage: for length in range(1,max_order+1):  # long time (4s on sage.math, 2012)\n', '            ....:     for s in UnorderedTuples(X, length):\n', '            ....:         deriv = f.diff(*s)\n', '            ....:         h = hash(deriv)\n', '            ....:         if h in hashes:\n', '            ....:             print("deriv: %s, hash:%s" % (deriv, h))\n', '            ....:         else:\n', '            ....:             hashes.add(n)\n', '\n', '        Check whether `oo` keeps its hash in `SR` (:trac:`19928`)::\n', '\n', '            sage: hash(oo) == hash(SR(oo))\n', '            True\n', '            sage: hash(oo) == hash((-x).subs(x=-oo))\n', '            True\n', '            sage: hash(-oo) == hash(SR(-oo))\n', '            True\n', '            sage: hash(-oo) == hash((-x).subs(x=oo))\n', '            True\n', '            sage: hash(unsigned_infinity) == hash(SR(unsigned_infinity))\n', '            True\n', '\n', '        Check a corner case for rational numbers (:trac:`28219`)::\n', '\n', '            sage: hash(-1/3) == hash(SR(-1/3))\n', '            True\n', '        """\n', '        sig_on()\n', '        try:\n', '            return self._gobj.gethash()\n', '        finally:\n', '            sig_off()\n', '\n', '    cdef bint _rel_equal1(Expression self, Expression other) except -1:\n', '        """\n', '        Internal helper function.\n', '        """\n', '        sig_on()\n', '        try:\n', '            return (self._gobj.lhs().is_equal(other._gobj.lhs())\n', '                    and self._gobj.rhs().is_equal(other._gobj.rhs()))\n', '        finally:\n', '            sig_off()\n', '\n', '    cdef bint _rel_equal2(Expression self, Expression other) except -1:\n', '        """\n', '        Internal helper function.\n', '        """\n', '        sig_on()\n', '        try:\n', '            return (self._gobj.lhs().is_equal(other._gobj.rhs())\n', '                    and self._gobj.rhs().is_equal(other._gobj.lhs()))\n', '        finally:\n', '            sig_off()\n', '\n', '    cpdef _richcmp_(left, right, int op):\n', '        """\n', '        Create a formal symbolic inequality or equality.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: x + 2/3 < y^2\n', '            x + 2/3 < y^2\n', '            sage: x^3 -y <= y + x\n', '            x^3 - y <= x + y\n', '            sage: x^3 -y == y + x\n', '            x^3 - y == x + y\n', '            sage: x^3 - y^10 >= y + x^10\n', '            -y^10 + x^3 >= x^10 + y\n', '            sage: x^2 > x\n', '            x^2 > x\n', '\n', '        Testing :trac:`11309` which changes the behavior of comparison of\n', '        comparisons::\n', '\n', '            sage: (-x + y < 0) in [x - y < 0]\n', '            False\n', '            sage: (x - 1 < 0) in [x - 2 < 0]\n', '            False\n', '            sage: len(Set([-x + y < 0, x - y < 0]))\n', '            2\n', '            sage: (x < y) == (x > y)\n', '            False\n', '            sage: (x < 0) < (x < 1)\n', '            False\n', '            sage: (x < y) != (y > x)\n', '            False\n', '            sage: (x >= y) == (y <= x)\n', '            True\n', '            sage: (x > y) == (y <= x)\n', '            False\n', '            sage: (x < x) == (x < x)\n', '            True\n', '            sage: (y > y) != (y > y)\n', '            False\n', '            sage: (x < y) != x\n', '            True\n', '            sage: (x == y) == (y == x)\n', '            True\n', '            sage: (x != y) != (y != x)\n', '            False\n', '            sage: (x == y) != (x != y)\n', '            True\n', '            sage: (x == y) == (y != x)\n', '            False\n', '            sage: x == (x == x)\n', '            False\n', '        """\n', '        cdef Expression l, r\n', '\n', '        l = left\n', '        r = right\n', '\n', '        # If lhs or rhs is a relation, resolve the big relation\n', '        # immediately UNLESS the lhs and rhs are flipped versions of\n', '        # the same relation.\n', '        if is_a_relational(l._gobj):\n', '            if (op != Py_EQ and op != Py_NE):\n', "                # relations aren't <, >, <=, or >= to other things\n", '                return False\n', '            if is_a_relational(r._gobj):\n', '                # both lhs and rhs are relations, so we can get to work\n', '                if l.operator() == r.operator():\n', '                    e2 = ( # case: (x _ y) ?= (x _ y)\n', '                           left._rel_equal1(right) or\n', '                           # case: (x == y) ?= (y == x)\n', '                           #       (x != y) ?= (y != x)\n', '                           ( ( l.operator() == operator.eq or\n', '                               l.operator() == operator.ne ) and\n', '                             left._rel_equal2(right) ))\n', '                else:\n', '                    e2 = ( # case: (x < y)  ?= (y > x)  (or vice versa)\n', '                           #       (x <= y) ?= (y >= x) (or vice versa)\n', '                           ( ( l.operator() == operator.lt and\n', '                               r.operator() == operator.gt ) or\n', '                             ( l.operator() == operator.gt and\n', '                               r.operator() == operator.lt ) or\n', '                             ( l.operator() == operator.le and\n', '                               r.operator() == operator.ge ) or\n', '                             ( l.operator() == operator.ge and\n', '                               r.operator() == operator.le ) ) and\n', '                             left._rel_equal2(right) )\n', '            else:\n', "                e2 = False              # l is relational but r isn't.\n", '\n', '            if op == Py_EQ:\n', '                return e2\n', '            else:                       # op == Py_NE, checked earlier.\n', '                return not e2\n', '\n', "        elif is_a_relational(r._gobj):  # l isn't relational but r is.\n", "            # things aren't <, >, <=, >=, or == to relations; they\n", '            # are, however, != to relations\n', '            return op == Py_NE\n', '\n', '        # neither was relational, so we can create a symbolic relation\n', '        cdef GEx e\n', '        if op == Py_LT:\n', '            e = (l._gobj < r._gobj)\n', '        elif op == Py_EQ:\n', '            e = (l._gobj == r._gobj)\n', '        elif op == Py_GT:\n', '            e = (l._gobj > r._gobj)\n', '        elif op == Py_LE:\n', '            e = (l._gobj <= r._gobj)\n', '        elif op == Py_NE:\n', '            e = (l._gobj != r._gobj)\n', '        elif op == Py_GE:\n', '            e = (l._gobj >= r._gobj)\n', '        else:\n', '            raise TypeError\n', '        return new_Expression_from_GEx(l._parent, e)\n', '\n', '    def _test_nonzero_equal(self, **options):\n', '        r"""\n', '        Do not perform tests for the operators ``==`` and ``!=``.\n', '\n', '        EXAMPLES:\n', '\n', '        The operator ``==`` has a special meaning for a symbolic expression::\n', '\n', '            sage: x == 0\n', '            x == 0\n', '\n', '        In particular, it does not return a bool, so the following check does\n', '        not hold anymore::\n', '\n', '            sage: (not x) == (x != 0)\n', '            False\n', '\n', '        TESTS::\n', '\n', '            sage: x._test_nonzero_equal()\n', '\n', '        """\n', '        pass\n', '\n', '    def assume(self):\n', '        r"""\n', '        Assume that this equation holds. This is relevant for symbolic\n', '        integration, among other things.\n', '\n', '        EXAMPLES: We call the assume method to assume that `x>2`::\n', '\n', '            sage: (x > 2).assume()\n', '\n', '        Bool returns True below if the inequality is *definitely* known to\n', '        be True.\n', '\n', '        ::\n', '\n', '            sage: bool(x > 0)\n', '            True\n', '            sage: bool(x < 0)\n', '            False\n', '\n', '        This may or may not be True, so bool returns False::\n', '\n', '            sage: bool(x > 3)\n', '            False\n', '\n', '        If you make inconsistent or meaningless assumptions,\n', '        Sage will let you know::\n', '\n', '            sage: forget()\n', '            sage: assume(x<0)\n', '            sage: assume(x>0)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Assumption is inconsistent\n', '            sage: assumptions()\n', '            [x < 0]\n', '            sage: forget()\n', '\n', '        TESTS::\n', '\n', "            sage: v,c = var('v,c')\n", '            sage: assume(c != 0)\n', '            sage: integral((1+v^2/c^2)^3/(1-v^2/c^2)^(3/2),v)\n', '            -75/8*sqrt(c^2)*arcsin(sqrt(c^2)*v/c^2) + 83/8*v/sqrt(-v^2/c^2 + 1) - 17/8*v^3/(c^2*sqrt(-v^2/c^2 + 1)) - 1/4*v^5/(c^4*sqrt(-v^2/c^2 + 1))\n', '            sage: forget()\n', '        """\n', '        from sage.symbolic.assumptions import _assumptions\n', '        from sage.calculus.calculus import maxima\n', '        if not self.is_relational():\n', '            raise TypeError("self (=%s) must be a relational expression" % self)\n', '        if not self in _assumptions:\n', '            m = self._maxima_init_assume_()\n', '            s = maxima.assume(m)\n', '            pynac_assume_rel(self._gobj)\n', "            if str(s._sage_()[0]) in ['meaningless','inconsistent','redundant']:\n", '                raise ValueError("Assumption is %s" % str(s._sage_()[0]))\n', '            _assumptions.append(self)\n', '\n', '    def forget(self):\n', '        """\n', '        Forget the given constraint.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: forget()\n', '            sage: assume(x>0, y < 2)\n', '            sage: assumptions()\n', '            [x > 0, y < 2]\n', '            sage: forget(y < 2)\n', '            sage: assumptions()\n', '            [x > 0]\n', '\n', '        TESTS:\n', '\n', '        Check if :trac:`7507` is fixed::\n', '\n', '            sage: forget()\n', "            sage: n = var('n')\n", '            sage: foo=sin((-1)*n*pi)\n', '            sage: foo.simplify()\n', '            -sin(pi*n)\n', "            sage: assume(n, 'odd')\n", '            sage: assumptions()\n', '            [n is odd]\n', '            sage: foo.simplify()\n', '            0\n', "            sage: forget(n, 'odd')\n", '            sage: assumptions()\n', '            []\n', '            sage: foo.simplify()\n', '            -sin(pi*n)\n', '        """\n', '        from sage.symbolic.assumptions import _assumptions\n', '        from sage.calculus.calculus import maxima\n', '        if not self.is_relational():\n', '            raise TypeError("self (=%s) must be a relational expression" % self)\n', '        pynac_forget_rel(self._gobj)\n', '        m = self._maxima_init_assume_()\n', '        maxima.forget(m)\n', '        try:\n', '            _assumptions.remove(self)\n', '        except ValueError:\n', '            pass\n', '\n', '    def _maxima_init_assume_(self):\n', '        """\n', '        Return string that when evaluated in Maxima defines the assumption\n', '        determined by this expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = x+2 > sqrt(3)\n', '            sage: f._maxima_init_assume_()\n', "            '((_SAGE_VAR_x)+(2))>((3)^(1/2))'\n", '        """\n', '        from sage.calculus.calculus import maxima\n', '\n', '        l = self.lhs()._assume_str()\n', '        r = self.rhs()._assume_str()\n', '        op = self.operator()\n', '        if  op is operator.eq:\n', "            m = 'equal(%s, %s)'%(l, r)\n", '        elif op is operator.ne:\n', "            m = 'notequal(%s, %s)'%(l, r)\n", '        else:\n', "            m = '(%s)%s(%s)' % (l, maxima._relation_symbols()[op], r)\n", '        return m\n', '\n', '    def _assume_str(self):\n', '        """\n', '        TESTS::\n', '\n', "            sage: x = var('x')\n", '            sage: x._assume_str()\n', "            '_SAGE_VAR_x'\n", "            sage: y = function('y')(x)\n", '            sage: y._assume_str()\n', "            'y'\n", '            sage: abs(x)._assume_str()\n', "            'abs(_SAGE_VAR_x)'\n", '        """\n', '        # if this is a function with a single argument which is a symbol, i.e.\n', "        # this is of the form f(x), we pass the string 'f > 0'\n", '        if is_a_function(self._gobj) and self.nops() == 1 and \\\n', '                is_a_symbol(self._gobj.op(0)):\n', '                    op = self.operator()\n', '                    # check if op is a user defined function, for builtin\n', "                    # functions like abs() we still need to pass 'abs(x) > 0'\n", '                    if isinstance(op, SymbolicFunction):\n', '                        return self.operator().name()\n', '        return self._maxima_init_()\n', '\n', '    def decl_assume(self, decl):\n', '        """\n', '        TESTS::\n', '\n', '            sage: from sage.symbolic.assumptions import GenericDeclaration\n', "            sage: decl = GenericDeclaration(x, 'real')\n", '            sage: x.is_real()\n', '            False\n', '            sage: x.decl_assume(decl._assumption)\n', '            sage: x.is_real()\n', '            True\n', '        """\n', '        pynac_assume_gdecl(self._gobj, str_to_bytes(decl))\n', '\n', '    def decl_forget(self, decl):\n', '        """\n', '        TESTS::\n', '\n', '            sage: from sage.symbolic.assumptions import GenericDeclaration\n', "            sage: decl = GenericDeclaration(x, 'integer')\n", '            sage: x.is_integer()\n', '            False\n', '            sage: x.decl_assume(decl._assumption)\n', '            sage: x.is_integer()\n', '            True\n', '            sage: x.decl_forget(decl._assumption)\n', '            sage: x.is_integer()\n', '            False\n', '        """\n', '        pynac_forget_gdecl(self._gobj, str_to_bytes(decl))\n', '\n', '    def has_wild(self):\n', '        """\n', '        Return ``True`` if this expression contains a wildcard.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (1 + x^2).has_wild()\n', '            False\n', '            sage: (SR.wild(0) + x^2).has_wild()\n', '            True\n', '            sage: SR.wild(0).has_wild()\n', '            True\n', '        """\n', '        return haswild(self._gobj)\n', '\n', '    def is_algebraic(self):\n', '        """\n', '        Return True if this expression is known to be algebraic.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: sqrt(2).is_algebraic()\n', '            True\n', '            sage: (5*sqrt(2)).is_algebraic()\n', '            True\n', '            sage: (sqrt(2) + 2^(1/3) - 1).is_algebraic()\n', '            True\n', '            sage: (I*golden_ratio + sqrt(2)).is_algebraic()\n', '            True\n', '            sage: (sqrt(2) + pi).is_algebraic()\n', '            False\n', '            sage: SR(QQ(2/3)).is_algebraic()\n', '            True\n', '            sage: SR(1.2).is_algebraic()\n', '            False\n', '        """\n', '        try:\n', '            ex = sage.rings.all.QQbar(self)\n', '        except (TypeError, ValueError, NotImplementedError):\n', '            return False\n', '        return True\n', '\n', '    def is_rational_expression(self):\n', '        """\n', '        Return True if this expression if a rational expression, i.e.,\n', '        a quotient of polynomials.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x y z')\n", '            (x, y, z)\n', '            sage: ((x + y + z)/(1 + x^2)).is_rational_expression()\n', '            True\n', '            sage: ((1 + x + y)^10).is_rational_expression()\n', '            True\n', '            sage: ((1/x + z)^5 - 1).is_rational_expression()\n', '            True\n', '            sage: (1/(x + y)).is_rational_expression()\n', '            True\n', '            sage: (exp(x) + 1).is_rational_expression()\n', '            False\n', '            sage: (sin(x*y) + z^3).is_rational_expression()\n', '            False\n', '            sage: (exp(x) + exp(-x)).is_rational_expression()\n', '            False\n', '        """\n', '        return all(part.is_polynomial(v)\n', '                   for part in (self.numerator(), self.denominator())\n', '                   for v in part.variables())\n', '\n', '    def is_real(self):\n', '        """\n', '        Return True if this expression is known to be a real number.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: t0 = SR.symbol("t0", domain=\'real\')\n', '            sage: t0.is_real()\n', '            True\n', '            sage: t0.is_positive()\n', '            False\n', '            sage: t1 = SR.symbol("t1", domain=\'positive\')\n', '            sage: (t0+t1).is_real()\n', '            True\n', '            sage: (t0+x).is_real()\n', '            False\n', '            sage: (t0*t1).is_real()\n', '            True\n', '            sage: t2 = SR.symbol("t2", domain=\'positive\')\n', '            sage: (t1**t2).is_real()\n', '            True\n', '            sage: (t0*x).is_real()\n', '            False\n', '            sage: (t0^t1).is_real()\n', '            False\n', '            sage: (t1^t2).is_real()\n', '            True\n', '            sage: gamma(pi).is_real()\n', '            True\n', '            sage: cosh(-3).is_real()\n', '            True\n', '            sage: cos(exp(-3) + log(2)).is_real()\n', '            True\n', '            sage: gamma(t1).is_real()\n', '            True\n', '            sage: (x^pi).is_real()\n', '            False\n', '            sage: (cos(exp(t0) + log(t1))^8).is_real()\n', '            True\n', '            sage: cos(I + 1).is_real()\n', '            False\n', '            sage: sin(2 - I).is_real()\n', '            False\n', '            sage: (2^t0).is_real()\n', '            True\n', '\n', '        The following is real, but we cannot deduce that.::\n', '\n', '            sage: (x*x.conjugate()).is_real()\n', '            False\n', '\n', '        Assumption of real has the same effect as setting the domain::\n', '\n', '            sage: forget()\n', "            sage: assume(x, 'real')\n", '            sage: x.is_real()\n', '            True\n', '            sage: cosh(x).is_real()\n', '            True\n', '            sage: forget()\n', '\n', '        The real domain is also set with the integer domain::\n', '\n', "            sage: SR.var('x', domain='integer').is_real()\n", '            True\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`23093` is fixed::\n', '\n', '            sage: sqrt(-2).is_real()\n', '            False\n', '        """\n', '        return self._gobj.info(info_real)\n', '\n', '    def is_positive(self):\n', '        """\n', '        Return True if this expression is known to be positive.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: t0 = SR.symbol("t0", domain=\'positive\')\n', '            sage: t0.is_positive()\n', '            True\n', '            sage: t0.is_negative()\n', '            False\n', '            sage: t0.is_real()\n', '            True\n', '            sage: t1 = SR.symbol("t1", domain=\'positive\')\n', '            sage: (t0*t1).is_positive()\n', '            True\n', '            sage: (t0 + t1).is_positive()\n', '            True\n', '            sage: (t0*x).is_positive()\n', '            False\n', '\n', '        ::\n', '\n', '            sage: forget()\n', '            sage: assume(x>0)\n', '            sage: x.is_positive()\n', '            True\n', '            sage: cosh(x).is_positive()\n', '            True\n', "            sage: f = function('f')(x)\n", '            sage: assume(f>0)\n', '            sage: f.is_positive()\n', '            True\n', '            sage: forget()\n', '\n', '        ::\n', '\n', '            sage: cosh(x).is_positive()\n', '            False\n', '            sage: cosh(real(x)).is_positive()\n', '            True\n', '            sage: (cosh(real(x))^2).is_positive()\n', '            True\n', '            sage: ((real(x))^2).is_positive()\n', '            False\n', '            sage: gamma(x^2).is_positive()\n', '            False\n', '            sage: gamma(x^2+1).is_positive()\n', '            False\n', '            sage: gamma(cosh(real(x))).is_positive()\n', '            True\n', '            sage: (real(x)^2).is_positive()\n', '            False\n', '            sage: (real(x)^2+1).is_positive()\n', '            True\n', '            sage: (abs(x)^2+1).is_positive()\n', '            True\n', '            sage: gamma(real(x)^2+1).is_positive()\n', '            True\n', '            sage: cos(I + 1).is_positive()\n', '            False\n', '            sage: sin(2 - I).is_positive()\n', '            False\n', '        """\n', '        return self._gobj.info(info_positive)\n', '\n', '    def is_negative(self):\n', '        """\n', '        Return True if this expression is known to be negative.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(-5).is_negative()\n', '            True\n', '\n', '        Check if we can correctly deduce negativity of mul objects::\n', '\n', '            sage: t0 = SR.symbol("t0", domain=\'positive\')\n', '            sage: t0.is_negative()\n', '            False\n', '            sage: (-t0).is_negative()\n', '            True\n', '            sage: (-pi).is_negative()\n', '            True\n', '\n', '        Assumptions on symbols are handled correctly::\n', '\n', "            sage: y = var('y')\n", '            sage: assume(y < 0)\n', '            sage: y.is_positive()\n', '            False\n', '            sage: y.is_negative()\n', '            True\n', '            sage: forget()\n', '        """\n', '        return self._gobj.info(info_negative)\n', '\n', '    def is_integer(self):\n', '        """\n', '        Return True if this expression is known to be an integer.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(5).is_integer()\n', '            True\n', '\n', '        TESTS:\n', '\n', '        Check that integer variables are recognized (:trac:`18921`)::\n', '\n', "            sage: _ = var('n', domain='integer')\n", '            sage: n.is_integer()\n', '            True\n', '\n', '        Assumption of integer has the same effect as setting the domain::\n', '\n', '            sage: forget()\n', "            sage: assume(x, 'integer')\n", '            sage: x.is_integer()\n', '            True\n', '            sage: forget()\n', '        """\n', '        return self._gobj.info(info_integer)\n', '\n', '    def is_symbol(self):\n', '        """\n', '        Return True if this symbolic expression consists of only a symbol, i.e.,\n', '        a symbolic variable.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.is_symbol()\n', '            True\n', "            sage: var('y')\n", '            y\n', '            sage: y.is_symbol()\n', '            True\n', '            sage: (x*y).is_symbol()\n', '            False\n', '            sage: pi.is_symbol()\n', '            False\n', '\n', '        ::\n', '\n', '            sage: ((x*y)/y).is_symbol()\n', '            True\n', '            sage: (x^y).is_symbol()\n', '            False\n', '        """\n', '        return is_a_symbol(self._gobj)\n', '\n', '    def _is_registered_constant_(self):\n', '        """\n', '        Return True if this symbolic expression is internally represented as\n', '        a constant.\n', '\n', '        This function is intended to provide an interface to query the internal\n', '        representation of the expression. In this sense, the word ``constant``\n', '        does not reflect the mathematical properties of the expression.\n', '        Expressions which have no variables may return ``False``.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: pi._is_registered_constant_()\n', '            True\n', '            sage: x._is_registered_constant_()\n', '            False\n', '            sage: SR(1)._is_registered_constant_()\n', '            False\n', '\n', '        Note that the complex I is not a constant::\n', '\n', '            sage: I._is_registered_constant_()\n', '            False\n', '            sage: I.is_numeric()\n', '            True\n', '        """\n', '        return is_a_constant(self._gobj)\n', '\n', '    def is_constant(self):\n', '        """\n', '        Return whether this symbolic expression is a constant.\n', '\n', '        A symbolic expression is constant if it does not contain\n', '        any variables.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: pi.is_constant()\n', '            True\n', '            sage: SR(1).is_constant()\n', '            True\n', '            sage: SR(2).is_constant()\n', '            True\n', '            sage: log(2).is_constant()\n', '            True\n', '            sage: I.is_constant()\n', '            True\n', '            sage: x.is_constant()\n', '            False\n', '\n', '        TESTS::\n', '\n', '            sage: P.<p> = ZZ[]\n', '            sage: SR(42).is_constant() == P(2).is_constant()\n', '            True\n', '        """\n', '        return not self.variables()\n', '\n', '    def is_numeric(self):\n', '        """\n', '        A Pynac numeric is an object you can do arithmetic with\n', '        that is not a symbolic variable, function, or constant.\n', '        Return True if this expression only consists of a numeric object.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(1).is_numeric()\n', '            True\n', '            sage: x.is_numeric()\n', '            False\n', '            sage: pi.is_numeric()\n', '            False\n', '            sage: sin(x).is_numeric()\n', '            False\n', '        """\n', '        return is_a_numeric(self._gobj)\n', '\n', '    def is_series(self):\n', '        """\n', '        TESTS::\n', '\n', '            sage: x.is_series()\n', '            doctest:...: DeprecationWarning: ex.is_series() is deprecated. Use isinstance(ex, sage.symbolic.series.SymbolicSeries) instead\n', '            See http://trac.sagemath.org/17659 for details.\n', '            False\n', '        """\n', '        from sage.misc.superseded import deprecation\n', '        deprecation(17659, "ex.is_series() is deprecated. Use isinstance(ex, sage.symbolic.series.SymbolicSeries) instead")\n', '        return False\n', '\n', '    def is_terminating_series(self):\n', '        """\n', '        Return True if ``self`` is a series without order term.\n', '\n', '        A series is terminating if it can be represented exactly,\n', '        without requiring an order term. You can explicitly\n', '        request terminating series by setting the order to\n', '        positive infinity.\n', '\n', '        OUTPUT:\n', '\n', '        Boolean. Whether ``self`` was constructed by :meth:`series`\n', '        and has no order term.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (x^5+x^2+1).series(x, +oo)\n', '            1 + 1*x^2 + 1*x^5\n', '            sage: (x^5+x^2+1).series(x,+oo).is_terminating_series()\n', '            True\n', '            sage: SR(5).is_terminating_series()\n', '            False\n', "            sage: var('x')\n", '            x\n', '            sage: x.is_terminating_series()\n', '            False\n', '            sage: exp(x).series(x,10).is_terminating_series()\n', '            False\n', '        """\n', '        return False\n', '\n', '    cpdef bint is_polynomial(self, var):\n', '        """\n', '        Return True if self is a polynomial in the given variable.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z')\n", '            (x, y, z)\n', '            sage: t = x^2 + y; t\n', '            x^2 + y\n', '            sage: t.is_polynomial(x)\n', '            True\n', '            sage: t.is_polynomial(y)\n', '            True\n', '            sage: t.is_polynomial(z)\n', '            True\n', '\n', '            sage: t = sin(x) + y; t\n', '            y + sin(x)\n', '            sage: t.is_polynomial(x)\n', '            False\n', '            sage: t.is_polynomial(y)\n', '            True\n', '            sage: t.is_polynomial(sin(x))\n', '            True\n', '\n', '        TESTS:\n', '\n', '        Check if we can handle derivatives. :trac:`6523`::\n', '\n', "            sage: f(x) = function('f')(x)\n", '            sage: f(x).diff(x).is_zero()\n', '            False\n', '\n', '        Check if :trac:`11352` is fixed::\n', '\n', '            sage: el = -1/2*(2*x^2 - sqrt(2*x - 1)*sqrt(2*x + 1) - 1)\n', '            sage: el.is_polynomial(x)\n', '            False\n', '\n', '        Check that negative exponents are handled (:trac:`15304`)::\n', '\n', "            sage: y = var('y')\n", '            sage: (y/x).is_polynomial(x)\n', '            False\n', '        """\n', '        cdef Expression symbol0 = self.coerce_in(var)\n', '        sig_on()\n', '        try:\n', '            return self._gobj.is_polynomial(symbol0._gobj)\n', '        finally:\n', '            sig_off()\n', '\n', '    cpdef bint is_relational(self):\n', '        """\n', '        Return True if self is a relational expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: eqn = (x-1)^2 == x^2 - 2*x + 3\n', '            sage: eqn.is_relational()\n', '            True\n', '            sage: sin(x).is_relational()\n', '            False\n', '        """\n', '        return is_a_relational(self._gobj)\n', '\n', '    def is_exact(self):\n', '        """\n', '        Return True if this expression only contains exact numerical coefficients.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x, y = var('x, y')\n", '            sage: (x+y-1).is_exact()\n', '            True\n', '            sage: (x+y-1.9).is_exact()\n', '            False\n', '            sage: x.is_exact()\n', '            True\n', '            sage: pi.is_exact()\n', '            True\n', '            sage: (sqrt(x-y) - 2*x + 1).is_exact()\n', '            True\n', '            sage: ((x-y)^0.5 - 2*x + 1).is_exact()\n', '            False\n', '\n', '        TESTS::\n', '\n', '            sage: (sin(x*cos(2*x*pi)) - 10*y^3 - 1/(x+4)).is_exact()\n', '            True\n', '            sage: (sin(x*cos(2.0*x*pi)) - 10*y^3 - 1/(x+4)).is_exact()\n', '            False\n', '            sage: SR(42).is_exact()\n', '            True\n', '            sage: SR(42.01).is_exact()\n', '            False\n', '            sage: SR(I).is_exact()\n', '            True\n', '            sage: (x-I).is_exact()\n', '            True\n', '            sage: (x-CC(0,1)).is_exact()\n', '            False\n', '        """\n', '        # generator over all numerical elements in the subexpression tree of expr\n', '        def numelems_gen(expr):\n', '            if expr.is_numeric():\n', '                yield expr\n', '            elif expr.operator() is not None:\n', '                for op in expr.operands():\n', '                    if op.is_numeric():\n', '                        yield op\n', '                    else:\n', '                        for opp in numelems_gen(op):\n', '                            yield opp\n', '        # stop at the first inexact number in the subexpression tree of self,\n', '        # and if there is no such element, then self is exact\n', '        for nelem in numelems_gen(self):\n', '            if not nelem.pyobject().base_ring().is_exact():\n', '                return False\n', '        return True\n', '\n', '    cpdef bint is_infinity(self):\n', '        """\n', '        Return True if self is an infinite expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(oo).is_infinity()\n', '            True\n', '            sage: x.is_infinity()\n', '            False\n', '        """\n', '        return is_a_infinity(self._gobj)\n', '\n', '    cpdef bint is_positive_infinity(self):\n', '        """\n', '        Return True if self is a positive infinite expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(oo).is_positive_infinity()\n', '            True\n', '            sage: SR(-oo).is_positive_infinity()\n', '            False\n', '            sage: x.is_infinity()\n', '            False\n', '        """\n', '        return is_a_infinity(self._gobj) and self._gobj.info(info_positive)\n', '\n', '    cpdef bint is_negative_infinity(self):\n', '        """\n', '        Return True if self is a negative infinite expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(oo).is_negative_infinity()\n', '            False\n', '            sage: SR(-oo).is_negative_infinity()\n', '            True\n', '            sage: x.is_negative_infinity()\n', '            False\n', '        """\n', '        return is_a_infinity(self._gobj) and self._gobj.info(info_negative)\n', '\n', '\n', '    def is_square(self):\n', '        """\n', '        Returns ``True`` if ``self`` is a perfect square.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f(n,m) = n*2 + m\n', '            sage: f(2,1).is_square()\n', '            False\n', '            sage: f(3,3).is_square()\n', '            True\n', '            sage: f(n,m).is_square()\n', '            Traceback (most recent call last):\n', '            ...\n', '            NotImplementedError: is_square() not implemented for non numeric elements of Symbolic Ring\n', '            sage: SR(42).is_square()\n', '            False\n', '            sage: SR(4).is_square()\n', '            True\n', '        """\n', '        try:\n', '            obj = self.pyobject()\n', '        except TypeError as e:\n', '            raise NotImplementedError("is_square() not implemented for non numeric elements of Symbolic Ring")\n', '\n', '        return obj.is_square()\n', '\n', '\n', '    def left_hand_side(self):\n', '        """\n', '        If self is a relational expression, return the left hand side\n', '        of the relation.  Otherwise, raise a ValueError.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: eqn = (x-1)^2 == x^2 - 2*x + 3\n', '            sage: eqn.left_hand_side()\n', '            (x - 1)^2\n', '            sage: eqn.lhs()\n', '            (x - 1)^2\n', '            sage: eqn.left()\n', '            (x - 1)^2\n', '        """\n', '        if not self.is_relational():\n', '            raise ValueError("self must be a relational expression")\n', '        return new_Expression_from_GEx(self._parent, self._gobj.lhs())\n', '\n', '    lhs = left = left_hand_side\n', '\n', '    def right_hand_side(self):\n', '        """\n', '        If self is a relational expression, return the right hand side\n', '        of the relation.  Otherwise, raise a ValueError.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: eqn = (x-1)^2 <= x^2 - 2*x + 3\n', '            sage: eqn.right_hand_side()\n', '            x^2 - 2*x + 3\n', '            sage: eqn.rhs()\n', '            x^2 - 2*x + 3\n', '            sage: eqn.right()\n', '            x^2 - 2*x + 3\n', '        """\n', '        if not self.is_relational():\n', '            raise ValueError("self must be a relation")\n', '        return new_Expression_from_GEx(self._parent, self._gobj.rhs())\n', '\n', '    rhs = right = right_hand_side\n', '\n', '    def is_trivially_equal(self, other):\n', '        """\n', '        Check if this expression is trivially equal to the argument\n', '        expression, without any simplification.\n', '\n', '        Note that the expressions may still be subject to immediate\n', '        evaluation.\n', '\n', '        This method is intended to be used in library code where trying to\n', '        obtain a mathematically correct result by applying potentially\n', '        expensive rewrite rules is not desirable.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (x^2).is_trivially_equal(x^2)\n', '            True\n', '            sage: ((x+1)^2 - 2*x - 1).is_trivially_equal(x^2)\n', '            False\n', '            sage: (x*(x+1)).is_trivially_equal((x+1)*x)\n', '            True\n', '            sage: (x^2 + x).is_trivially_equal((x+1)*x)\n', '            False\n', '            sage: ((x+1)*(x+1)).is_trivially_equal((x+1)^2)\n', '            True\n', '            sage: (x^2 + 2*x + 1).is_trivially_equal((x+1)^2)\n', '            False\n', '            sage: (x^-1).is_trivially_equal(1/x)\n', '            True\n', '            sage: (x/x^2).is_trivially_equal(1/x)\n', '            True\n', '            sage: ((x^2+x) / (x+1)).is_trivially_equal(1/x)\n', '            False\n', '\n', '        TESTS:\n', '\n', '        Make sure Python objects work as argument too::\n', '\n', '            sage: x = SR(1/2)\n', '            sage: x.is_trivially_equal(QQbar(1/2))\n', '            True\n', '        """\n', '        from .ring import SR\n', '        cdef Expression _other = <Expression>(SR(other))\n', '        sig_on()\n', '        try:\n', '            return self._gobj.is_equal(_other._gobj)\n', '        finally:\n', '            sig_off()\n', '\n', '    def is_trivial_zero(self):\n', '        """\n', '        Check if this expression is trivially equal to zero without any\n', '        simplification.\n', '\n', '        This method is intended to be used in library code where trying to\n', '        obtain a mathematically correct result by applying potentially\n', '        expensive rewrite rules is not desirable.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(0).is_trivial_zero()\n', '            True\n', '            sage: SR(0.0).is_trivial_zero()\n', '            True\n', '            sage: SR(float(0.0)).is_trivial_zero()\n', '            True\n', '\n', '            sage: (SR(1)/2^1000).is_trivial_zero()\n', '            False\n', '            sage: SR(1./2^10000).is_trivial_zero()\n', '            False\n', '\n', '        The :meth:`~sage.structure.element.Element.is_zero` method\n', '        is more capable::\n', '\n', '            sage: t = pi + (pi - 1)*pi - pi^2\n', '            sage: t.is_trivial_zero()\n', '            False\n', '            sage: t.is_zero()\n', '            True\n', '            sage: u = sin(x)^2 + cos(x)^2 - 1\n', '            sage: u.is_trivial_zero()\n', '            False\n', '            sage: u.is_zero()\n', '            True\n', '        """\n', '        return self._gobj.is_zero()\n', '\n', '    def __nonzero__(self):\n', '        """\n', '        Return True unless this symbolic expression can be shown by Sage\n', '        to be zero.  Note that deciding if an expression is zero is\n', '        undecidable in general.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: forget()\n', '            sage: bool(SR(0))\n', '            False\n', '            sage: bool(SR(1))\n', '            True\n', '            sage: assert(abs(x))\n', '            sage: assert(not x/x - 1)\n', '\n', '        This is called by :meth:`is_zero`::\n', '\n', "            sage: k = var('k')\n", '            sage: pol = 1/(k-1) - 1/k - 1/k/(k-1)\n', '            sage: pol.is_zero()\n', '            True\n', '\n', '            sage: f = sin(x)^2 + cos(x)^2 - 1\n', '            sage: f.is_zero()\n', '            True\n', '\n', '        TESTS:\n', '\n', '        First, a bunch of tests of nonzero (which is called by bool)\n', '        for symbolic relations::\n', '\n', "            sage: x = var('x')\n", '            sage: assert((x-1)^2 == x^2 - 2*x + 1)\n', '            sage: assert(((x-1)^2 == x^2 - 2*x + 1).expand())\n', '            sage: assert(not ((x-1)^2 == x^2 - 2*x + 3).expand())\n', '            sage: assert(2 + x < 3 + x)\n', '            sage: assert(not 2 + x < 1 + x)\n', '            sage: assert(2 + x > 1 + x)\n', '            sage: assert(not 1 + x > 1 + x)\n', '            sage: assert(1 + x >= 1 + x)\n', '            sage: assert(not 1 + x < 1 + x)\n', '            sage: assert(1 + x <= 1 + x)\n', '            sage: assert(not 1 + x^2 != 1 + x*x)\n', '            sage: assert(1 + x^2 != 2 + x*x)\n', '            sage: assert(SR(oo) == SR(oo))\n', '            sage: assert(not -SR(oo) == SR(oo))\n', '            sage: assert(-SR(oo) != SR(oo))\n', '\n', '        Next, tests to ensure assumptions are correctly used::\n', '\n', "            sage: x, y, z = var('x, y, z')\n", '            sage: assume(x >= y, y >= z, z >= x)\n', '            sage: assert(x == z)\n', '            sage: assert(not z < x)\n', '            sage: assert(not z > y)\n', '            sage: assert(y == z)\n', '            sage: assert(y <= z)\n', '            sage: forget()\n', '            sage: assume(x >= 1, x <= 1)\n', '            sage: assert(x == 1)\n', '            sage: assert(not x != 1)\n', '            sage: assert(not x > 1)\n', '            sage: forget()\n', '            sage: assume(x > 0)\n', '            sage: assert(not x == 0)\n', '            sage: assert(x != 0)\n', '\n', '        We cannot return undecidable or throw an exception\n', '        at the moment so ``False`` is returned for unknown\n', '        outcomes.\n', '\n', '        ::\n', '\n', '            sage: assert(not x == 1)\n', '            sage: assert(not x != 1)\n', '            sage: forget()\n', '            sage: assume(x>y)\n', '            sage: assert(not x==y)\n', '            sage: assert(x != y) # The same comment as above applies here as well\n', '            sage: forget()\n', '\n', '        Comparisons of infinities::\n', '\n', '            sage: assert( (1+I)*oo == (2+2*I)*oo )\n', '            sage: assert( SR(unsigned_infinity) == SR(unsigned_infinity) )\n', '            sage: assert( SR(I*oo) == I*oo )\n', '            sage: assert( SR(-oo) <= SR(oo) )\n', '            sage: assert( SR(oo) >= SR(-oo) )\n', '            sage: assert( SR(oo) != SR(-oo) )\n', '            sage: assert( sqrt(2)*oo != I*oo )\n', '\n', '        The expression may be zero with integers but is not\n', '        when in the complex domain (:trac:`15571`)::\n', '\n', "            sage: a,x = var('a,x')\n", "            sage: assume(a, 'integer')\n", "            sage: assume(x, 'integer')\n", '            sage: expr = a^(4*x) - (a^4)^x\n', '            sage: expr.is_zero()\n', '            True\n', '            sage: forget()\n', "            sage: assume(a, 'complex')\n", "            sage: assume(x, 'complex')\n", '            sage: expr.is_zero()\n', '            False\n', '            sage: forget()\n', '\n', '        Check that :trac:`13326` is fixed::\n', '\n', '            sage: assert(log(2)*Infinity == Infinity)\n', '\n', '        More checks for comparisons with infinity (see :trac:`12967`)::\n', '\n', '            sage: assert(SR(oo) > 5)\n', '            sage: assert(5 < SR(oo))\n', '            sage: assert(SR(2) < Infinity)\n', '            sage: assert(pi < Infinity)\n', '            sage: assert(not pi>Infinity)\n', '            sage: assert(2*pi < Infinity)\n', '            sage: assert(SR(pi) < SR(Infinity))\n', '            sage: assert(sqrt(2) < oo)\n', '            sage: assert(log(2) < oo)\n', '            sage: assert(e < oo)\n', '            sage: assert(e+pi < oo)\n', '            sage: assert(e^pi < oo)\n', '            sage: assert(not SR(2) < -oo)\n', '            sage: assert(SR(2) > -oo)\n', '            sage: assert(exp(2) > -oo)\n', '            sage: assert(SR(oo) > sqrt(2))\n', '            sage: assert(sqrt(2) < SR(oo))\n', '            sage: assert(SR(-oo) < sqrt(2))\n', '            sage: assert(sqrt(2) > SR(-oo))\n', '\n', '        Check that :trac:`18360` is fixed::\n', '\n', '            sage: f(x) = matrix()\n', '            sage: bool(f(x) - f(x) == 0)\n', '            True\n', '\n', '        Check that we catch exceptions from Pynac (:trac:`19904`)::\n', '\n', '            sage: bool(SR(QQbar(I)) == I)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: unsupported operand parent(s)...\n', '        """\n', '        if self.is_relational():\n', '            # constants are wrappers around Sage objects, compare directly\n', '            if is_a_constant(self._gobj.lhs()) and is_a_constant(self._gobj.rhs()):\n', '                return self.operator()(self.lhs().pyobject(), self.rhs().pyobject())\n', '            pynac_result = decide_relational(self._gobj)\n', '            if pynac_result == relational_undecidable:\n', "                raise ValueError('undecidable relation: ' + repr(self))\n", '\n', '            # pynac is guaranteed to give the correct answer for comparing infinities\n', '            if is_a_infinity(self._gobj.lhs()) or is_a_infinity(self._gobj.rhs()):\n', '                return pynac_result == relational_true\n', '\n', '            if pynac_result == relational_true:\n', '                if self.operator() == operator.ne: # this hack is necessary to catch the case where the operator is != but is False because of assumptions made\n', '                    m = self._maxima_()\n', "                    s = m.parent()._eval_line('is (notequal(%s,%s))'%(repr(m.lhs()),repr(m.rhs())))\n", "                    if s == 'false':\n", '                        return False\n', '                    else:\n', '                        return True\n', '                else:\n', '                    return True\n', '\n', '            # If assumptions are involved, falsification is more complicated...\n', '            need_assumptions = False\n', '            from sage.symbolic.assumptions import assumptions\n', '            assumption_list = assumptions()\n', '            if assumption_list:\n', '                vars = self.variables()\n', '                if vars:\n', '                    assumption_var_list = []\n', '                    for eqn in assumption_list:\n', '                        try:\n', '                            assumption_var_list.append(eqn.variables())\n', '                        except AttributeError: # if we have a GenericDeclaration\n', '                            assumption_var_list.append((eqn._var,))\n', '                    assumption_vars = set(sum(assumption_var_list, ()))\n', '                    if set(vars).intersection(assumption_vars):\n', '                        need_assumptions = True\n', '\n', '            # Use interval fields to try and falsify the relation\n', '            if not need_assumptions:\n', '                if pynac_result == relational_notimplemented and self.operator()==operator.ne:\n', '                    return not (self.lhs()-self.rhs()).is_trivial_zero()\n', '                res = self.test_relation()\n', '                if res is True:\n', '                    return True\n', '                elif res is False:\n', '                    return False\n', '\n', '            # we really have to do some work here...\n', "            # I really don't like calling Maxima to test equality.  It\n", '            # is SUPER SUPER SLOW, and it has all the problem\n', '            # associated with different semantics, different\n', '            # precision, etc., that can lead to subtle bugs.  Also, a\n', "            # lot of basic Sage objects can't be put into maxima.\n", '            from sage.symbolic.relation import test_relation_maxima\n', '            return test_relation_maxima(self)\n', '\n', '        self_is_zero = self._gobj.is_zero()\n', '        if self_is_zero:\n', '            return False\n', '        else:\n', '            return not bool(self == self._parent.zero())\n', '\n', '\n', '    def test_relation(self, int ntests=20, domain=None, proof=True):\n', '        """\n', '        Test this relation at several random values, attempting to find\n', '        a contradiction. If this relation has no variables, it will also\n', '        test this relation after casting into the domain.\n', '\n', '        Because the interval fields never return false positives, we can be\n', '        assured that if True or False is returned (and proof is False) then\n', '        the answer is correct.\n', '\n', '        INPUT:\n', '\n', '        - ``ntests`` -- (default ``20``) the number of iterations to run\n', '        - ``domain`` -- (optional) the domain from which to draw the random\n', '          values defaults to ``CIF`` for equality testing and ``RIF`` for\n', '          order testing\n', '        - ``proof`` -- (default ``True``) if ``False`` and the domain is an\n', '          interval field, regard overlapping (potentially equal) intervals as\n', '          equal, and return ``True`` if all tests succeeded.\n', '\n', '        OUTPUT:\n', '\n', '        Boolean or ``NotImplemented``, meaning\n', '\n', '        - ``True`` -- this relation holds in the domain and has no variables.\n', '\n', '        - ``False`` -- a contradiction was found.\n', '\n', '        - ``NotImplemented`` -- no contradiction found.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (3 < pi).test_relation()\n', '            True\n', '            sage: (0 >= pi).test_relation()\n', '            False\n', '            sage: (exp(pi) - pi).n()\n', '            19.9990999791895\n', '            sage: (exp(pi) - pi == 20).test_relation()\n', '            False\n', '            sage: (sin(x)^2 + cos(x)^2 == 1).test_relation()\n', '            NotImplemented\n', '            sage: (sin(x)^2 + cos(x)^2 == 1).test_relation(proof=False)\n', '            True\n', '            sage: (x == 1).test_relation()\n', '            False\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: (x < y).test_relation()\n', '            False\n', '\n', '        TESTS::\n', '\n', '            sage: all_relations = [op for name, op in sorted(operator.__dict__.items()) if len(name) == 2]\n', '            sage: all_relations\n', '            [<built-in function eq>, <built-in function ge>, <built-in function gt>, <built-in function le>, <built-in function lt>, <built-in function ne>]\n', '            sage: [op(3, pi).test_relation() for op in all_relations]\n', '            [False, False, False, True, True, True]\n', '            sage: [op(pi, pi).test_relation() for op in all_relations]\n', '            [True, True, False, True, False, False]\n', '\n', "            sage: s = 'some_very_long_variable_name_which_will_definitely_collide_if_we_use_a_reasonable_length_bound_for_a_hash_that_respects_lexicographic_order'\n", "            sage: t1, t2 = var(','.join([s+'1',s+'2']))\n", '            sage: (t1 == t2).test_relation()\n', '            False\n', '            sage: (cot(-x) == -cot(x)).test_relation()\n', '            NotImplemented\n', '\n', '        Check that :trac:`18896` is fixed::\n', '\n', '            sage: m=540579833922455191419978421211010409605356811833049025*sqrt(1/2)\n', '            sage: m1=382247666339265723780973363167714496025733124557617743\n', '            sage: (m==m1).test_relation(domain=QQbar)\n', '            False\n', '            sage: (m==m1).test_relation()\n', '            False\n', '        """\n', '        cdef int k, eq_count = 0\n', '        cdef bint is_interval\n', '        if not self.is_relational():\n', '            raise ValueError("self must be a relation")\n', '        cdef operators op = relational_operator(self._gobj)\n', '        from sage.rings.real_mpfi import is_RealIntervalField\n', '        from sage.rings.complex_interval_field import is_ComplexIntervalField\n', '        from sage.rings.all import RIF, CIF\n', '        from sage.rings.qqbar import is_AlgebraicField, is_AlgebraicRealField, AA, QQbar\n', '        if domain is None:\n', '            is_interval = True\n', '            if self.lhs().is_algebraic() and self.rhs().is_algebraic():\n', '                if op == equal or op == not_equal:\n', '                    domain = QQbar\n', '                else:\n', '                    domain = AA\n', '            else:\n', '                if op == equal or op == not_equal:\n', '                    domain = CIF\n', '                else:\n', '                    domain = RIF\n', '        else:\n', '            is_interval = (is_RealIntervalField(domain)\n', '                           or is_ComplexIntervalField(domain)\n', '                           or is_AlgebraicField(domain)\n', '                           or is_AlgebraicRealField(domain))\n', '        zero = domain(0)\n', '        diff = self.lhs() - self.rhs()\n', '        vars = diff.variables()\n', '        if op == equal:\n', '            falsify = operator.ne\n', '        elif op == not_equal:\n', '            falsify = operator.eq\n', '        elif op == less:\n', '            falsify = operator.ge\n', '        elif op == less_or_equal:\n', '            falsify = operator.gt\n', '        elif op == greater:\n', '            falsify = operator.le\n', '        elif op == greater_or_equal:\n', '            falsify = operator.lt\n', '        cdef bint equality_ok = op in [equal, less_or_equal, greater_or_equal]\n', '        cdef int errors = 0\n', '        val = None\n', '        if len(vars) == 0:\n', '            try:\n', '                val = domain(diff)\n', '            except (TypeError, ValueError, ArithmeticError) as ex:\n', '                pass\n', '            else:\n', '                if self.operator()(val, zero):\n', '                    return True\n', '                elif falsify(val, zero):\n', '                    return False\n', '                if is_interval and not proof:\n', '                    if val.contains_zero():\n', '                        return equality_ok\n', '                    else:\n', '                        return not equality_ok\n', '        else:\n', '            for k in range(ntests):\n', '                try:\n', '                    if is_interval:\n', "                        # Let's up the prec\n", '                        if val and k > 4 and val.contains_zero() and domain.prec() < 1000:\n', '                            domain = domain.to_prec(int(domain.prec() * 1.5))\n', "                        # Uniform [-1,1] isn't the best distribution to use...\n", '                        var_dict = dict([(v, domain.random_element() * domain.random_element(-2,6).exp()) for v in vars])\n', '                    else:\n', '                        var_dict = dict([(v, domain.random_element()) for v in vars])\n', '                    val = domain(diff.subs(var_dict))\n', '                    if falsify(val, zero):\n', '                        return False\n', '                    if is_interval:\n', '                        eq_count += <bint>val.contains_zero()\n', '                except (TypeError, ValueError, ArithmeticError, AttributeError) as ex:\n', '                    errors += 1\n', '                    if k == errors > 3 and is_ComplexIntervalField(domain):\n', '                        domain = RIF.to_prec(domain.prec())\n', "                    # we are plugging in random values above, don't be surprised\n", '                    # if something goes wrong...\n', '                    eq_count += equality_ok\n', '\n', '        if not proof:\n', '            if not equality_ok:\n', '                return eq_count == 0\n', '            elif op == equal and is_interval:\n', '                return eq_count == ntests\n', '            else:\n', '                return True\n', "        # Nothing failed, so it *may* be True, but this method doesn't wasn't\n", '        # able to find anything.\n', '        return NotImplemented\n', '\n', '    def negation(self):\n', '        """\n', '        Return the negated version of self, that is the relation that is\n', '        False iff self is True.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (x < 5).negation()\n', '            x >= 5\n', '            sage: (x == sin(3)).negation()\n', '            x != sin(3)\n', '            sage: (2*x >= sqrt(2)).negation()\n', '            2*x < sqrt(2)\n', '        """\n', '        if not self.is_relational():\n', '            raise ValueError("self must be a relation")\n', '        cdef operators op = relational_operator(self._gobj)\n', '        if op == equal:\n', '            falsify = operator.ne\n', '        elif op == not_equal:\n', '            falsify = operator.eq\n', '        elif op == less:\n', '            falsify = operator.ge\n', '        elif op == less_or_equal:\n', '            falsify = operator.gt\n', '        elif op == greater:\n', '            falsify = operator.le\n', '        elif op == greater_or_equal:\n', '            falsify = operator.lt\n', '        return falsify(self.lhs(), self.rhs())\n', '\n', '    def contradicts(self, soln):\n', '        """\n', '        Return ``True`` if this relation is violated by the given variable assignment(s).\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (x<3).contradicts(x==0)\n', '            False\n', '            sage: (x<3).contradicts(x==3)\n', '            True\n', '            sage: (x<=3).contradicts(x==3)\n', '            False\n', "            sage: y = var('y')\n", '            sage: (x<y).contradicts(x==30)\n', '            False\n', '            sage: (x<y).contradicts({x: 30, y: 20})\n', '            True\n', '        """\n', '        return bool(self.negation().subs(soln))\n', '\n', '    def is_unit(self):\n', '        """\n', '        Return True if this expression is a unit of the symbolic ring.\n', '\n', '        Note that a proof may be attempted to get the result. To avoid\n', '        this use ``(ex-1).is_trivial_zero()``.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: SR(1).is_unit()\n', '            True\n', '            sage: SR(-1).is_unit()\n', '            True\n', '            sage: SR(0).is_unit()\n', '            False\n', '        """\n', '        if not not self:\n', '            return True\n', '        if self == 0:\n', '            return False\n', '        raise NotImplementedError\n', '\n', '    cdef Expression coerce_in(self, z):\n', '        """\n', '        Quickly coerce z to be an Expression.\n', '        """\n', '        try:\n', '            return <Expression?>z\n', '        except TypeError:\n', '            return self._parent._coerce_(z)\n', '\n', '    cpdef _add_(left, right):\n', '        """\n', '        Add left and right.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: var("x y")\n', '            (x, y)\n', '            sage: x + y + y + x\n', '            2*x + 2*y\n', '\n', '            # adding relational expressions\n', '            sage: ( (x+y) > x ) + ( x > y )\n', '            2*x + y > x + y\n', '\n', '            sage: ( (x+y) > x ) + x\n', '            2*x + y > 2*x\n', '\n', '        TESTS::\n', '\n', '            sage: x + ( (x+y) > x )\n', '            2*x + y > 2*x\n', '\n', '            sage: ( x > y) + (y < x)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: incompatible relations\n', '\n', '            sage: (x < 1) + (y <= 2)\n', '            x + y < 3\n', '\n', '            sage: x + oo\n', '            +Infinity\n', '            sage: x - oo\n', '            -Infinity\n', '            sage: x + unsigned_infinity\n', '            Infinity\n', '            sage: x - unsigned_infinity\n', '            Infinity\n', '\n', '            sage: nsr = x.parent()\n', '            sage: nsr(oo) + nsr(oo)\n', '            +Infinity\n', '            sage: nsr(-oo) + nsr(-oo)\n', '            -Infinity\n', '            sage: nsr(oo) - nsr(oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: infinity - infinity encountered.\n', '            sage: nsr(-oo) - nsr(-oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: infinity - infinity encountered.\n', '\n', '            sage: nsr(unsigned_infinity) + nsr(oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: unsigned_infinity +- infinity encountered.\n', '            sage: nsr(unsigned_infinity) - nsr(oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: unsigned_infinity +- infinity encountered.\n', '            sage: nsr(oo) + nsr(unsigned_infinity)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: unsigned_infinity +- infinity encountered.\n', '            sage: nsr(oo) - nsr(unsigned_infinity)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: unsigned_infinity +- infinity encountered.\n', '            sage: nsr(unsigned_infinity) + nsr(unsigned_infinity)\n', '            Infinity\n', '        """\n', '        cdef GEx x\n', '        cdef Expression _right = <Expression>right\n', '        cdef operators op\n', '        if is_a_relational(left._gobj):\n', '            if is_a_relational(_right._gobj):\n', '                op = compatible_relation(relational_operator(left._gobj),\n', '                                         relational_operator(_right._gobj))\n', '                x = relational(left._gobj.lhs() + _right._gobj.lhs(),\n', '                               left._gobj.rhs() + _right._gobj.rhs(),\n', '                               op)\n', '            else:\n', '                x = relational(left._gobj.lhs() + _right._gobj,\n', '                               left._gobj.rhs() + _right._gobj,\n', '                               relational_operator(left._gobj))\n', '        elif is_a_relational(_right._gobj):\n', '            x = relational(left._gobj + _right._gobj.lhs(),\n', '                           left._gobj + _right._gobj.rhs(),\n', '                           relational_operator(_right._gobj))\n', '        else:\n', '            x = left._gobj + _right._gobj\n', '        return new_Expression_from_GEx(left._parent, x)\n', '\n', '    cpdef _sub_(left, right):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: var("x y")\n', '            (x, y)\n', '            sage: x - y\n', '            x - y\n', '\n', '            # subtracting relational expressions\n', '            sage: ( (x+y) > x ) - ( x > y )\n', '            y > x - y\n', '\n', '            sage: ( (x+y) > x ) - x\n', '            y > 0\n', '\n', '        TESTS::\n', '\n', '            sage: x - ( (x+y) > x )\n', '            -y > 0\n', '\n', '            sage: ( x > y) - (y < x)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: incompatible relations\n', '\n', '            sage: x - oo\n', '            -Infinity\n', '            sage: oo - x\n', '            +Infinity\n', '        """\n', '        cdef GEx x\n', '        cdef Expression _right = <Expression>right\n', '        if is_a_relational(left._gobj):\n', '            if is_a_relational(_right._gobj):\n', '                op = compatible_relation(relational_operator(left._gobj),\n', '                                         relational_operator(_right._gobj))\n', '                x = relational(left._gobj.lhs() - _right._gobj.lhs(),\n', '                               left._gobj.rhs() - _right._gobj.rhs(),\n', '                               op)\n', '            else:\n', '                x = relational(left._gobj.lhs() - _right._gobj,\n', '                               left._gobj.rhs() - _right._gobj,\n', '                               relational_operator(left._gobj))\n', '        elif is_a_relational(_right._gobj):\n', '            x = relational(left._gobj - _right._gobj.lhs(),\n', '                           left._gobj - _right._gobj.rhs(),\n', '                           relational_operator(_right._gobj))\n', '        else:\n', '            x = left._gobj - _right._gobj\n', '        return new_Expression_from_GEx(left._parent, x)\n', '\n', '    cpdef _mul_(left, right):\n', '        """\n', '        Multiply left and right.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: var("x y")\n', '            (x, y)\n', '            sage: x*y*y\n', '            x*y^2\n', '\n', '            # multiplying relational expressions\n', '            sage: ( (x+y) > x ) * ( x > y )\n', '            (x + y)*x > x*y\n', '\n', '            sage: ( (x+y) > x ) * x\n', '            (x + y)*x > x^2\n', '\n', '            sage: ( (x+y) > x ) * -1\n', '            -x - y > -x\n', '\n', '        TESTS::\n', '\n', '            sage: x * ( (x+y) > x )\n', '            (x + y)*x > x^2\n', '\n', '            sage: ( x > y) * (y < x)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: incompatible relations\n', '\n', "            sage: var('z')\n", '            z\n', '            sage: 3*(x+y)/z\n', '            3*(x + y)/z\n', '            sage: (-x+z)*(3*x-3*z)\n', '            -3*(x - z)^2\n', '\n', '            # check if comparison of constant terms in Pynac add objects work\n', '            sage: (y-1)*(y-2)\n', '            (y - 1)*(y - 2)\n', '\n', '        Check if Pynac can compute inverses of Python longs (:trac:`13107`)::\n', '\n', '            sage: SR(4L)*SR(2L)^(-1)\n', '            2\n', '\n', '        Check for simplifications when multiplying instances of exp::\n', '\n', '            sage: exp(x)*exp(y)\n', '            e^(x + y)\n', '            sage: exp(x)^2*exp(y)\n', '            e^(2*x + y)\n', '            sage: x^y*exp(x+y)*exp(-y)\n', '            x^y*e^x\n', '            sage: x^y*exp(x+y)*(x+y)*(2*x+2*y)*exp(-y)\n', '            2*(x + y)^2*x^y*e^x\n', '            sage: x^y*exp(x+y)*(x+y)*(2*x+2*y)*exp(-y)*exp(z)^2\n', '            2*(x + y)^2*x^y*e^(x + 2*z)\n', '            sage: 1/exp(x)\n', '            e^(-x)\n', '            sage: exp(x)/exp(y)\n', '            e^(x - y)\n', '            sage: A = exp(I*pi/5, hold=True)\n', '            sage: t = A*A; t\n', '            1/4*sqrt(5) + 1/4*I*sqrt(2*sqrt(5) + 10) - 1/4\n', '            sage: A^5\n', '            -1\n', '            sage: b = -x*A; c = b*b; c\n', '            1/4*x^2*(sqrt(5) + I*sqrt(2*sqrt(5) + 10) - 1)\n', '            sage: exp(x)^I*exp(z)^(2.5)\n', '            e^(I*x + 2.50000000000000*z)\n', '\n', '        ::\n', '\n', '            sage: x*oo\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: infinity * f(x) encountered.\n', '            sage: x*unsigned_infinity\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: infinity * f(x) encountered.\n', '\n', '            sage: SR(oo)*SR(oo)\n', '            +Infinity\n', '            sage: SR(-oo)*SR(oo)\n', '            -Infinity\n', '            sage: SR(oo)*SR(-oo)\n', '            -Infinity\n', '            sage: SR(unsigned_infinity)*SR(oo)\n', '            Infinity\n', '\n', '        Check if we are returning informative error messages in case of\n', '        nonsensical arithmetic (:trac:`10960`:, :trac:`13739` and\n', '        :trac:`24072`)::\n', '\n', "            sage: GF(5)(3) * SR.var('x')\n", '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: unsupported operand parent(s) for *: 'Finite Field of size 5' and 'Symbolic Ring'\n", '\n', "            sage: b = polygen(FiniteField(9), 'b')\n", "            sage: SR('I') * b\n", '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: positive characteristic not allowed in symbolic computations\n', '\n', '        Check that :trac:`18360` is fixed::\n', '\n', '            sage: f(x) = matrix()\n', '            sage: f(x)*1\n', '            []\n', '\n', '        Check that floating point numbers +/- 1.0 are treated\n', '        differently from integers +/- 1 (:trac:`12257`)::\n', '\n', '            sage: (1*x).operator()\n', '            sage: (1.0*x).operator()\n', '            <function mul_vararg...\n', '            sage: 1.0 * pi\n', '            1.00000000000000*pi\n', '            sage: 1.000000*(x+2)\n', '            1.00000000000000*x + 2.00000000000000\n', '            sage: -1.0*x\n', '            -1.00000000000000*x\n', '            sage: -1.0/x\n', '            -1.00000000000000/x\n', '            sage: (-1.0*x)*(1.0/x)\n', '            -1.00000000000000\n', '            sage: sin(1.0*pi)\n', '            sin(1.00000000000000*pi)\n', '\n', '        Check that infinities multiply correctly (:trac:`23427`)::\n', '\n', '            sage: SR(-oo) * SR(-oo)\n', '            +Infinity\n', '            sage: SR(-oo) * SR(oo)\n', '            -Infinity\n', '            sage: SR(-oo) * SR(unsigned_infinity)\n', '            Infinity\n', '        """\n', '        cdef GEx x\n', '        cdef Expression _right = <Expression>right\n', '        cdef operators o\n', '        if is_a_relational(left._gobj):\n', '            if is_a_relational(_right._gobj):\n', '                op = compatible_relation(relational_operator(left._gobj),\n', '                                         relational_operator(_right._gobj))\n', '                x = relational(left._gobj.lhs() * _right._gobj.lhs(),\n', '                               left._gobj.rhs() * _right._gobj.rhs(),\n', '                               op)\n', '            else:\n', '                o = relational_operator(left._gobj)\n', '                x = relational(left._gobj.lhs() * _right._gobj,\n', '                               left._gobj.rhs() * _right._gobj,\n', '                               o)\n', '        elif is_a_relational(_right._gobj):\n', '            o = relational_operator(_right._gobj)\n', '            x = relational(left._gobj * _right._gobj.lhs(),\n', '                           left._gobj * _right._gobj.rhs(),\n', '                           o)\n', '        else:\n', '            x = left._gobj * _right._gobj\n', '        return new_Expression_from_GEx(left._parent, x)\n', '\n', '    cpdef _div_(left, right):\n', '        """\n', '        Divide left and right.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: var("x y")\n', '            (x, y)\n', '            sage: x/y/y\n', '            x/y^2\n', '\n', '            # dividing relational expressions\n', '            sage: ( (x+y) > x ) / ( x > y )\n', '            (x + y)/x > x/y\n', '\n', '            sage: ( (x+y) > x ) / x\n', '            (x + y)/x > 1\n', '\n', '            sage: ( (x+y) > x ) / -1\n', '            -x - y > -x\n', '\n', '        TESTS::\n', '\n', '            sage: x / ( (x+y) > x )\n', '            x/(x + y) > 1\n', '\n', '            sage: ( x > y) / (y < x)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: incompatible relations\n', '            sage: x/oo\n', '            0\n', '            sage: oo/x\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: infinity * f(x) encountered.\n', '\n', '            sage: SR(oo)/SR(oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: 0 * infinity encountered.\n', '\n', '            sage: SR(-oo)/SR(oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: 0 * infinity encountered.\n', '\n', '            sage: SR(oo)/SR(-oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: 0 * infinity encountered.\n', '\n', '            sage: SR(oo)/SR(unsigned_infinity)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: 0 * infinity encountered.\n', '\n', '            sage: SR(unsigned_infinity)/SR(oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: 0 * infinity encountered.\n', '\n', '            sage: SR(0)/SR(oo)\n', '            0\n', '\n', '            sage: SR(0)/SR(unsigned_infinity)\n', '            0\n', '\n', '            sage: x/0\n', '            Traceback (most recent call last):\n', '            ...\n', '            ZeroDivisionError: symbolic division by zero\n', '\n', '        Check if Pynac can compute divisions of Python longs (:trac:`13107`)::\n', '\n', '            sage: SR(1L)/SR(2L)\n', '            1/2\n', '        """\n', '        cdef GEx x\n', '        cdef Expression _right = <Expression>right\n', '        cdef operators o\n', '        try:\n', '            if is_a_relational(left._gobj):\n', '                if is_a_relational(_right._gobj):\n', '                    op = compatible_relation(relational_operator(left._gobj),\n', '                                             relational_operator(_right._gobj))\n', '                    x = relational(left._gobj.lhs() / _right._gobj.lhs(),\n', '                                   left._gobj.rhs() / _right._gobj.rhs(),\n', '                                   op)\n', '                else:\n', '                    o = relational_operator(left._gobj)\n', '                    x = relational(left._gobj.lhs() / _right._gobj,\n', '                                   left._gobj.rhs() / _right._gobj,\n', '                                   o)\n', '            elif is_a_relational(_right._gobj):\n', '                o = relational_operator(_right._gobj)\n', '                x = relational(left._gobj / _right._gobj.lhs(),\n', '                               left._gobj / _right._gobj.rhs(),\n', '                               o)\n', '            else:\n', '                x = left._gobj / _right._gobj\n', '            return new_Expression_from_GEx(left._parent, x)\n', '        except Exception as msg:\n', '            # TODO: change this to maybe cleverly do something involving Cython C++ exception handling.\n', '            # See http://docs.cython.org/docs/wrapping_CPlusPlus.html\n', "            if 'division by zero' in str(msg):\n", '                raise ZeroDivisionError("symbolic division by zero")\n', '            else:\n', '                raise\n', '\n', '    def __invert__(self):\n', '        """\n', '        Return the inverse of this symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: ~x\n', '            1/x\n', '            sage: ~SR(3)\n', '            1/3\n', "            sage: v1=var('v1'); a = (2*erf(2*v1*arcsech(1/2))/v1); ~a\n", '            1/2*v1/erf(2*v1*arcsech(1/2))\n', '        """\n', '        return 1/self\n', '\n', '    cpdef int _cmp_(left, right) except -2:\n', '        """\n', '        Compare self and right, returning -1, 0, or 1, depending on if\n', '        self < right, self == right, or self > right, respectively.\n', '\n', '        This is deprecated by :trac:`23273`\n', '\n', '        Use :func:`sage.symbolic.comparison.mixed_order`` instead of\n', '        the operators <=, <, etc. to compare symbolic expressions when\n', '        you do not want to get a formal inequality back.\n', '\n', '        INPUT:\n', '\n', '        - ``right`` -- A :class:`Expression` instance.\n', '\n', '        OUTPUT: -1, 0 or 1\n', '\n', '        EXAMPLES:\n', '\n', '        Using ``cmp`` to compare symbolic expressions should be avoided::\n', '\n', '            sage: SR(0)._cmp_(SR(1))\n', '            doctest:...: DeprecationWarning: to compare symbolic expressions,\n', '            use mixed_order(a, b) or bool(a <= b)\n', '            See http://trac.sagemath.org/23273 for details.\n', '            -1\n', '\n', '        Instead, you can do the following::\n', '\n', '            sage: from sage.symbolic.comparison import mixed_order\n', '\n', '            sage: a = sqrt(3)\n', '            sage: b = x^2+1\n', '            sage: mixed_order(a, b)   # indirect doctest\n', '            -1\n', '\n', "            sage: x,y = var('x,y')\n", '            sage: x < y\n', '            x < y\n', '            sage: mixed_order(x, y)\n', '            1\n', '\n', '            sage: mixed_order(SR(0.5), SR(0.7))\n', '            -1\n', '            sage: SR(0.5) < SR(0.7)\n', '            0.500000000000000 < 0.700000000000000\n', '            sage: mixed_order(SR(0.5), 0.7)\n', '            -1\n', '\n', '            sage: mixed_order(sin(SR(2)), sin(SR(1)))\n', '            1\n', '            sage: float(sin(SR(2)))\n', '            0.9092974268256817\n', '            sage: float(sin(SR(1)))\n', '            0.8414709848078965\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`9880` is fixed::\n', '\n', "            sage: b = [var('b_%s'%i) for i in range(4)]\n", '            sage: precomp = (2^b_2 + 2)*(2^b_1 + 2^(-b_1) + 2^b_1*2^b_0 - \\\n', '                        2^b_1*2^(-b_0) - 2^(-b_1)*2^b_0 - 2^(-b_1)*2^(-b_0) + \\\n', '                        2^b_0 + 2^(-b_0) - 9) + (2^b_1 + 2^(-b_1) + \\\n', '                        2^b_1*2^b_0 - 2^b_1*2^(-b_0) - 2^(-b_1)*2^b_0 - \\\n', '                         2^(-b_1)*2^(-b_0) + 2^b_0 + 2^(-b_0) - 9)/2^b_2\n', '            sage: repl_dict = {b_0: b_0, b_3: b_1, b_2: b_3, b_1: b_2}\n', '            sage: P = precomp.substitute(repl_dict)\n', '            sage: P.expand()\n', '            2^b_0*2^b_2*2^b_3 + 2*2^b_0*2^b_2 + 2^b_0*2^b_3 + 2^b_2*2^b_3 +\n', '            2*2^b_0 + 2*2^b_2 - 9*2^b_3 + 2^b_0*2^b_2/2^b_3 -\n', '            2^b_0*2^b_3/2^b_2 - 2^b_2*2^b_3/2^b_0 - 2*2^b_0/2^b_2 -\n', '            2*2^b_2/2^b_0 + 2^b_0/2^b_3 + 2^b_2/2^b_3 + 2^b_3/2^b_0 +\n', '            2^b_3/2^b_2 + 2/2^b_0 + 2/2^b_2 - 2^b_0/(2^b_2*2^b_3) -\n', '            2^b_2/(2^b_0*2^b_3) - 9/2^b_3 - 2^b_3/(2^b_0*2^b_2) -\n', '            2/(2^b_0*2^b_2) + 1/(2^b_0*2^b_3) + 1/(2^b_2*2^b_3) -\n', '            1/(2^b_0*2^b_2*2^b_3) - 18\n', '\n', "            sage: _0,b_1,b_2=var('b_0,b_1,b_2')\n", '            sage: f = 1/27*b_2^2/(2^b_2)^2 + 1/27*b_1^2/(2^b_1)^2 + \\\n', '            1/27*b_0^2/(2^b_0)^2 + 1/27*b_2/(2^b_2)^2 - 2/81/(2^b_2)^2 + \\\n', '            1/27*b_1/(2^b_1)^2 + 8/243/(2^b_2)^2 - 1/81*b_0/(2^b_0)^2 - \\\n', '            1/27*b_1^2/((2^b_2)^2*(2^b_1)^2) - \\\n', '            1/27*b_0^2/((2^b_2)^2*(2^b_0)^2) - 20/243/(2^b_1)^2 + 1/9/2^b_0 \\\n', '            + 4/81*b_0/(2^b_0)^2 - 8/243/(2^b_2)^2 - 2/9/(2^b_2*2^b_1) - \\\n', '            2/9/(2^b_2*2^b_0) + 8/243/(2^b_1)^2 - 1/9/2^b_0 + \\\n', '            2/9/(2^b_2*2^b_1) + 2/9/(2^b_2*2^b_0) - \\\n', '            2/27*b_1*b_2/((2^b_2)^2*(2^b_1)^2) - \\\n', '            1/27*b_2^2/((2^b_2)^2*(2^b_1)^2) - \\\n', '            2/27*b_0*b_2/((2^b_2)^2*(2^b_0)^2) - \\\n', '            1/27*b_2^2/((2^b_2)^2*(2^b_0)^2) + 2/81/(2^b_1)^2 - \\\n', '            1/27*b_0^2/((2^b_1)^2*(2^b_0)^2) - \\\n', '            2/27*b_0*b_1/((2^b_1)^2*(2^b_0)^2) - \\\n', '            1/27*b_1^2/((2^b_1)^2*(2^b_0)^2) - 2/81/(2^b_0)^2 + \\\n', '            5/27*b_1/((2^b_2)^2*(2^b_1)^2) + 5/27*b_2/((2^b_2)^2*(2^b_1)^2) \\\n', '            + 5/27*b_0/((2^b_2)^2*(2^b_0)^2) + \\\n', '            5/27*b_2/((2^b_2)^2*(2^b_0)^2) + 5/27*b_0/((2^b_1)^2*(2^b_0)^2) \\\n', '            + 5/27*b_1/((2^b_1)^2*(2^b_0)^2) - 4/81/((2^b_2)^2*(2^b_1)^2) + \\\n', '            1/27*b_0^2/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) + \\\n', '            2/27*b_0*b_1/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) + \\\n', '            2/27*b_0*b_2/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) + \\\n', '            1/27*b_1^2/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) + \\\n', '            2/27*b_1*b_2/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) + \\\n', '            1/27*b_2^2/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) - \\\n', '            4/81/((2^b_2)^2*(2^b_0)^2) - 4/81/((2^b_1)^2*(2^b_0)^2) - \\\n', '            11/27*b_0/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) - \\\n', '            11/27*b_1/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) - \\\n', '            11/27*b_2/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) + \\\n', '            64/81/((2^b_2)^2*(2^b_1)^2*(2^b_0)^2) + 35/81 \\\n', '            sage: f.nops()\n', '            38\n', '\n', "            sage: x,y,z = var('x y z')\n", '            sage: print((-x+z)*(3*x-3*z))\n', '            -3*(x - z)^2\n', '\n', "            sage: t = var('t')\n", '            sage: (x-t)^3\n', '            -(t - x)^3\n', '            sage: (-t+x)^3\n', '            -(t - x)^3\n', '            sage: (-x+t)^3\n', '            (t - x)^3\n', '\n', '        This example is from :trac:`10833`::\n', '\n', '            sage: R.<x,c> = PolynomialRing(QQ,2)\n', '            sage: phi(x) = x^2 + c\n', '            sage: def iterkate(n):\n', '            ....:     pol = x\n', '            ....:     for i in range(1,n):\n', '            ....:         pol = phi(pol)\n', '            ....:     return pol\n', '            ....:\n', '            sage: g = expand(iterkate(7))\n', '            sage: g.nops()\n', '            480\n', '\n', '        Check if :trac:`10849` is fixed::\n', '\n', '            sage: t = I.pyobject().parent()(-1/2)\n', '            sage: t > 0\n', '            False\n', '            sage: t = I*x-1/2; t\n', '            I*x - 1/2\n', '            sage: t.subs(x=I*x).subs(x=0).is_positive()\n', '            False\n', '\n', '        Check if :trac:`16397` is fixed:\n', '\n', '            sage: mixed_order(1, sqrt(2))\n', '            -1\n', '            sage: mixed_order(SR(1), sqrt(2))\n', '            -1\n', '            sage: mixed_order(log(8), 3*log(2))\n', '            0\n', '            sage: bool(RLF(1) < RLF(sqrt(2)))\n', '            True\n', '            sage: RealSet((0, pi),[pi, pi],(pi,4))\n', '            (0, 4)\n', '            sage: RealSet((0, pi),[0, pi],(pi,4))\n', '            [0, 4)\n', '            sage: RealSet((0, pi),[0, 3.5],(pi,4))\n', '            [0, 4)\n', '\n', '        More sanity tests::\n', '\n', '            sage: bool(pi < pi)\n', '            False\n', '            sage: bool(e < e)\n', '            False\n', '            sage: bool(sqrt(2) < sqrt(2))\n', '            False\n', '            sage: bool(pi < SR.zero())\n', '            False\n', '        """\n', "        deprecation(23273, 'to compare symbolic expressions, '\n", "                    'use mixed_order(a, b) or bool(a <= b)')\n", '        return mixed_order(left, right)\n', '\n', '    cpdef int _cmp_add(Expression left, Expression right) except -2:\n', '        """\n', '        Compare ``left`` and ``right`` in the print order.\n', '\n', '        INPUT:\n', '\n', '        - ``right`` -- A :class:`Expression` instance.\n', '\n', '        OUTPUT:\n', '\n', '        Boolean.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: a = sqrt(3)\n', '            sage: b = x^2+1\n', '            sage: a._cmp_add(b)\n', '            -1\n', '            sage: b._cmp_add(a)\n', '            1\n', '            sage: b._cmp_add(1)\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: Argument 'right' has incorrect type (expected\n", '            sage.symbolic.expression.Expression, got sage.rings.integer.Integer)\n', '        """\n', '        return print_order_compare(left._gobj, right._gobj)\n', '\n', '    cpdef int _cmp_mul(Expression left, Expression right) except -2:\n', '        """\n', '        Compare ``left`` and ``right`` in the print order for products.\n', '\n', '        INPUT:\n', '\n', '        - ``right`` -- A :class:`Expression` instance.\n', '\n', '        OUTPUT:\n', '\n', '        Boolean.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: a = sqrt(3)\n', '            sage: b = x^2+1\n', '            sage: a._cmp_mul(b)\n', '            -1\n', '            sage: b._cmp_mul(a)\n', '            1\n', '            sage: b._cmp_mul(1)\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: Argument 'right' has incorrect type (expected\n", '            sage.symbolic.expression.Expression, got sage.rings.integer.Integer)\n', '        """\n', '        return print_order_compare_mul(left._gobj, right._gobj)\n', '\n', '    cpdef _pow_(self, other):\n', '        """\n', '        Return ``self`` raised to the power ``other``.\n', '\n', '        OUTPUT: a symbolic expression\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: x._pow_(y)\n', '            x^y\n', '            sage: x^(3/5)\n', '            x^(3/5)\n', '            sage: x^sin(x)^cos(y)\n', '            x^(sin(x)^cos(y))\n', '\n', '        Immediate simplifications are applied::\n', '\n', "            sage: x = SR.symbol('x', domain='real')\n", '            sage: (x^3)^(1/3)\n', '            x\n', '            sage: (x^4)^(1/4)\n', '            abs(x)\n', '            sage: (x^8)^(1/4)\n', '            x^2\n', '            sage: (x^-4)^(1/4)\n', '            1/abs(x)\n', '            sage: (x^-8)^(1/4)\n', '            x^(-2)\n', '            sage: forget()\n', '\n', '        TESTS::\n', '\n', '            sage: (Mod(2,7)*x^2 + Mod(2,7))^7\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: unsupported operand parent(s) for *: 'Ring of integers modulo 7' and 'Symbolic Ring'\n", '\n', '        The leading coefficient in the result above is 1 since::\n', '\n', '            sage: t = Mod(2,7); gcd(t, t)^7\n', '            1\n', '            sage: gcd(t,t).parent()\n', '            Ring of integers modulo 7\n', '\n', '        ::\n', '\n', '            sage: k = GF(7)\n', '            sage: f = expand((k(1)*x^5 + k(1)*x^2 + k(2))^7); f # known bug\n', '            x^35 + x^14 + 2\n', '\n', '            sage: x^oo\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: power::eval(): pow(f(x), infinity) is not defined.\n', '            sage: SR(oo)^2\n', '            +Infinity\n', '            sage: SR(-oo)^2\n', '            +Infinity\n', '            sage: SR(-oo)^3\n', '            -Infinity\n', '            sage: SR(unsigned_infinity)^2\n', '            Infinity\n', '\n', '        Test powers of exp::\n', '\n', '            sage: exp(2)^5\n', '            e^10\n', '            sage: exp(x)^5\n', '            e^(5*x)\n', '            sage: ex = exp(sqrt(x))^x; ex\n', '            (e^sqrt(x))^x\n', '            sage: latex(ex)\n', '            \\left(e^{\\sqrt{x}}\\right)^{x}\n', '\n', '        Test simplification of powers involving the reciprocal\n', '        logarithm of the (positive) base::\n', '\n', '            sage: 2^(1/log(2))\n', '            e\n', '            sage: 2^(x/log(2))\n', '            e^x\n', '            sage: 2^(-x^2/2/log(2))\n', '            1/e^(1/2*x^2)\n', '            sage: x^(x/log(x))\n', '            x^(x/log(x))\n', '            sage: assume(x > 0)\n', '            sage: x^(x/log(x))\n', '            e^x\n', '            sage: forget()\n', '\n', '        Test base a Python numeric type::\n', '\n', '            sage: int(2)^x\n', '            2^x\n', '            sage: float(2.3)^(x^3 - x^2 + 1/3)\n', '            2.3^(x^3 - x^2 + 1/3)\n', '            sage: complex(1,3)^(sqrt(2))\n', '            (1+3j)^sqrt(2)\n', '\n', '        Test complex numeric powers::\n', '\n', '            sage: I^0.5\n', '            0.707106781186548 + 0.707106781186547*I\n', '            sage: (I + 1) ^ (0.5 + I)\n', '            0.400667052375828 + 0.365310866736929*I\n', '            sage: I^I\n', '            I^I\n', '            sage: I^x\n', '            I^x\n', '            sage: I^(1/2)\n', '            sqrt(I)\n', '            sage: I^(2/3)\n', '            I^(2/3)\n', '            sage: 2^(1/2)\n', '            sqrt(2)\n', '            sage: (2*I)^(1/2)\n', '            sqrt(2*I)\n', '\n', '        Test if we can take powers of elements of `\\QQ(i)` (:trac:`8659`)::\n', '\n', "            sage: t = QuadraticField(-1, 'I')(8)\n", '            sage: t^(1/2)\n', '            2*sqrt(2)\n', '            sage: (t^2)^(1/4)\n', '            2*4^(1/4)\n', '\n', '        Test if we can compute inverses of Python longs (:trac:`13107`)::\n', '\n', '            sage: SR(2L)^(-1)\n', '            1/2\n', '\n', "        Symbolic powers with ``None`` shouldn't crash (:trac:`17523`)::\n", '\n', '            sage: None^pi\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: unsupported operand type(s) for ** or pow(): 'NoneType' and 'sage.symbolic.expression.Expression'\n", '            sage: sin(x)^None\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: unsupported operand type(s) for ** or pow(): 'sage.symbolic.expression.Expression' and 'NoneType'\n", '\n', '        Check that :trac:`18088` is fixed::\n', '\n', '            sage: SR(0)^SR(0)\n', '            1\n', '\n', '        Check that floating point numbers +/- 1.0 are treated\n', '        differently from integers +/- 1 (:trac:`12257`)::\n', '\n', '            sage: (x^1).operator()\n', '            sage: (x^1.0).operator()\n', '            <built-in function pow>\n', '            sage: x^1.0\n', '            x^1.00000000000000\n', '            sage: x^-1.0\n', '            x^(-1.00000000000000)\n', '            sage: 0^1.0\n', '            0.000000000000000\n', '            sage: exp(x)^1.0\n', '            e^(1.00000000000000*x)\n', '\n', '        Check that :trac:`23921` is resolved::\n', '\n', '            sage: assume(SR.an_element() > 0)\n', "            sage: A.<n> = AsymptoticRing('(SR_+)^n * n^SR', SR)\n", '            sage: elem = SR(2)^n\n', '            sage: (elem, elem.parent())\n', '            (2^n, Asymptotic Ring <SR^n * n^SR> over Symbolic Ring)\n', '        """\n', '        cdef Expression nexp = <Expression>other\n', '        cdef GEx x\n', '        if is_a_relational(self._gobj):\n', '            x = relational(g_pow(self._gobj.lhs(), nexp._gobj),\n', '                           g_pow(self._gobj.rhs(), nexp._gobj),\n', '                           relational_operator(self._gobj))\n', '        else:\n', '            x = g_pow(self._gobj, nexp._gobj)\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    cpdef _pow_int(self, other):\n', '        """\n', '        TESTS::\n', '\n', "            sage: var('x')\n", '            x\n', '            sage: cos(x)._pow_int(-3)\n', '            cos(x)^(-3)\n', '            sage: SR(-oo)._pow_int(2)\n', '            +Infinity\n', '            sage: pi._pow_int(4)\n', '            pi^4\n', '        """\n', '        return self._pow_(self._parent(other))\n', '\n', '    def derivative(self, *args):\n', '        """\n', '        Return the derivative of this expressions with respect to the\n', '        variables supplied in args.\n', '\n', '        Multiple variables and iteration counts may be supplied; see\n', '        documentation for the global\n', '        :meth:`~sage.calculus.functional.derivative` function for more\n', '        details.\n', '\n', '        .. SEEALSO::\n', '\n', '            This is implemented in the ``_derivative`` method (see the\n', '            source code).\n', '\n', '        EXAMPLES::\n', '\n', '            sage: var("x y")\n', '            (x, y)\n', '            sage: t = (x^2+y)^2\n', '            sage: t.derivative(x)\n', '            4*(x^2 + y)*x\n', '            sage: t.derivative(x, 2)\n', '            12*x^2 + 4*y\n', '            sage: t.derivative(x, 2, y)\n', '            4\n', '            sage: t.derivative(y)\n', '            2*x^2 + 2*y\n', '\n', '        If the function depends on only one variable, you may omit the\n', '        variable. Giving just a number (for the order of the derivative)\n', '        also works::\n', '\n', '            sage: f(x) = x^3 + sin(x)\n', '            sage: f.derivative()\n', '            x |--> 3*x^2 + cos(x)\n', '            sage: f.derivative(2)\n', '            x |--> 6*x - sin(x)\n', '\n', "        Some expressions can't be cleanly differentiated by the\n", '        chain rule::\n', '\n', "            sage: _ = var('x', domain='real')\n", "            sage: _ = var('w z')\n", '            sage: (x^z).conjugate().diff(x)\n', '            conjugate(x^(z - 1))*conjugate(z)\n', '            sage: (w^z).conjugate().diff(w)\n', '            w^(z - 1)*z*D[0](conjugate)(w^z)\n', '            sage: atanh(x).real_part().diff(x)\n', '            -1/(x^2 - 1)\n', '            sage: atanh(x).imag_part().diff(x)\n', '            0\n', '            sage: atanh(w).real_part().diff(w)\n', '            -D[0](real_part)(arctanh(w))/(w^2 - 1)\n', '            sage: atanh(w).imag_part().diff(w)\n', '            -D[0](imag_part)(arctanh(w))/(w^2 - 1)\n', '            sage: abs(log(x)).diff(x)\n', '            1/2*(conjugate(log(x))/x + log(x)/x)/abs(log(x))\n', '            sage: abs(log(z)).diff(z)\n', '            1/2*(conjugate(log(z))/z + log(z)/conjugate(z))/abs(log(z))\n', '            sage: forget()\n', '\n', '            sage: t = sin(x+y^2)*tan(x*y)\n', '            sage: t.derivative(x)\n', '            (tan(x*y)^2 + 1)*y*sin(y^2 + x) + cos(y^2 + x)*tan(x*y)\n', '            sage: t.derivative(y)\n', '            (tan(x*y)^2 + 1)*x*sin(y^2 + x) + 2*y*cos(y^2 + x)*tan(x*y)\n', '\n', '        ::\n', '\n', '            sage: h = sin(x)/cos(x)\n', '            sage: derivative(h,x,x,x)\n', '            8*sin(x)^2/cos(x)^2 + 6*sin(x)^4/cos(x)^4 + 2\n', '            sage: derivative(h,x,3)\n', '            8*sin(x)^2/cos(x)^2 + 6*sin(x)^4/cos(x)^4 + 2\n', '\n', '        ::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: u = (sin(x) + cos(y))*(cos(x) - sin(y))\n', '            sage: derivative(u,x,y)\n', '            -cos(x)*cos(y) + sin(x)*sin(y)\n', '            sage: f = ((x^2+1)/(x^2-1))^(1/4)\n', '            sage: g = derivative(f, x); g # this is a complex expression\n', '            -1/2*((x^2 + 1)*x/(x^2 - 1)^2 - x/(x^2 - 1))/((x^2 + 1)/(x^2 - 1))^(3/4)\n', '            sage: g.factor()\n', '            -x/((x + 1)^2*(x - 1)^2*((x^2 + 1)/(x^2 - 1))^(3/4))\n', '\n', '        ::\n', '\n', "            sage: y = var('y')\n", '            sage: f = y^(sin(x))\n', '            sage: derivative(f, x)\n', '            y^sin(x)*cos(x)*log(y)\n', '\n', '        ::\n', '\n', '            sage: g(x) = sqrt(5-2*x)\n', '            sage: g_3 = derivative(g, x, 3); g_3(2)\n', '            -3\n', '\n', '        ::\n', '\n', '            sage: f = x*e^(-x)\n', '            sage: derivative(f, 100)\n', '            x*e^(-x) - 100*e^(-x)\n', '\n', '        ::\n', '\n', '            sage: g = 1/(sqrt((x^2-1)*(x+5)^6))\n', '            sage: derivative(g, x)\n', '            -((x + 5)^6*x + 3*(x^2 - 1)*(x + 5)^5)/((x^2 - 1)*(x + 5)^6)^(3/2)\n', '\n', '        TESTS::\n', '\n', '            sage: t.derivative()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: No differentiation variable specified.\n', '        """\n', '        return multi_derivative(self, args)\n', '\n', '    diff = differentiate = derivative\n', '\n', '    def _derivative(self, symb=None, deg=1):\n', '        """\n', '        Return the deg-th (partial) derivative of self with respect to symb.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: var("x y")\n', '            (x, y)\n', '            sage: b = (x+y)^5\n', '            sage: b._derivative(x, 2)\n', '            20*(x + y)^3\n', '\n', "            sage: foo = function('foo',nargs=2)\n", '            sage: foo(x^2,x^2)._derivative(x)\n', '            2*x*D[0](foo)(x^2, x^2) + 2*x*D[1](foo)(x^2, x^2)\n', '\n', '            sage: SR(1)._derivative()\n', '            0\n', '\n', '        If the expression is a callable symbolic expression, and no\n', '        variables are specified, then calculate the gradient::\n', '\n', '            sage: f(x,y)=x^2+y\n', '            sage: f.diff() # gradient\n', '            (x, y) |--> (2*x, 1)\n', '\n', '        TESTS:\n', '\n', '        Raise error if no variable is specified and there are multiple\n', '        variables::\n', '\n', '            sage: b._derivative()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: No differentiation variable specified.\n', '\n', '        Check if :trac:`6524` is fixed::\n', '\n', "            sage: f = function('f')\n", '            sage: f(x)*f(x).derivative(x)*f(x).derivative(x,2)\n', '            f(x)*diff(f(x), x)*diff(f(x), x, x)\n', '            sage: g = f(x).diff(x)\n', '            sage: h = f(x).diff(x)*sin(x)\n', '            sage: h/g\n', '            sin(x)\n', '        """\n', '        if symb is None:\n', '            # we specify a default value of None for symb and check for it here\n', '            # to return more helpful error messages when no variable is\n', '            # given by the multi_derivative framework\n', '            vars = self.variables()\n', '            if len(vars) == 1:\n', '                symb = vars[0]\n', '            elif len(vars) == 0:\n', '                return self._parent(0)\n', '            elif sage.symbolic.callable.is_CallableSymbolicExpression(self):\n', '                return self.gradient()\n', '            else:\n', '                raise ValueError("No differentiation variable specified.")\n', '        if not isinstance(deg, (int, long, sage.rings.integer.Integer)) \\\n', '                or deg < 1:\n', '            raise TypeError("argument deg should be an integer >= 1.")\n', '        cdef Expression symbol = self.coerce_in(symb)\n', '        if not is_a_symbol(symbol._gobj):\n', '            raise TypeError("argument symb must be a symbol")\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = self._gobj.diff(ex_to_symbol(symbol._gobj), deg)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def gradient(self, variables=None):\n', '        r"""\n', '        Compute the gradient of a symbolic function.\n', '\n', '        This function returns a vector whose components are the derivatives\n', '        of the original function with respect to the arguments of the\n', '        original function. Alternatively, you can specify the variables as\n', '        a list.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y = var('x y')\n", '            sage: f = x^2+y^2\n', '            sage: f.gradient()\n', '            (2*x, 2*y)\n', '            sage: g(x,y) = x^2+y^2\n', '            sage: g.gradient()\n', '            (x, y) |--> (2*x, 2*y)\n', "            sage: n = var('n')\n", '            sage: f(x,y) = x^n+y^n\n', '            sage: f.gradient()\n', '            (x, y) |--> (n*x^(n - 1), n*y^(n - 1))\n', '            sage: f.gradient([y,x])\n', '            (x, y) |--> (n*y^(n - 1), n*x^(n - 1))\n', '\n', '        .. SEEALSO::\n', '\n', '            :meth:`~sage.manifolds.differentiable.scalarfield.DiffScalarField.gradient`\n', '            of scalar fields on Euclidean spaces (and more generally\n', '            pseudo-Riemannian manifolds), in particular for computing the\n', '            gradient in curvilinear coordinates.\n', '\n', '        """\n', '        from sage.modules.free_module_element import vector\n', '        if variables is None:\n', '            variables = self.arguments()\n', '        return vector([self.derivative(x) for x in variables])\n', '\n', '    def hessian(self):\n', '        r"""\n', '        Compute the hessian of a function. This returns a matrix components\n', '        are the 2nd partial derivatives of the original function.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y = var('x y')\n", '            sage: f = x^2+y^2\n', '            sage: f.hessian()\n', '            [2 0]\n', '            [0 2]\n', '            sage: g(x,y) = x^2+y^2\n', '            sage: g.hessian()\n', '            [(x, y) |--> 2 (x, y) |--> 0]\n', '            [(x, y) |--> 0 (x, y) |--> 2]\n', '        """\n', '        from sage.matrix.constructor import matrix\n', '        return matrix([[g.derivative(x) for x in self.arguments()]\n', '                       for g in self.gradient()])\n', '\n', '\n', '    def series(self, symbol, order=None):\n', '        r"""\n', '        Return the power series expansion of self in terms of the\n', '        given variable to the given order.\n', '\n', '        INPUT:\n', '\n', '        - ``symbol`` - a symbolic variable or symbolic equality\n', '          such as ``x == 5``; if an equality is given, the\n', '          expansion is around the value on the right hand side\n', '          of the equality\n', '        - ``order`` - an integer; if nothing given, it is set\n', '          to the global default (``20``), which can be changed\n', '          using :func:`set_series_precision`\n', '\n', '        OUTPUT:\n', '\n', '        A power series.\n', '\n', '        To truncate the power series and obtain a normal expression, use the\n', '        :meth:`truncate` command.\n', '\n', '        EXAMPLES:\n', '\n', '        We expand a polynomial in `x` about 0, about `1`, and also truncate\n', '        it back to a polynomial::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: f = (x^3 - sin(y)*x^2 - 5*x + 3); f\n', '            x^3 - x^2*sin(y) - 5*x + 3\n', '            sage: g = f.series(x, 4); g\n', '            3 + (-5)*x + (-sin(y))*x^2 + 1*x^3 + Order(x^4)\n', '            sage: g.truncate()\n', '            x^3 - x^2*sin(y) - 5*x + 3\n', '            sage: g = f.series(x==1, 4); g\n', '            (-sin(y) - 1) + (-2*sin(y) - 2)*(x - 1) + (-sin(y) + 3)*(x - 1)^2 + 1*(x - 1)^3 + Order((x - 1)^4)\n', '            sage: h = g.truncate(); h\n', '            (x - 1)^3 - (x - 1)^2*(sin(y) - 3) - 2*(x - 1)*(sin(y) + 1) - sin(y) - 1\n', '            sage: h.expand()\n', '            x^3 - x^2*sin(y) - 5*x + 3\n', '\n', '        We computer another series expansion of an analytic function::\n', '\n', '            sage: f = sin(x)/x^2\n', '            sage: f.series(x,7)\n', '            1*x^(-1) + (-1/6)*x + 1/120*x^3 + (-1/5040)*x^5 + Order(x^7)\n', '            sage: f.series(x)\n', '            1*x^(-1) + (-1/6)*x + ... + Order(x^20)\n', '            sage: f.series(x==1,3)\n', '            (sin(1)) + (cos(1) - 2*sin(1))*(x - 1) + (-2*cos(1) + 5/2*sin(1))*(x - 1)^2 + Order((x - 1)^3)\n', '            sage: f.series(x==1,3).truncate().expand()\n', '            -2*x^2*cos(1) + 5/2*x^2*sin(1) + 5*x*cos(1) - 7*x*sin(1) - 3*cos(1) + 11/2*sin(1)\n', '\n', '        Expressions formed by combining series can be expanded\n', '        by applying series again::\n', '\n', '            sage: (1/(1-x)).series(x, 3)+(1/(1+x)).series(x,3)\n', '            (1 + 1*x + 1*x^2 + Order(x^3)) + (1 + (-1)*x + 1*x^2 + Order(x^3))\n', '            sage: _.series(x,3)\n', '            2 + 2*x^2 + Order(x^3)\n', '            sage: (1/(1-x)).series(x, 3)*(1/(1+x)).series(x,3)\n', '            (1 + 1*x + 1*x^2 + Order(x^3))*(1 + (-1)*x + 1*x^2 + Order(x^3))\n', '            sage: _.series(x,3)\n', '            1 + 1*x^2 + Order(x^3)\n', '\n', "        Following the GiNaC tutorial, we use John Machin's amazing\n", '        formula `\\pi = 16 \\tan^{-1}(1/5) - 4 \\tan^{-1}(1/239)` to compute\n', '        digits of `\\pi`. We expand the arc tangent around 0 and insert\n', '        the fractions 1/5 and 1/239.\n', '\n', '        ::\n', '\n', "            sage: x = var('x')\n", '            sage: f = atan(x).series(x, 10); f\n', '            1*x + (-1/3)*x^3 + 1/5*x^5 + (-1/7)*x^7 + 1/9*x^9 + Order(x^10)\n', '            sage: float(16*f.subs(x==1/5) - 4*f.subs(x==1/239))\n', '            3.1415926824043994\n', '\n', '        TESTS:\n', '\n', '        Check if :trac:`8943` is fixed::\n', '\n', '            sage: ((1+arctan(x))**(1/x)).series(x==0, 3)\n', '            (e) + (-1/2*e)*x + (1/8*e)*x^2 + Order(x^3)\n', '\n', '        Order may be negative::\n', '\n', '            sage: f = sin(x)^(-2); f.series(x, -1)\n', '            1*x^(-2) + Order(1/x)\n', '\n', '        Check if changing global series precision does it right::\n', '\n', '            sage: set_series_precision(3)\n', '            sage: (1/(1-2*x)).series(x)\n', '            1 + 2*x + 4*x^2 + Order(x^3)\n', '            sage: set_series_precision(20)\n', '        """\n', '        cdef Expression symbol0 = self.coerce_in(symbol)\n', '        cdef GEx x\n', '        cdef SymbolicSeries nex\n', '        cdef int cprec\n', '        cdef int options\n', '        if order is infinity:\n', '            options = 4\n', '            order = None\n', '        else:\n', '            options = 2\n', '\n', '        if order is None:\n', '            from sage.misc.defaults import series_precision\n', '            cprec = series_precision()\n', '        else:\n', '            cprec = order\n', '        sig_on()\n', '        try:\n', '            x = self._gobj.expand(0).series(symbol0._gobj, cprec, options)\n', '            nex = SymbolicSeries.__new__(SymbolicSeries)\n', '            nex._parent = self._parent\n', '            nex._gobj = GEx(x)\n', '        finally:\n', '            sig_off()\n', '        return nex\n', '\n', '    def residue(self, symbol):\n', '        """\n', '        Calculate the residue of ``self`` with respect to ``symbol``.\n', '\n', '        INPUT:\n', '\n', '        - ``symbol`` - a symbolic variable or symbolic equality such\n', '          as ``x == 5``. If an equality is given, the expansion is\n', '          around the value on the right hand side of the equality,\n', '          otherwise at ``0``.\n', '\n', '        OUTPUT:\n', '\n', '        The residue of ``self``.\n', '\n', '        Say, ``symbol`` is ``x == a``, then this function calculates\n', '        the residue of ``self`` at `x=a`, i.e., the coefficient of\n', '        `1/(x-a)` of the series expansion of ``self`` around `a`.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (1/x).residue(x == 0)\n', '            1\n', '            sage: (1/x).residue(x == oo)\n', '            -1\n', '            sage: (1/x^2).residue(x == 0)\n', '            0\n', '            sage: (1/sin(x)).residue(x == 0)\n', '            1\n', "            sage: var('q, n, z')\n", '            (q, n, z)\n', '            sage: (-z^(-n-1)/(1-z/q)^2).residue(z == q).simplify_full()\n', '            (n + 1)/q^n\n', "            sage: var('s')\n", '            s\n', '            sage: zeta(s).residue(s == 1)\n', '            1\n', '\n', '        We can also compute the residue at more general places,\n', '        given that the pole is recognized::\n', '\n', "            sage: k = var('k', domain='integer')\n", '            sage: (gamma(1+x)/(1 - exp(-x))).residue(x==2*I*pi*k)\n', '            gamma(2*I*pi*k + 1)\n', '            sage: csc(x).residue(x==2*pi*k)\n', '            1\n', '\n', '        TESTS::\n', '\n', '            sage: (exp(x)/sin(x)^4).residue(x == 0)\n', '            5/6\n', '\n', '        Check that :trac:`18372` is resolved::\n', '\n', '            sage: (1/(x^2 - x - 1)).residue(x == 1/2*sqrt(5) + 1/2)\n', '            1/5*sqrt(5)\n', '\n', '        Check that :trac:`20084` is fixed::\n', '\n', '            sage: (1/(1 - 2^-x)).residue(x == 2*pi*I/log(2))\n', '            1/log(2)\n', '        """\n', '        if symbol.is_relational():\n', '            x = symbol.lhs()\n', '            a = symbol.rhs()\n', '        else:\n', '            x = symbol\n', '            a = 0\n', '        if a == infinity:\n', '            return (-self.subs({x: 1/x}) / x**2).residue(x == 0)\n', '        return self.subs({x: x + a}).series(x == 0, 0).coefficient(x, -1)\n', '\n', '    def taylor(self, *args):\n', '        r"""\n', '        Expand this symbolic expression in a truncated Taylor or\n', '        Laurent series in the variable `v` around the point `a`,\n', '        containing terms through `(x - a)^n`. Functions in more\n', '        variables is also supported.\n', '\n', '        INPUT:\n', '\n', '        -  ``*args`` - the following notation is supported\n', '\n', '           - ``x, a, n`` - variable, point, degree\n', '\n', '           - ``(x, a), (y, b), n`` - variables with points, degree of polynomial\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('a, x, z')\n", '            (a, x, z)\n', '            sage: taylor(a*log(z), z, 2, 3)\n', '            1/24*a*(z - 2)^3 - 1/8*a*(z - 2)^2 + 1/2*a*(z - 2) + a*log(2)\n', '\n', '        ::\n', '\n', '            sage: taylor(sqrt (sin(x) + a*x + 1), x, 0, 3)\n', '            1/48*(3*a^3 + 9*a^2 + 9*a - 1)*x^3 - 1/8*(a^2 + 2*a + 1)*x^2 + 1/2*(a + 1)*x + 1\n', '\n', '        ::\n', '\n', '            sage: taylor (sqrt (x + 1), x, 0, 5)\n', '            7/256*x^5 - 5/128*x^4 + 1/16*x^3 - 1/8*x^2 + 1/2*x + 1\n', '\n', '        ::\n', '\n', '            sage: taylor (1/log (x + 1), x, 0, 3)\n', '            -19/720*x^3 + 1/24*x^2 - 1/12*x + 1/x + 1/2\n', '\n', '        ::\n', '\n', '            sage: taylor (cos(x) - sec(x), x, 0, 5)\n', '            -1/6*x^4 - x^2\n', '\n', '        ::\n', '\n', '            sage: taylor ((cos(x) - sec(x))^3, x, 0, 9)\n', '            -1/2*x^8 - x^6\n', '\n', '        ::\n', '\n', '            sage: taylor (1/(cos(x) - sec(x))^3, x, 0, 5)\n', '            -15377/7983360*x^4 - 6767/604800*x^2 + 11/120/x^2 + 1/2/x^4 - 1/x^6 - 347/15120\n', '\n', '        TESTS:\n', '\n', '        Check that ticket :trac:`7472` is fixed (Taylor polynomial in\n', '        more variables)::\n', '\n', "            sage: x,y=var('x y'); taylor(x*y^3,(x,1),(y,1),4)\n", '            (x - 1)*(y - 1)^3 + 3*(x - 1)*(y - 1)^2 + (y - 1)^3 + 3*(x - 1)*(y - 1) + 3*(y - 1)^2 + x + 3*y - 3\n', '            sage: expand(_)\n', '            x*y^3\n', '\n', '        """\n', '        from sage.rings.integer import Integer\n', '        from sage.symbolic.ring import SR\n', '        A = args\n', '        try:\n', '            if isinstance(A[0],tuple):\n', '                B=[]\n', '                B.append([SR(A[i][0]) for i in range(len(A)-1)])\n', '                B.append([A[i][1] for i in range(len(A)-1)])\n', '            else:\n', '                B=[A[0],SR(A[1])]\n', '            B.append(Integer(A[len(A)-1]))\n', '        except Exception:\n', '            raise NotImplementedError("Wrong arguments passed to taylor. See taylor? for more details.")\n', '        l = self._maxima_().taylor(B)\n', '        return self.parent()(l)\n', '\n', '\n', '\n', '    def truncate(self):\n', '        """\n', '        Given a power series or expression, return the corresponding\n', '        expression without the big oh.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` -- a series as output by the :meth:`series` command.\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = sin(x)/x^2\n', '            sage: f.truncate()\n', '            sin(x)/x^2\n', '            sage: f.series(x,7)\n', '            1*x^(-1) + (-1/6)*x + 1/120*x^3 + (-1/5040)*x^5 + Order(x^7)\n', '            sage: f.series(x,7).truncate()\n', '            -1/5040*x^5 + 1/120*x^3 - 1/6*x + 1/x\n', '            sage: f.series(x==1,3).truncate().expand()\n', '            -2*x^2*cos(1) + 5/2*x^2*sin(1) + 5*x*cos(1) - 7*x*sin(1) - 3*cos(1) + 11/2*sin(1)\n', '        """\n', '        return self\n', '\n', '    def expand(Expression self, side=None):\n', '        """\n', '        Expand this symbolic expression. Products of sums and exponentiated\n', '        sums are multiplied out, numerators of rational expressions which\n', '        are sums are split into their respective terms, and multiplications\n', '        are distributed over addition at all levels.\n', '\n', '        EXAMPLES:\n', '\n', '        We expand the expression `(x-y)^5` using both\n', '        method and functional notation.\n', '\n', '        ::\n', '\n', "            sage: x,y = var('x,y')\n", '            sage: a = (x-y)^5\n', '            sage: a.expand()\n', '            x^5 - 5*x^4*y + 10*x^3*y^2 - 10*x^2*y^3 + 5*x*y^4 - y^5\n', '            sage: expand(a)\n', '            x^5 - 5*x^4*y + 10*x^3*y^2 - 10*x^2*y^3 + 5*x*y^4 - y^5\n', '\n', '        We expand some other expressions::\n', '\n', '            sage: expand((x-1)^3/(y-1))\n', '            x^3/(y - 1) - 3*x^2/(y - 1) + 3*x/(y - 1) - 1/(y - 1)\n', '            sage: expand((x+sin((x+y)^2))^2)\n', '            x^2 + 2*x*sin(x^2 + 2*x*y + y^2) + sin(x^2 + 2*x*y + y^2)^2\n', '\n', '        Observe that :meth:`expand` also expands function arguments::\n', '\n', "            sage: f(x) = function('f')(x)\n", '            sage: fx = f(x*(x+1)); fx\n', '            f((x + 1)*x)\n', '            sage: fx.expand()\n', '            f(x^2 + x)\n', '\n', '        We can expand individual sides of a relation::\n', '\n', '            sage: a = (16*x-13)^2 == (3*x+5)^2/2\n', '            sage: a.expand()\n', '            256*x^2 - 416*x + 169 == 9/2*x^2 + 15*x + 25/2\n', "            sage: a.expand('left')\n", '            256*x^2 - 416*x + 169 == 1/2*(3*x + 5)^2\n', "            sage: a.expand('right')\n", '            (16*x - 13)^2 == 9/2*x^2 + 15*x + 25/2\n', '\n', '        TESTS::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: ((x + (2/3)*y)^3).expand()\n', '            x^3 + 2*x^2*y + 4/3*x*y^2 + 8/27*y^3\n', '            sage: expand( (x*sin(x) - cos(y)/x)^2 )\n', '            x^2*sin(x)^2 - 2*cos(y)*sin(x) + cos(y)^2/x^2\n', '            sage: f = (x-y)*(x+y); f\n', '            (x + y)*(x - y)\n', '            sage: f.expand()\n', '            x^2 - y^2\n', '\n', "            sage: a,b,c = var('a,b,c')\n", "            sage: x,y = var('x,y', domain='real')\n", "            sage: p,q = var('p,q', domain='positive')\n", '            sage: (c/2*(5*(3*a*b*x*y*p*q)^2)^(7/2*c)).expand()\n', '            1/2*45^(7/2*c)*(a^2*b^2*x^2*y^2)^(7/2*c)*c*p^(7*c)*q^(7*c)\n', '            sage: ((-(-a*x*p)^3*(b*y*p)^3)^(c/2)).expand()\n', '            (a^3*b^3*x^3*y^3)^(1/2*c)*p^(3*c)\n', "            sage: x,y,p,q = var('x,y,p,q', domain='complex')\n", '\n', '        Check that :trac:`18568` is fixed::\n', '\n', '            sage: ((x+sqrt(2)*x)^2).expand()\n', '            2*sqrt(2)*x^2 + 3*x^2\n', '\n', '        Check that :trac:`21360` is fixed::\n', '\n', '            sage: ((x^(x/2) + 1)^2).expand()\n', '            2*x^(1/2*x) + x^x + 1\n', '            sage: ((x^(1/2*x))^2).expand()\n', '            x^x\n', '            sage: ((x^(2*x))^2).expand()\n', '            x^(4*x)\n', '\n', '        Check that exactness is preserved::\n', '\n', '            sage: ((x+1.001)^2).expand()\n', '            x^2 + 2.00200000000000*x + 1.00200100000000\n', '            sage: ((x+1.001)^3).expand()\n', '            x^3 + 3.00300000000000*x^2 + 3.00600300000000*x + 1.00300300100000\n', '\n', '        Check that :trac:`21302` is fixed::\n', '\n', '            sage: ((x+1)^-2).expand()\n', '            1/(x^2 + 2*x + 1)\n', '            sage: (((x-1)/(x+1))^2).expand()\n', '            x^2/(x^2 + 2*x + 1) - 2*x/(x^2 + 2*x + 1) + 1/(x^2 + 2*x + 1)\n', '        """\n', '        if side is not None:\n', '            if not is_a_relational(self._gobj):\n', '                raise ValueError("expansion on sides only makes sense for relations")\n', "            if side == 'left':\n", '                return self.operator()(self.lhs().expand(), self.rhs())\n', "            elif side == 'right':\n", '                return self.operator()(self.lhs(), self.rhs().expand())\n', '            else:\n', '                raise ValueError("side must be \'left\', \'right\', or None")\n', '\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = self._gobj.expand(0)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    expand_rational = rational_expand = expand\n', '\n', '    def expand_trig(self, full=False, half_angles=False, plus=True, times=True):\n', '        """\n', '        Expand trigonometric and hyperbolic functions of sums of angles\n', '        and of multiple angles occurring in self. For best results, self\n', '        should already be expanded.\n', '\n', '        INPUT:\n', '\n', '        -  ``full`` - (default: False) To enhance user control\n', '           of simplification, this function expands only one level at a time\n', '           by default, expanding sums of angles or multiple angles. To obtain\n', '           full expansion into sines and cosines immediately, set the optional\n', '           parameter full to True.\n', '\n', '        -  ``half_angles`` - (default: False) If True, causes\n', '           half-angles to be simplified away.\n', '\n', '        -  ``plus`` - (default: True) Controls the sum rule;\n', "           expansion of sums (e.g. 'sin(x + y)') will take place only if plus\n", '           is True.\n', '\n', '        -  ``times`` - (default: True) Controls the product\n', '           rule, expansion of products (e.g. sin(2\\*x)) will take place only\n', '           if times is True.\n', '\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: sin(5*x).expand_trig()\n', '            5*cos(x)^4*sin(x) - 10*cos(x)^2*sin(x)^3 + sin(x)^5\n', "            sage: cos(2*x + var('y')).expand_trig()\n", '            cos(2*x)*cos(y) - sin(2*x)*sin(y)\n', '\n', '        We illustrate various options to this function::\n', '\n', '            sage: f = sin(sin(3*cos(2*x))*x)\n', '            sage: f.expand_trig()\n', '            sin((3*cos(cos(2*x))^2*sin(cos(2*x)) - sin(cos(2*x))^3)*x)\n', '            sage: f.expand_trig(full=True)\n', '            sin((3*(cos(cos(x)^2)*cos(sin(x)^2) + sin(cos(x)^2)*sin(sin(x)^2))^2*(cos(sin(x)^2)*sin(cos(x)^2) - cos(cos(x)^2)*sin(sin(x)^2)) - (cos(sin(x)^2)*sin(cos(x)^2) - cos(cos(x)^2)*sin(sin(x)^2))^3)*x)\n', '            sage: sin(2*x).expand_trig(times=False)\n', '            sin(2*x)\n', '            sage: sin(2*x).expand_trig(times=True)\n', '            2*cos(x)*sin(x)\n', '            sage: sin(2 + x).expand_trig(plus=False)\n', '            sin(x + 2)\n', '            sage: sin(2 + x).expand_trig(plus=True)\n', '            cos(x)*sin(2) + cos(2)*sin(x)\n', '            sage: sin(x/2).expand_trig(half_angles=False)\n', '            sin(1/2*x)\n', '            sage: sin(x/2).expand_trig(half_angles=True)\n', '            (-1)^floor(1/2*x/pi)*sqrt(-1/2*cos(x) + 1/2)\n', '\n', '        If the expression contains terms which are factored, we expand first::\n', '\n', "            sage: (x, k1, k2) = var('x, k1, k2')\n", '            sage: cos((k1-k2)*x).expand().expand_trig()\n', '            cos(k1*x)*cos(k2*x) + sin(k1*x)*sin(k2*x)\n', '\n', '        ALIASES:\n', '\n', '        :meth:`trig_expand` and :meth:`expand_trig` are the same\n', '        """\n', '        from sage.calculus.calculus import maxima_options\n', '        M = self._maxima_()\n', '        P = M.parent()\n', '        opt = maxima_options(trigexpand=full, halfangles=half_angles,\n', '                             trigexpandplus=plus, trigexpandtimes=times)\n', "        cmd = 'trigexpand(%s), %s'%(M.name(), opt)\n", '        ans = P(cmd)\n', '        return self.parent()(ans)\n', '\n', '    trig_expand = expand_trig\n', '\n', '    def reduce_trig(self, var=None):\n', '        r"""\n', '        Combine products and powers of trigonometric and hyperbolic\n', "        sin's and cos's of x into those of multiples of x. It also\n", '        tries to eliminate these functions when they occur in\n', '        denominators.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - a symbolic expression\n', '\n', '        - ``var`` - (default: None) the variable which is used for\n', '          these transformations. If not specified, all variables are\n', '          used.\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: y=var('y')\n", '            sage: f=sin(x)*cos(x)^3+sin(y)^2\n', '            sage: f.reduce_trig()\n', '            -1/2*cos(2*y) + 1/8*sin(4*x) + 1/4*sin(2*x) + 1/2\n', '\n', '        To reduce only the expressions involving x we use optional parameter::\n', '\n', '            sage: f.reduce_trig(x)\n', '            sin(y)^2 + 1/8*sin(4*x) + 1/4*sin(2*x)\n', '\n', '        ALIASES: :meth:`trig_reduce` and :meth:`reduce_trig` are the same\n', '        """\n', '        M = self._maxima_()\n', '        P = M.parent()\n', '        if var is None:\n', "            cmd = 'trigreduce(%s)'%(M.name())\n", '        else:\n', "            cmd = 'trigreduce(%s,%s)'%(M.name(),'_SAGE_VAR_'+str(var))\n", '        ans = P(cmd)\n', '        return self.parent()(ans)\n', '\n', '    trig_reduce = reduce_trig\n', '\n', '    ############################################################################\n', '    # Pattern Matching\n', '    ############################################################################\n', '    def match(self, pattern):\n', '        """\n', '        Check if self matches the given pattern.\n', '\n', '        INPUT:\n', '\n', '        -  ``pattern`` -- a symbolic expression, possibly containing wildcards\n', '           to match for\n', '\n', '        OUTPUT:\n', '\n', '        One of\n', '\n', '        ``None`` if there is no match, or a dictionary mapping the\n', '        wildcards to the matching values if a match was found. Note\n', '        that the dictionary is empty if there were no wildcards in the\n', '        given pattern.\n', '\n', '        See also http://www.ginac.de/tutorial/Pattern-matching-and-advanced-substitutions.html\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z,a,b,c,d,f,g')\n", '            (x, y, z, a, b, c, d, f, g)\n', '            sage: w0 = SR.wild(0); w1 = SR.wild(1); w2 = SR.wild(2)\n', '            sage: ((x+y)^a).match((x+y)^a)  # no wildcards, so empty dict\n', '            {}\n', '            sage: print(((x+y)^a).match((x+y)^b))\n', '            None\n', '            sage: t = ((x+y)^a).match(w0^w1)\n', '            sage: t[w0], t[w1]\n', '            (x + y, a)\n', '            sage: print(((x+y)^a).match(w0^w0))\n', '            None\n', '            sage: ((x+y)^(x+y)).match(w0^w0)\n', '            {$0: x + y}\n', '            sage: t = ((a+b)*(a+c)).match((a+w0)*(a+w1))\n', '            sage: set([t[w0], t[w1]]) == set([b, c])\n', '            True\n', '            sage: ((a+b)*(a+c)).match((w0+b)*(w0+c))\n', '            {$0: a}\n', '            sage: t = ((a+b)*(a+c)).match((w0+w1)*(w0+w2))\n', '            sage: t[w0]\n', '            a\n', '            sage: set([t[w1], t[w2]]) == set([b, c])\n', '            True\n', '            sage: t = ((a+b)*(a+c)).match((w0+w1)*(w1+w2))\n', '            sage: t[w1]\n', '            a\n', '            sage: set([t[w0], t[w2]]) == set([b, c])\n', '            True\n', '            sage: t = (a*(x+y)+a*z+b).match(a*w0+w1)\n', '            sage: s = set([t[w0], t[w1]])\n', '            sage: s == set([x+y, a*z+b]) or s == set([z, a*(x+y)+b])\n', '            True\n', '            sage: print((a+b+c+d+f+g).match(c))\n', '            None\n', '            sage: (a+b+c+d+f+g).has(c)\n', '            True\n', '            sage: (a+b+c+d+f+g).match(c+w0)\n', '            {$0: a + b + d + f + g}\n', '            sage: (a+b+c+d+f+g).match(c+g+w0)\n', '            {$0: a + b + d + f}\n', '            sage: (a+b).match(a+b+w0) # known bug\n', '            {$0: 0}\n', '            sage: print((a*b^2).match(a^w0*b^w1))\n', '            None\n', '            sage: (a*b^2).match(a*b^w1)\n', '            {$1: 2}\n', '            sage: (x*x.arctan2(x^2)).match(w0*w0.arctan2(w0^2))\n', '            {$0: x}\n', '\n', '        Beware that behind-the-scenes simplification can lead to\n', '        surprising results in matching::\n', '\n', '            sage: print((x+x).match(w0+w1))\n', '            None\n', '            sage: t = x+x; t\n', '            2*x\n', '            sage: t.operator()\n', '            <function mul_vararg ...>\n', '\n', '        Since asking to match w0+w1 looks for an addition operator,\n', '        there is no match.\n', '        """\n', '        cdef Expression p = self.coerce_in(pattern)\n', '        cdef GExList mlst\n', '        cdef bint res\n', '        sig_on()\n', '        try:\n', '            res = self._gobj.match(p._gobj, mlst)\n', '        finally:\n', '            sig_off()\n', '        if not res:\n', '            return None\n', '\n', '        cdef dict rdict = {}\n', '        cdef GExListIter itr = mlst.begin()\n', '        cdef GExListIter lstend = mlst.end()\n', '        while itr != lstend:\n', '            key = new_Expression_from_GEx(self._parent, itr.obj().lhs())\n', '            val = new_Expression_from_GEx(self._parent, itr.obj().rhs())\n', '            rdict[key] = val\n', '            itr.inc()\n', '        return rdict\n', '\n', '\n', '    def find(self, pattern):\n', '        """\n', '        Find all occurrences of the given pattern in this expression.\n', '\n', '        Note that once a subexpression matches the pattern, the search does\n', '        not extend to subexpressions of it.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z,a,b')\n", '            (x, y, z, a, b)\n', '            sage: w0 = SR.wild(0); w1 = SR.wild(1)\n', '\n', '            sage: (sin(x)*sin(y)).find(sin(w0))\n', '            [sin(y), sin(x)]\n', '\n', '            sage: ((sin(x)+sin(y))*(a+b)).expand().find(sin(w0))\n', '            [sin(y), sin(x)]\n', '\n', '            sage: (1+x+x^2+x^3).find(x)\n', '            [x]\n', '            sage: (1+x+x^2+x^3).find(x^w0)\n', '            [x^2, x^3]\n', '\n', '            sage: (1+x+x^2+x^3).find(y)\n', '            []\n', '\n', '            # subexpressions of a match are not listed\n', '            sage: ((x^y)^z).find(w0^w1)\n', '            [(x^y)^z]\n', '        """\n', '        from sage.symbolic.comparison import print_sorted\n', '        cdef Expression p = self.coerce_in(pattern)\n', '        cdef GExList found\n', '        sig_on()\n', '        try:\n', '            self._gobj.find(p._gobj, found)\n', '        finally:\n', '            sig_off()\n', '        res = []\n', '        cdef GExListIter itr = found.begin()\n', '        while itr != found.end():\n', '            res.append(new_Expression_from_GEx(self._parent, itr.obj()))\n', '            itr.inc()\n', '        res = print_sorted(res)\n', '        return res\n', '\n', '    def has(self, pattern):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,a'); w0 = SR.wild(); w1 = SR.wild()\n", '            (x, y, a)\n', '            sage: (x*sin(x + y + 2*a)).has(y)\n', '            True\n', '\n', '        Here "x+y" is not a subexpression of "x+y+2*a" (which has the\n', '        subexpressions "x", "y" and "2*a")::\n', '\n', '            sage: (x*sin(x + y + 2*a)).has(x+y)\n', '            False\n', '            sage: (x*sin(x + y + 2*a)).has(x + y + w0)\n', '            True\n', '\n', '        The following fails because "2*(x+y)" automatically gets converted to\n', '        "2*x+2*y" of which "x+y" is not a subexpression::\n', '\n', '            sage: (x*sin(2*(x+y) + 2*a)).has(x+y)\n', '            False\n', '\n', '        Although x^1==x and x^0==1, neither "x" nor "1" are actually of the\n', '        form "x^something"::\n', '\n', '            sage: (x+1).has(x^w0)\n', '            False\n', '\n', '        Here is another possible pitfall, where the first expression\n', '        matches because the term "-x" has the form "(-1)*x" in GiNaC. To check\n', '        whether a polynomial contains a linear term you should use the\n', '        coeff() function instead.\n', '\n', '        ::\n', '\n', '            sage: (4*x^2 - x + 3).has(w0*x)\n', '            True\n', '            sage: (4*x^2 + x + 3).has(w0*x)\n', '            False\n', '            sage: (4*x^2 + x + 3).has(x)\n', '            True\n', '            sage: (4*x^2 - x + 3).coefficient(x,1)\n', '            -1\n', '            sage: (4*x^2 + x + 3).coefficient(x,1)\n', '            1\n', '        """\n', '        cdef Expression p = self.coerce_in(pattern)\n', '        return self._gobj.has(p._gobj)\n', '\n', '    def substitute(self, *args, **kwds):\n', '        """\n', '        Substitute the given subexpressions in this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z,a,b,c,d,f,g')\n", '            (x, y, z, a, b, c, d, f, g)\n', '            sage: w0 = SR.wild(0); w1 = SR.wild(1)\n', '            sage: t = a^2 + b^2 + (x+y)^3\n', '\n', '        Substitute with keyword arguments (works only with symbols)::\n', '\n', '            sage: t.subs(a=c)\n', '            (x + y)^3 + b^2 + c^2\n', '            sage: t.subs(b=19, x=z)\n', '            (y + z)^3 + a^2 + 361\n', '\n', '        Substitute with a dictionary argument::\n', '\n', '            sage: t.subs({a^2: c})\n', '            (x + y)^3 + b^2 + c\n', '\n', '            sage: t.subs({w0^2: w0^3})\n', '            a^3 + b^3 + (x + y)^3\n', '\n', '        Substitute with one or more relational expressions::\n', '\n', '            sage: t.subs(w0^2 == w0^3)\n', '            a^3 + b^3 + (x + y)^3\n', '\n', '            sage: t.subs(w0 == w0^2)\n', '            a^8 + b^8 + (x^2 + y^2)^6\n', '\n', '            sage: t.subs(a == b, b == c)\n', '            (x + y)^3 + b^2 + c^2\n', '\n', '        Any number of arguments is accepted::\n', '\n', '            sage: t.subs(a=b, b=c)\n', '            (x + y)^3 + b^2 + c^2\n', '\n', '            sage: t.subs({a:b}, b=c)\n', '            (x + y)^3 + b^2 + c^2\n', '\n', '            sage: t.subs([x == 3, y == 2], a == 2, {b:3})\n', '            138\n', '\n', '        It can even accept lists of lists::\n', '\n', '            sage: eqn1 = (a*x + b*y == 0)\n', '            sage: eqn2 = (1 + y == 0)\n', '            sage: soln = solve([eqn1, eqn2], [x, y])\n', '            sage: soln\n', '            [[x == b/a, y == -1]]\n', '            sage: f = x + y\n', '            sage: f.subs(soln)\n', '            b/a - 1\n', '\n', '        Duplicate assignments will throw an error::\n', '\n', '            sage: t.subs({a:b}, a=c)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: duplicate substitution for a, got values b and c\n', '\n', '            sage: t.subs([x == 1], a = 1, b = 2, x = 2)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: duplicate substitution for x, got values 1 and 2\n', '\n', '        All substitutions are performed at the same time::\n', '\n', '             sage: t.subs({a:b, b:c})\n', '             (x + y)^3 + b^2 + c^2\n', '\n', '        Substitutions are done term by term, in other words Sage is not\n', '        able to identify partial sums in a substitution (see :trac:`18396`)::\n', '\n', '            sage: f = x + x^2 + x^4\n', '            sage: f.subs(x = y)\n', '            y^4 + y^2 + y\n', '            sage: f.subs(x^2 == y)             # one term is fine\n', '            x^4 + x + y\n', '            sage: f.subs(x + x^2 == y)         # partial sum does not work\n', '            x^4 + x^2 + x\n', '            sage: f.subs(x + x^2 + x^4 == y)   # whole sum is fine\n', '            y\n', '\n', '        Note that it is the very same behavior as in Maxima::\n', '\n', "            sage: E = 'x^4 + x^2 + x'\n", "            sage: subs = [('x','y'), ('x^2','y'), ('x^2+x','y'), ('x^4+x^2+x','y')]\n", '\n', "            sage: cmd = '{}, {}={}'\n", '            sage: for s1,s2 in subs:\n', '            ....:     maxima.eval(cmd.format(E, s1, s2))\n', "            'y^4+y^2+y'\n", "            'y+x^4+x'\n", "            'x^4+x^2+x'\n", "            'y'\n", '\n', '        Or as in Maple::\n', '\n', "            sage: cmd = 'subs({}={}, {})'              # optional - maple\n", '            sage: for s1,s2 in subs:                   # optional - maple\n', '            ....:     maple.eval(cmd.format(s1,s2, E)) # optional - maple\n', "            'y^4+y^2+y'\n", "            'x^4+x+y'\n", "            'x^4+x^2+x'\n", "            'y'\n", '\n', '        But Mathematica does something different on the third example::\n', '\n', "            sage: cmd = '{} /. {} -> {}'                    # optional - mathematica\n", '            sage: for s1,s2 in subs:                        # optional - mathematica\n', '            ....:     mathematica.eval(cmd.format(E,s1,s2)) # optional - mathematica\n', '                 2    4\n', '            y + y  + y\n', '                 4\n', '            x + x  + y\n', '             4\n', '            x  + y\n', '            y\n', '\n', '        The same, with formatting more suitable for cut and paste::\n', '\n', '            sage: for s1,s2 in subs:                        # optional - mathematica\n', '            ....:     mathematica(cmd.format(E,s1,s2))      # optional - mathematica\n', '            y + y^2 + y^4\n', '            x + x^4 + y\n', '            x^4 + y\n', '            y\n', '\n', '        TESTS:\n', '\n', '        No arguments return the same expression::\n', '\n', '            sage: t = a^2 + b^2 + (x+y)^3\n', '            sage: t.subs()\n', '            (x + y)^3 + a^2 + b^2\n', '\n', '        Similarly for a empty dictionary, empty tuples and empty lists::\n', '\n', '            sage: t.subs({}, (), [], ())\n', '            (x + y)^3 + a^2 + b^2\n', '\n', '        Invalid argument returns error::\n', '\n', '            sage: t.subs(5)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: not able to determine a substitution from 5\n', '\n', '        Substitutions with infinity::\n', '\n', '            sage: (x/y).subs(y=oo)\n', '            0\n', '            sage: (x/y).subs(x=oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: infinity * f(x) encountered.\n', '            sage: (x*y).subs(x=oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: indeterminate expression: infinity * f(x) encountered.\n', '            sage: (x^y).subs(x=oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: power::eval(): pow(Infinity, f(x)) is not defined.\n', '            sage: (x^y).subs(y=oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: power::eval(): pow(f(x), infinity) is not defined.\n', '            sage: (x+y).subs(x=oo)\n', '            +Infinity\n', '            sage: (x-y).subs(y=oo)\n', '            -Infinity\n', '            sage: gamma(x).subs(x=-1)\n', '            Infinity\n', '            sage: 1/gamma(x).subs(x=-1)\n', '            0\n', '\n', '        Verify that this operation does not modify the passed\n', '        dictionary (:trac:`6622`)::\n', '\n', "            sage: var('v t')\n", '            (v, t)\n', '            sage: f = v*t\n', '            sage: D = {v: 2}\n', '            sage: f(D, t=3)\n', '            6\n', '            sage: D\n', '            {v: 2}\n', '\n', '        Check if :trac:`9891` is fixed::\n', '\n', '            sage: exp(x).subs(x=log(x))\n', '            x\n', '\n', '        Check if :trac:`13587` is fixed::\n', '\n', '            sage: t = tan(x)^2 - tan(x)\n', '            sage: t.subs(x=pi/2)\n', '            Infinity\n', '            sage: u = gamma(x) - gamma(x-1)\n', '            sage: u.subs(x=-1)\n', '            Infinity\n', '\n', '        More checks for ``subs``::\n', '\n', "            sage: var('x,y,z'); f = x^3 + y^2 + z\n", '            (x, y, z)\n', '            sage: f.subs(x^3 == y^2, z == 1)\n', '            2*y^2 + 1\n', '            sage: f.subs({x^3:y^2, z:1})\n', '            2*y^2 + 1\n', '            sage: f = x^2 + x^4\n', '            sage: f.subs(x^2 == x)\n', '            x^4 + x\n', '            sage: f = cos(x^2) + sin(x^2)\n', '            sage: f.subs(x^2 == x)\n', '            cos(x) + sin(x)\n', '            sage: f(x,y,t) = cos(x) + sin(y) + x^2 + y^2 + t\n', '            sage: f.subs(y^2 == t)\n', '            (x, y, t) |--> x^2 + 2*t + cos(x) + sin(y)\n', '            sage: f.subs(x^2 + y^2 == t)\n', '            (x, y, t) |--> x^2 + y^2 + t + cos(x) + sin(y)\n', '\n', '        Check that inverses in sums are recognized::\n', '\n', '            sage: (1 + 1/x).subs({x: 1/x})\n', '            x + 1\n', '            sage: (x + 1/x^2).subs({x: 1/x})\n', '            x^2 + 1/x\n', '            sage: (sqrt(x) + 1/sqrt(x)).subs({x: 1/x})\n', '            sqrt(x) + 1/sqrt(x)\n', '        """\n', '        cdef dict sdict = {}\n', '        cdef GEx res\n', '\n', '        if args and args[0] is None:\n', '            # this is needed because sometimes this function get called as\n', '            # expr.substitute(None, **kwds). This is because its signature used\n', '            # to be (in_dict=None, **kwds) instead of (*args, **kwds)\n', '            # (see ticket #12834)\n', '            args = args[1:]\n', '\n', '        for a in args:\n', '            _dict_update_check_duplicate(sdict, _subs_make_dict(a))\n', '\n', '        if kwds:\n', '            # Ensure that the keys are symbolic variables.\n', '            varkwds = {self._parent.var(k): v for k,v in kwds.iteritems()}\n', '            # Check for duplicate\n', '            _dict_update_check_duplicate(sdict, varkwds)\n', '\n', '        cdef GExMap smap\n', '        for k, v in sdict.iteritems():\n', '            smap.insert(make_pair((<Expression>self.coerce_in(k))._gobj,\n', '                                  (<Expression>self.coerce_in(v))._gobj))\n', '        res = self._gobj.subs_map(smap, 0)\n', '        return new_Expression_from_GEx(self._parent, res)\n', '\n', '    subs = substitute\n', '\n', '    cpdef Expression _subs_expr(self, expr):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z,a,b,c,d,f')\n", '            (x, y, z, a, b, c, d, f)\n', '            sage: w0 = SR.wild(0); w1 = SR.wild(1)\n', '            sage: (a^2 + b^2 + (x+y)^2)._subs_expr(w0^2 == w0^3)\n', '            a^3 + b^3 + (x + y)^3\n', '            sage: (a^4 + b^4 + (x+y)^4)._subs_expr(w0^2 == w0^3)\n', '            a^4 + b^4 + (x + y)^4\n', '            sage: (a^2 + b^4 + (x+y)^4)._subs_expr(w0^2 == w0^3)\n', '            b^4 + (x + y)^4 + a^3\n', '            sage: ((a+b+c)^2)._subs_expr(a+b == x)\n', '            (a + b + c)^2\n', '            sage: ((a+b+c)^2)._subs_expr(a+b+w0 == x+w0)\n', '            (c + x)^2\n', '            sage: (a+2*b)._subs_expr(a+b == x)\n', '            a + 2*b\n', '            sage: (a+2*b)._subs_expr(a+b+w0 == x+w0)\n', '            a + 2*b\n', '            sage: (a+2*b)._subs_expr(a+w0*b == x)\n', '            x\n', '            sage: (a+2*b)._subs_expr(a+b+w0*b == x+w0*b)\n', '            a + 2*b\n', '            sage: (4*x^3-2*x^2+5*x-1)._subs_expr(x==a)\n', '            4*a^3 - 2*a^2 + 5*a - 1\n', '            sage: (4*x^3-2*x^2+5*x-1)._subs_expr(x^w0==a^w0)\n', '            4*a^3 - 2*a^2 + 5*x - 1\n', '            sage: (4*x^3-2*x^2+5*x-1)._subs_expr(x^w0==a^(2*w0))._subs_expr(x==a)\n', '            4*a^6 - 2*a^4 + 5*a - 1\n', '            sage: sin(1+sin(x))._subs_expr(sin(w0)==cos(w0))\n', '            cos(cos(x) + 1)\n', '            sage: (sin(x)^2 + cos(x)^2)._subs_expr(sin(w0)^2+cos(w0)^2==1)\n', '            1\n', '            sage: (1 + sin(x)^2 + cos(x)^2)._subs_expr(sin(w0)^2+cos(w0)^2==1)\n', '            cos(x)^2 + sin(x)^2 + 1\n', '            sage: (17*x + sin(x)^2 + cos(x)^2)._subs_expr(w1 + sin(w0)^2+cos(w0)^2 == w1 + 1)\n', '            17*x + 1\n', '            sage: ((x-1)*(sin(x)^2 + cos(x)^2)^2)._subs_expr(sin(w0)^2+cos(w0)^2 == 1)\n', '            x - 1\n', '            """\n', '        cdef Expression p = self.coerce_in(expr)\n', '        cdef GEx res\n', '        sig_on()\n', '        try:\n', '            res = self._gobj.subs(p._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, res)\n', '\n', '    def substitute_function(self, original, new):\n', '        """\n', '        Return this symbolic expressions all occurrences of the\n', '        function *original* replaced with the function *new*.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y = var('x,y')\n", "            sage: foo = function('foo'); bar = function('bar')\n", '            sage: f = foo(x) + 1/foo(pi*y)\n', '            sage: f.substitute_function(foo, bar)\n', '            1/bar(pi*y) + bar(x)\n', '\n', '        TESTS:\n', '\n', '        Make sure :trac:`17849` is fixed::\n', '\n', '            sage: ex = sin(x) + atan2(0,0,hold=True)\n', '            sage: ex.substitute_function(sin,cos)\n', '            arctan2(0, 0) + cos(x)\n', '            sage: ex = sin(x) + hypergeometric([1, 1], [2], -1)\n', '            sage: ex.substitute_function(sin,cos)\n', '            cos(x) + hypergeometric((1, 1), (2,), -1)\n', '        """\n', '        from sage.symbolic.expression_conversions import SubstituteFunction\n', '        return SubstituteFunction(self, original, new)()\n', '\n', '    def substitution_delayed(self, pattern, replacement):\n', '        """\n', '        Replace all occurrences of pattern by the result of replacement.\n', '\n', '        In contrast to :meth:`subs`, the pattern may contains wildcards\n', '        and the replacement can depend on the particular term matched by the\n', '        pattern.\n', '\n', '        INPUT:\n', '\n', '        - ``pattern`` -- an :class:`Expression`, usually\n', '          containing wildcards.\n', '\n', '        - ``replacement`` -- a function. Its argument is a dictionary\n', '          mapping the wildcard occurring in ``pattern`` to the actual\n', '          values.  If it returns ``None``, this occurrence of ``pattern`` is\n', '          not replaced. Otherwise, it is replaced by the output of\n', '          ``replacement``.\n', '\n', '        OUTPUT:\n', '\n', '        An :class:`Expression`.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x y')\n", '            (x, y)\n', '            sage: w0 = SR.wild(0)\n', '            sage: sqrt(1 + 2*x + x^2).substitution_delayed(\n', '            ....:     sqrt(w0), lambda d: sqrt(factor(d[w0]))\n', '            ....: )\n', '            sqrt((x + 1)^2)\n', '            sage: def r(d):\n', '            ....:    if x not in d[w0].variables():\n', '            ....:        return cos(d[w0])\n', '            sage: (sin(x^2 + x) + sin(y^2 + y)).substitution_delayed(sin(w0), r)\n', '            cos(y^2 + y) + sin(x^2 + x)\n', '\n', '        .. SEEALSO::\n', '\n', '            :meth:`match`\n', '        """\n', '        result = self\n', '        for matched in self.find(pattern):\n', '            r = replacement(matched.match(pattern))\n', '            if r is not None:\n', '                result = result.subs({matched: r})\n', '        return result\n', '\n', '    def __call__(self, *args, **kwds):\n', '        """\n', '        Call the :meth:`subs` on this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z')\n", '            (x, y, z)\n', '            sage: (x+y)(x=z^2, y=x^y)\n', '            z^2 + x^y\n', '        """\n', '        return self._parent._call_element_(self, *args, **kwds)\n', '\n', '    def variables(self):\n', '        """\n', '        Return sorted tuple of variables that occur in this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: (x,y,z) = var('x,y,z')\n", '            sage: (x+y).variables()\n', '            (x, y)\n', '            sage: (2*x).variables()\n', '            (x,)\n', '            sage: (x^y).variables()\n', '            (x, y)\n', '            sage: sin(x+y^z).variables()\n', '            (x, y, z)\n', '\n', '        """\n', '        from sage.symbolic.ring import SR\n', '        from sage.symbolic.comparison import print_sorted\n', '        cdef GExSet sym_set\n', '        g_list_symbols(self._gobj, sym_set)\n', '        res = []\n', '        cdef GExSetIter itr = sym_set.begin()\n', '        while itr != sym_set.end():\n', '            res.append(new_Expression_from_GEx(SR, itr.obj()))\n', '            itr.inc()\n', '        res = print_sorted(res)[::-1]\n', '        return tuple(res)\n', '\n', '    def free_variables(self):\n', '        """\n', '        Return sorted tuple of unbound variables that occur in this\n', '        expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: (x,y,z) = var('x,y,z')\n", '            sage: (x+y).free_variables()\n', '            (x, y)\n', '            sage: (2*x).free_variables()\n', '            (x,)\n', '            sage: (x^y).free_variables()\n', '            (x, y)\n', '            sage: sin(x+y^z).free_variables()\n', '            (x, y, z)\n', "            sage: _ = function('f')\n", '            sage: e = limit( f(x,y), x=0 ); e\n', '            limit(f(x, y), x, 0)\n', '            sage: e.free_variables()\n', '            (y,)\n', '        """\n', '        from sage.symbolic.ring import SR\n', '        from sage.symbolic.comparison import print_sorted\n', '        cdef GSymbolSet sym_set\n', '        sym_set = self._gobj.free_symbols()\n', '        res = []\n', '        cdef GSymbolSetIter itr = sym_set.begin()\n', '        while itr != sym_set.end():\n', '            res.append(new_Expression_from_GEx(SR, GEx(itr.obj())))\n', '            itr.inc()\n', '        res = print_sorted(res)[::-1]\n', '        return tuple(res)\n', '\n', '    def arguments(self):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: x,y = var('x,y')\n", '            sage: f = x + y\n', '            sage: f.arguments()\n', '            (x, y)\n', '\n', '            sage: g = f.function(x)\n', '            sage: g.arguments()\n', '            (x,)\n', '\n', '        """\n', '        try:\n', '            return self._parent.arguments()\n', '        except AttributeError:\n', '            return self.variables()\n', '\n', '    args = arguments\n', '\n', '    def number_of_arguments(self):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: x,y = var('x,y')\n", '            sage: f = x + y\n', '            sage: f.number_of_arguments()\n', '            2\n', '\n', '            sage: g = f.function(x)\n', '            sage: g.number_of_arguments()\n', '            1\n', '\n', '        ::\n', '\n', "            sage: x,y,z = var('x,y,z')\n", '            sage: (x+y).number_of_arguments()\n', '            2\n', '            sage: (x+1).number_of_arguments()\n', '            1\n', '            sage: (sin(x)+1).number_of_arguments()\n', '            1\n', '            sage: (sin(z)+x+y).number_of_arguments()\n', '            3\n', '            sage: (sin(x+y)).number_of_arguments()\n', '            2\n', '\n', '        ::\n', '\n', '            sage: ( 2^(8/9) - 2^(1/9) )(x-1)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: the number of arguments must be less than or equal to 0\n', '        """\n', '        return len(self.arguments())\n', '\n', '    def number_of_operands(self):\n', '        """\n', '        Return the number of arguments of this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('a,b,c,x,y')\n", '            (a, b, c, x, y)\n', '            sage: a.number_of_operands()\n', '            0\n', '            sage: (a^2 + b^2 + (x+y)^2).number_of_operands()\n', '            3\n', '            sage: (a^2).number_of_operands()\n', '            2\n', '            sage: (a*b^2*c).number_of_operands()\n', '            3\n', '        """\n', '        return self._gobj.nops()\n', '\n', '    nops = number_of_operands\n', '\n', '    def __len__(self):\n', '        """\n', '        Return the number of arguments of this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('a,b,c,x,y')\n", '            (a, b, c, x, y)\n', '            sage: len(a)\n', '            0\n', '            sage: len((a^2 + b^2 + (x+y)^2))\n', '            3\n', '            sage: len((a^2))\n', '            2\n', '            sage: len(a*b^2*c)\n', '            3\n', '        """\n', '        return self.number_of_operands()\n', '\n', '    def _unpack_operands(self):\n', '        """\n', '        Unpack the operands of this expression converting each to a Python\n', '        object if possible.\n', '\n', '        This corresponds to the conversion performed when arguments of a\n', '        function are unpacked as they are being passed to custom methods of\n', '        a symbolic function.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: t = SR._force_pyobject((1, 2, x, x+1, x+2))\n', '            sage: t._unpack_operands()\n', '            (1, 2, x, x + 1, x + 2)\n', '            sage: type(t._unpack_operands())\n', "            <... 'tuple'>\n", '            sage: list(map(type, t._unpack_operands()))\n', "            [<type 'sage.rings.integer.Integer'>, <type 'sage.rings.integer.Integer'>, <type 'sage.symbolic.expression.Expression'>, <type 'sage.symbolic.expression.Expression'>, <type 'sage.symbolic.expression.Expression'>]\n", '            sage: u = SR._force_pyobject((t, x^2))\n', '            sage: u._unpack_operands()\n', '            ((1, 2, x, x + 1, x + 2), x^2)\n', '            sage: type(u._unpack_operands()[0])\n', "            <... 'tuple'>\n", '        """\n', '        from sage.libs.pynac.pynac import unpack_operands\n', '        return unpack_operands(self)\n', '\n', '    def operands(self):\n', '        """\n', '        Return a list containing the operands of this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('a,b,c,x,y')\n", '            (a, b, c, x, y)\n', '            sage: (a^2 + b^2 + (x+y)^2).operands()\n', '            [a^2, b^2, (x + y)^2]\n', '            sage: (a^2).operands()\n', '            [a, 2]\n', '            sage: (a*b^2*c).operands()\n', '            [a, b^2, c]\n', '        """\n', '        from sage.symbolic.ring import SR\n', '        return [new_Expression_from_GEx(SR, self._gobj.op(i)) \\\n', '                            for i from 0 <= i < self._gobj.nops()]\n', '\n', '    def operator(self):\n', '        """\n', '        Return the topmost operator in this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y,z = var('x,y,z')\n", '            sage: (x+y).operator()\n', '            <function add_vararg ...>\n', '            sage: (x^y).operator()\n', '            <built-in function pow>\n', '            sage: (x^y * z).operator()\n', '            <function mul_vararg ...>\n', '            sage: (x < y).operator()\n', '            <built-in function lt>\n', '\n', '            sage: abs(x).operator()\n', '            abs\n', '            sage: r = gamma(x).operator(); type(r)\n', "            <class 'sage.functions.gamma.Function_gamma'>\n", '\n', "            sage: psi = function('psi', nargs=1)\n", '            sage: psi(x).operator()\n', '            psi\n', '\n', '            sage: r = psi(x).operator()\n', '            sage: r == psi\n', '            True\n', '\n', "            sage: f = function('f', nargs=1, conjugate_func=lambda self, x: 2*x)\n", '            sage: nf = f(x).operator()\n', '            sage: nf(x).conjugate()\n', '            2*x\n', '\n', "            sage: f = function('f')\n", '            sage: a = f(x).diff(x); a\n', '            diff(f(x), x)\n', '            sage: a.operator()\n', '            D[0](f)\n', '\n', '        TESTS::\n', '\n', '            sage: (x <= y).operator()\n', '            <built-in function le>\n', '            sage: (x == y).operator()\n', '            <built-in function eq>\n', '            sage: (x != y).operator()\n', '            <built-in function ne>\n', '            sage: (x > y).operator()\n', '            <built-in function gt>\n', '            sage: (x >= y).operator()\n', '            <built-in function ge>\n', '            sage: SR._force_pyobject( (x, x + 1, x + 2) ).operator()\n', "            <... 'tuple'>\n", '            sage: exp(x).series(x,3).operator()\n', '            <function add_vararg ...>\n', '        """\n', '        cdef operators o\n', '        cdef unsigned serial\n', '        if is_a_add(self._gobj):\n', '            return add_vararg\n', '        elif is_a_mul(self._gobj):\n', '            return mul_vararg\n', '        elif is_a_power(self._gobj):\n', '            return operator.pow\n', '        elif is_a_relational(self._gobj):\n', '            # find the operator and return it\n', '            o = relational_operator(self._gobj)\n', '            if o == equal:\n', '                return operator.eq\n', '            elif o == not_equal:\n', '                return operator.ne\n', '            elif o == less:\n', '                return operator.lt\n', '            elif o == less_or_equal:\n', '                return operator.le\n', '            elif o == greater:\n', '                return operator.gt\n', '            elif o == greater_or_equal:\n', '                return operator.ge\n', '            else:\n', '                raise RuntimeError("operator type not known, please report this as a bug")\n', '        elif is_a_function(self._gobj):\n', '            # get function id\n', '            serial = ex_to_function(self._gobj).get_serial()\n', '\n', '            # if operator is a special function defined by us\n', '            # find the python equivalent and return it\n', '            res = get_sfunction_from_serial(serial)\n', '            if res is None:\n', '                raise RuntimeError("cannot find SFunction in table")\n', '\n', '            if is_a_fderivative(self._gobj):\n', '                from sage.libs.pynac.pynac import paramset_from_Expression\n', '                parameter_set = paramset_from_Expression(self)\n', '                res = FDerivativeOperator(res, parameter_set)\n', '\n', '            return res\n', '        elif is_exactly_a_exprseq(self._gobj):\n', '            return tuple\n', '        elif is_a_series(self._gobj):\n', '            return add_vararg\n', '\n', '        # self._gobj is either a symbol, constant or numeric\n', '        return None\n', '\n', '    def __index__(self):\n', '        """\n', '        EXAMPLES::\n', '\n', '            sage: a = list(range(10))\n', '            sage: a[:SR(5)]\n', '            [0, 1, 2, 3, 4]\n', '        """\n', '        return int(self._integer_())\n', '\n', '    def iterator(self):\n', '        """\n', '        Return an iterator over the operands of this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y,z = var('x,y,z')\n", '            sage: list((x+y+z).iterator())\n', '            [x, y, z]\n', '            sage: list((x*y*z).iterator())\n', '            [x, y, z]\n', '            sage: list((x^y*z*(x+y)).iterator())\n', '            [x + y, x^y, z]\n', '\n', '        Note that symbols, constants and numeric objects do not have operands,\n', '        so the iterator function raises an error in these cases::\n', '\n', '            sage: x.iterator()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: expressions containing only a numeric coefficient, constant or symbol have no operands\n', '            sage: pi.iterator()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: expressions containing only a numeric coefficient, constant or symbol have no operands\n', '            sage: SR(5).iterator()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: expressions containing only a numeric coefficient, constant or symbol have no operands\n', '        """\n', '        if (is_a_symbol(self._gobj) or is_a_constant(self._gobj) or\n', '            is_a_numeric(self._gobj)):\n', '                raise ValueError("expressions containing only a numeric coefficient, constant or symbol have no operands")\n', '        return new_ExpIter_from_Expression(self)\n', '\n', '    @property\n', '    def op(self):\n', '        """\n', '        Provide access to the operands of an expression through a property.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: t = 1+x+x^2\n', '            sage: t.op\n', '            Operands of x^2 + x + 1\n', '            sage: x.op\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: expressions containing only a numeric coefficient, constant or symbol have no operands\n', '            sage: t.op[0]\n', '            x^2\n', '\n', '        Indexing directly with ``t[1]`` causes problems with numpy types.\n', '\n', '            sage: t[1] # py2\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: 'sage.symbolic.expression.Expression' object does not support indexing\n", '            sage: t[1] # py3\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: 'sage.symbolic.expression.Expression' object is not subscriptable\n", '        """\n', '        if (is_a_symbol(self._gobj) or is_a_constant(self._gobj) or\n', '            is_a_numeric(self._gobj)):\n', '                raise TypeError("expressions containing only a numeric coefficient, constant or symbol have no operands")\n', '        cdef OperandsWrapper res = OperandsWrapper.__new__(OperandsWrapper)\n', '        res._expr = self\n', '        return res\n', '\n', '    def numerical_approx(self, prec=None, digits=None, algorithm=None):\n', '        """\n', '        Return a numerical approximation of ``self`` with ``prec`` bits\n', '        (or decimal ``digits``) of precision.\n', '\n', '        No guarantee is made about the accuracy of the result.\n', '\n', '        INPUT:\n', '\n', '        - ``prec`` -- precision in bits\n', '\n', '        - ``digits`` -- precision in decimal digits (only used if\n', '          ``prec`` is not given)\n', '\n', '        - ``algorithm`` -- which algorithm to use to compute this\n', '          approximation\n', '\n', '        If neither ``prec`` nor ``digits`` is given, the default\n', '        precision is 53 bits (roughly 16 digits).\n', '\n', '        EXAMPLES::\n', '\n', '            sage: sin(x).subs(x=5).n()\n', '            -0.958924274663138\n', '            sage: sin(x).subs(x=5).n(100)\n', '            -0.95892427466313846889315440616\n', '            sage: sin(x).subs(x=5).n(digits=50)\n', '            -0.95892427466313846889315440615599397335246154396460\n', '            sage: zeta(x).subs(x=2).numerical_approx(digits=50)\n', '            1.6449340668482264364724151666460251892189499012068\n', '\n', '            sage: cos(3).numerical_approx(200)\n', '            -0.98999249660044545727157279473126130239367909661558832881409\n', '            sage: numerical_approx(cos(3),200)\n', '            -0.98999249660044545727157279473126130239367909661558832881409\n', '            sage: numerical_approx(cos(3), digits=10)\n', '            -0.9899924966\n', '            sage: (i + 1).numerical_approx(32)\n', '            1.00000000 + 1.00000000*I\n', '            sage: (pi + e + sqrt(2)).numerical_approx(100)\n', '            7.2740880444219335226246195788\n', '\n', '        TESTS:\n', '\n', '        We test the evaluation of different infinities available in Pynac::\n', '\n', '            sage: t = x - oo; t\n', '            -Infinity\n', '            sage: t.n()\n', '            -infinity\n', '            sage: t = x + oo; t\n', '            +Infinity\n', '            sage: t.n()\n', '            +infinity\n', '            sage: t = x - unsigned_infinity; t\n', '            Infinity\n', '            sage: t.n()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: can only convert signed infinity to RR\n', '\n', '        Some expressions cannot be evaluated numerically::\n', '\n', '            sage: n(sin(x))\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: cannot evaluate symbolic expression numerically\n', "            sage: a = var('a')\n", '            sage: (x^2 + 2*x + 2).subs(x=a).n()\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: cannot evaluate symbolic expression numerically\n', '\n', "        Make sure we've rounded up log(10,2) enough to guarantee\n", '        sufficient precision (:trac:`10164`)::\n', '\n', '            sage: ks = 4*10**5, 10**6\n', '            sage: all(len(str(e.n(digits=k)))-1 >= k for k in ks)\n', '            True\n', '\n', '        Symbolic sums with definite endpoints are expanded (:trac:`9424`)::\n', '\n', "            sage: (k,n) = var('k,n')\n", '            sage: f(n) = sum(abs(-k*k+n),k,1,n)\n', '            sage: ex = f(n=8); ex\n', '            sum(abs(-k^2 + 8), k, 1, 8)\n', '            sage: ex.n()\n', '            162.000000000000\n', '            sage: (ex+1).n()\n', '            163.000000000000\n', '\n', '        Check if :trac:`24418` is fixed::\n', '\n', '            sage: numerical_approx(2^(450232897/4888643760))\n', '            1.06591892580915\n', '        """\n', '        if prec is None:\n', '            prec = digits_to_bits(digits)\n', '\n', '        from sage.symbolic.expression_conversions import ExpressionTreeWalker\n', '        class DefiniteSumExpander(ExpressionTreeWalker):\n', '            def composition(self, ex, operator):\n', "                if hasattr(operator, 'name') and operator.name() == 'sum' and (\n", '                    is_a_numeric((<Expression>ex.operands()[2])._gobj)\n', '                and is_a_numeric((<Expression>ex.operands()[3])._gobj)):\n', '                    from sage.calculus.calculus import symbolic_sum\n', '                    return symbolic_sum(*(ex.operands()))\n', '                return super(DefiniteSumExpander, self).composition(ex, operator)\n', '\n', '        s = DefiniteSumExpander(self)\n', '        cdef Expression x = self._parent(s())\n', '        from sage.rings.real_mpfr import RealField\n', '        R = RealField(prec)\n', "        kwds = {'parent': R, 'algorithm': algorithm}\n", '        try:\n', '            x = x._convert(kwds)\n', '        except TypeError: # numerical approximation for real number failed\n', '            pass          # try again with complex\n', "            kwds['parent'] = R.complex_field()\n", '            x = x._convert(kwds)\n', '\n', '        # we have to consider constants as well, since infinity is a constant\n', '        # in pynac\n', '        if is_a_numeric(x._gobj):\n', '            res = py_object_from_numeric(x._gobj)\n', '        elif  is_a_constant(x._gobj):\n', '            res = x.pyobject()\n', '        else:\n', '            raise TypeError("cannot evaluate symbolic expression numerically")\n', '\n', '        # Important -- the  we get might not be a valid output for numerical_approx in\n', '        # the case when one gets infinity.\n', '        if isinstance(res, AnInfinity):\n', '            return res.n(prec=prec,digits=digits)\n', '        return res\n', '\n', '    def round(self):\n', '        """\n', '        Round this expression to the nearest integer.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: u = sqrt(43203735824841025516773866131535024)\n', '            sage: u.round()\n', '            207855083711803945\n', "            sage: t = sqrt(Integer('1'*1000)).round(); print(str(t)[-10:])\n", '            3333333333\n', '            sage: (-sqrt(110)).round()\n', '            -10\n', '            sage: (-sqrt(115)).round()\n', '            -11\n', '            sage: (sqrt(-3)).round()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: could not convert sqrt(-3) to a real number\n', '        """\n', '        try:\n', '            return self.pyobject().round()\n', '        except (TypeError, AttributeError):\n', '            pass\n', '        from sage.functions.all import floor, ceil\n', '        try:\n', '            rif_self = sage.rings.all.RIF(self)\n', '        except TypeError:\n', '            raise ValueError("could not convert %s to a real number" % self)\n', '        half = 1 / sage.rings.integer.Integer(2)\n', '        if rif_self < 0 or (rif_self.contains_zero() and self < 0):\n', '            result = ceil(self - half)\n', '        else:\n', '            result = floor(self + half)\n', '        if not isinstance(result, sage.rings.integer.Integer):\n', '            raise ValueError("could not convert %s to a real number" % self)\n', '        else:\n', '            return result\n', '\n', '    def function(self, *args):\n', '        """\n', '        Return a callable symbolic expression with the given variables.\n', '\n', '        EXAMPLES:\n', '\n', '        We will use several symbolic variables in the examples below::\n', '\n', "            sage: var('x, y, z, t, a, w, n')\n", '            (x, y, z, t, a, w, n)\n', '\n', '        ::\n', '\n', '            sage: u = sin(x) + x*cos(y)\n', '            sage: g = u.function(x,y)\n', '            sage: g(x,y)\n', '            x*cos(y) + sin(x)\n', '            sage: g(t,z)\n', '            t*cos(z) + sin(t)\n', '            sage: g(x^2, x^y)\n', '            x^2*cos(x^y) + sin(x^2)\n', '\n', '        ::\n', '\n', '            sage: f = (x^2 + sin(a*w)).function(a,x,w); f\n', '            (a, x, w) |--> x^2 + sin(a*w)\n', '            sage: f(1,2,3)\n', '            sin(3) + 4\n', '\n', '        Using the :meth:`function` method we can obtain the above function\n', '        `f`, but viewed as a function of different variables::\n', '\n', '            sage: h = f.function(w,a); h\n', '            (w, a) |--> x^2 + sin(a*w)\n', '\n', '        This notation also works::\n', '\n', '            sage: h(w,a) = f\n', '            sage: h\n', '            (w, a) |--> x^2 + sin(a*w)\n', '\n', '        You can even make a symbolic expression `f` into a function\n', '        by writing ``f(x,y) = f``::\n', '\n', '            sage: f = x^n + y^n; f\n', '            x^n + y^n\n', '            sage: f(x,y) = f\n', '            sage: f\n', '            (x, y) |--> x^n + y^n\n', '            sage: f(2,3)\n', '            3^n + 2^n\n', '        """\n', '        # we override type checking in CallableSymbolicExpressionRing,\n', "        # since it checks for old SymbolicVariable's\n", '        # and do the check here instead\n', '        from sage.symbolic.callable import CallableSymbolicExpressionRing\n', '        from sage.symbolic.ring import is_SymbolicVariable\n', '        for i in args:\n', '            if not is_SymbolicVariable(i):\n', '                break\n', '        else:\n', '            R = CallableSymbolicExpressionRing(args, check=False)\n', '            return R(self)\n', '        raise TypeError("Must construct a function with a tuple (or list) of symbolic variables.")\n', '\n', '    ############################################################################\n', '    # Basic arithmetic wrappers\n', '    # which allow disabling automatic evaluation with the hold parameter\n', '    ############################################################################\n', '    def power(self, exp, hold=False):\n', '        """\n', '        Return the current expression to the power ``exp``.\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (x^2).power(2)\n', '            x^4\n', '            sage: (x^2).power(2, hold=True)\n', '            (x^2)^2\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = (x^2).power(2, hold=True); a.unhold()\n', '            x^4\n', '\n', '        """\n', '        cdef Expression nexp = self.coerce_in(exp)\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold2_wrapper(g_power_construct, self._gobj, nexp._gobj,\n', '                    hold))\n', '\n', '    def add(self, *args, hold=False):\n', '        """\n', '        Return the sum of the current expression and the given arguments.\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.add(x)\n', '            2*x\n', '            sage: x.add(x, hold=True)\n', '            x + x\n', '            sage: x.add(x, (2+x), hold=True)\n', '            (x + 2) + x + x\n', '            sage: x.add(x, (2+x), x, hold=True)\n', '            (x + 2) + x + x + x\n', '            sage: x.add(x, (2+x), x, 2*x, hold=True)\n', '            (x + 2) + 2*x + x + x + x\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = x.add(x, hold=True); a.unhold()\n', '            2*x\n', '        """\n', '        nargs = [self.coerce_in(x) for x in args]\n', '        cdef GExVector vec\n', '        cdef Py_ssize_t i\n', '        vec.push_back(self._gobj)\n', '        for i in range(len(args)):\n', '            vec.push_back((<Expression>nargs[i])._gobj)\n', '        return new_Expression_from_GEx(self._parent, g_add_construct(vec, hold))\n', '\n', '    def mul(self, *args, hold=False):\n', '        """\n', '        Return the product of the current expression and the given arguments.\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.mul(x)\n', '            x^2\n', '            sage: x.mul(x, hold=True)\n', '            x*x\n', '            sage: x.mul(x, (2+x), hold=True)\n', '            (x + 2)*x*x\n', '            sage: x.mul(x, (2+x), x, hold=True)\n', '            (x + 2)*x*x*x\n', '            sage: x.mul(x, (2+x), x, 2*x, hold=True)\n', '            (2*x)*(x + 2)*x*x*x\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = x.mul(x, hold=True); a.unhold()\n', '            x^2\n', '\n', '        """\n', '        nargs = [self.coerce_in(x) for x in args]\n', '        cdef GExVector vec\n', '        cdef Py_ssize_t i\n', '        vec.push_back(self._gobj)\n', '        for i in range(len(args)):\n', '            vec.push_back((<Expression>nargs[i])._gobj)\n', '        return new_Expression_from_GEx(self._parent, g_mul_construct(vec, hold))\n', '\n', '    ############################################################################\n', '    # Polynomial functions\n', '    ############################################################################\n', '    def coefficient(self, s, n=1):\n', '        """\n', '        Return the coefficient of `s^n` in this symbolic expression.\n', '\n', '        INPUT:\n', '\n', '        - ``s`` - expression\n', '\n', '        - ``n`` - expression, default 1\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression. The coefficient of `s^n`.\n', '\n', '        Sometimes it may be necessary to expand or factor first, since this\n', '        is not done automatically.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,a')\n", '            (x, y, a)\n', '            sage: f = 100 + a*x + x^3*sin(x*y) + x*y + x/y + 2*sin(x*y)/x; f\n', '            x^3*sin(x*y) + a*x + x*y + x/y + 2*sin(x*y)/x + 100\n', '            sage: f.collect(x)\n', '            x^3*sin(x*y) + (a + y + 1/y)*x + 2*sin(x*y)/x + 100\n', '            sage: f.coefficient(x,0)\n', '            100\n', '            sage: f.coefficient(x,-1)\n', '            2*sin(x*y)\n', '            sage: f.coefficient(x,1)\n', '            a + y + 1/y\n', '            sage: f.coefficient(x,2)\n', '            0\n', '            sage: f.coefficient(x,3)\n', '            sin(x*y)\n', '            sage: f.coefficient(x^3)\n', '            sin(x*y)\n', '            sage: f.coefficient(sin(x*y))\n', '            x^3 + 2/x\n', '            sage: f.collect(sin(x*y))\n', '            a*x + x*y + (x^3 + 2/x)*sin(x*y) + x/y + 100\n', '\n', "            sage: var('a, x, y, z')\n", '            (a, x, y, z)\n', '            sage: f = (a*sqrt(2))*x^2 + sin(y)*x^(1/2) + z^z\n', '            sage: f.coefficient(sin(y))\n', '            sqrt(x)\n', '            sage: f.coefficient(x^2)\n', '            sqrt(2)*a\n', '            sage: f.coefficient(x^(1/2))\n', '            sin(y)\n', '            sage: f.coefficient(1)\n', '            0\n', '            sage: f.coefficient(x, 0)\n', '            z^z\n', '\n', '        Any coefficient can be queried::\n', '\n', '            sage: (x^2 + 3*x^pi).coefficient(x, pi)\n', '            3\n', '            sage: (2^x + 5*x^x).coefficient(x, x)\n', '            5\n', '\n', '        TESTS:\n', '\n', '        Check if :trac:`9505` is fixed::\n', '\n', "            sage: var('x,y,z')\n", '            (x, y, z)\n', '            sage: f = x*y*z^2\n', '            sage: f.coefficient(x*y)\n', '            z^2\n', '            sage: f.coefficient(x*y, 2)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: n != 1 only allowed for s being a variable\n', '\n', '        Check that :trac:`19996` is fixed::\n', '\n', '            sage: (x^(1/2)).coefficient(x, QQ(1)/3)\n', '            0\n', '            sage: (x^(1/2)).coefficient(x, 1/3)\n', '            0\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        cdef Expression nn = self.coerce_in(n)\n', '        cdef GEx r\n', '        if n != 1 and not is_a_symbol(ss._gobj):\n', '            raise TypeError("n != 1 only allowed for s being a variable")\n', '\n', '        # the following is a temporary fix for GiNaC bug #9505\n', '        if is_a_mul(ss._gobj): # necessarily n=1 here\n', '            res = self\n', '            for i from 0 <= i < ss._gobj.nops():\n', '                res = res.coefficient(new_Expression_from_GEx(self._parent, ss._gobj.op(i)))\n', '            return res\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.coeff(ss._gobj, nn._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    def coefficients(self, x=None, sparse=True):\n', '        r"""\n', '        Return the coefficients of this symbolic expression as a polynomial in x.\n', '\n', '        INPUT:\n', '\n', '        -  ``x`` -- optional variable.\n', '\n', '        OUTPUT:\n', '\n', '        Depending on the value of ``sparse``,\n', '\n', '        - A list of pairs ``(expr, n)``, where ``expr`` is a symbolic\n', '          expression and ``n`` is a power (``sparse=True``, default)\n', '\n', '        - A list of expressions where the ``n``-th element is the coefficient of\n', '          ``x^n`` when self is seen as polynomial in ``x`` (``sparse=False``).\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y, a')\n", '            (x, y, a)\n', '            sage: p = x^3 - (x-3)*(x^2+x) + 1\n', '            sage: p.coefficients()\n', '            [[1, 0], [3, 1], [2, 2]]\n', '            sage: p.coefficients(sparse=False)\n', '            [1, 3, 2]\n', '            sage: p = x - x^3 + 5/7*x^5\n', '            sage: p.coefficients()\n', '            [[1, 1], [-1, 3], [5/7, 5]]\n', '            sage: p.coefficients(sparse=False)\n', '            [0, 1, 0, -1, 0, 5/7]\n', '            sage: p = expand((x-a*sqrt(2))^2 + x + 1); p\n', '            -2*sqrt(2)*a*x + 2*a^2 + x^2 + x + 1\n', '            sage: p.coefficients(a)\n', '            [[x^2 + x + 1, 0], [-2*sqrt(2)*x, 1], [2, 2]]\n', '            sage: p.coefficients(a, sparse=False)\n', '            [x^2 + x + 1, -2*sqrt(2)*x, 2]\n', '            sage: p.coefficients(x)\n', '            [[2*a^2 + 1, 0], [-2*sqrt(2)*a + 1, 1], [1, 2]]\n', '            sage: p.coefficients(x, sparse=False)\n', '            [2*a^2 + 1, -2*sqrt(2)*a + 1, 1]\n', '\n', '        TESTS:\n', '\n', '        The behaviour is undefined with noninteger or negative exponents::\n', '\n', '            sage: p = (17/3*a)*x^(3/2) + x*y + 1/x + 2*x^x + 5*x^y\n', '            sage: rset = set([(1, -1), (y, 1), (17/3*a, 3/2), (2, x), (5, y)])\n', '            sage: all((pair[0],pair[1]) in rset for pair in p.coefficients(x))\n', '            True\n', '            sage: p.coefficients(x, sparse=False)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Cannot return dense coefficient list with noninteger exponents.\n', '\n', '        Series coefficients are now handled correctly (:trac:`17399`)::\n', '\n', '\n', '            sage: s=(1/(1-x)).series(x,6); s\n', '            1 + 1*x + 1*x^2 + 1*x^3 + 1*x^4 + 1*x^5 + Order(x^6)\n', '            sage: s.coefficients()\n', '            [[1, 0], [1, 1], [1, 2], [1, 3], [1, 4], [1, 5]]\n', '            sage: s.coefficients(x, sparse=False)\n', '            [1, 1, 1, 1, 1, 1]\n', '            sage: x,y = var("x,y")\n', '            sage: s=(1/(1-y*x-x)).series(x,3); s\n', '            1 + (y + 1)*x + ((y + 1)^2)*x^2 + Order(x^3)\n', '            sage: s.coefficients(x, sparse=False)\n', '            [1, y + 1, (y + 1)^2]\n', '\n', '        We can find coefficients of symbolic functions, :trac:`12255`::\n', '\n', "            sage: g = function('g')(var('t'))\n", '            sage: f = 3*g + g**2 + t\n', '            sage: f.coefficients(g)\n', '            [[t, 0], [3, 1], [1, 2]]\n', '\n', '        Handle bound variable strictly as part of a constant::\n', '\n', '            sage: (sin(1+x)*sin(1+x^2)).coefficients(x)\n', '            [[sin(x^2 + 1)*sin(x + 1), 0]]\n', '            sage: (sin(1+x)*sin(1+x^2)*x).coefficients(x)\n', '            [[sin(x^2 + 1)*sin(x + 1), 1]]\n', '\n', '        Check that :trac:`23545` is fixed::\n', '\n', '            sage: (x^2/(1+x)).coefficients()\n', '            [[x^2/(x + 1), 0]]\n', '            sage: (1+x+exp(x^2/(1+x))).coefficients()\n', '            [[e^(x^2/(x + 1)) + 1, 0], [1, 1]]\n', '            sage: (1/x).coefficients()\n', '            [[1, -1]]\n', '            sage: ((1+x)^pi).coefficients()\n', '            [[(x + 1)^pi, 0]]\n', '        """\n', '        cdef vector[pair[GEx,GEx]] vec\n', '        cdef pair[GEx,GEx] gexpair\n', '        cdef Expression xx\n', '        if x is None:\n', '            x = self.default_variable()\n', '        xx = self.coerce_in(x)\n', '        sig_on()\n', '        try:\n', '            self._gobj.coefficients(xx._gobj, vec)\n', '        finally:\n', '            sig_off()\n', '        l = []\n', '        for p in vec:\n', '            l.append([new_Expression_from_GEx(self._parent, p.first),\n', '                new_Expression_from_GEx(self._parent, p.second)])\n', '        if sparse is True:\n', '            return l\n', '        else:\n', '            from sage.rings.integer_ring import ZZ\n', '            if any(not c[1] in ZZ for c in l):\n', '                raise ValueError("Cannot return dense coefficient list with noninteger exponents.")\n', '            if not l:\n', '                l = [[0, 0]]\n', '            val = l[0][1]\n', '            if val < 0:\n', '                raise ValueError("Cannot return dense coefficient list with negative valuation.")\n', '            deg = l[-1][1]\n', '            ret = [ZZ(0)] * int(deg+1)\n', '            for c in l:\n', '                ret[c[1]] = c[0]\n', '            return ret\n', '\n', '    def list(self, x=None):\n', '        r"""\n', '        Return the coefficients of this symbolic expression as a polynomial in x.\n', '\n', '        INPUT:\n', '\n', '        -  ``x`` -- optional variable.\n', '\n', '        OUTPUT:\n', '\n', '        A list of expressions where the ``n``-th element is the coefficient of\n', '        ``x^n`` when self is seen as polynomial in ``x``.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y, a')\n", '            (x, y, a)\n', '            sage: (x^5).list()\n', '            [0, 0, 0, 0, 0, 1]\n', '            sage: p = x - x^3 + 5/7*x^5\n', '            sage: p.list()\n', '            [0, 1, 0, -1, 0, 5/7]\n', '            sage: p = expand((x-a*sqrt(2))^2 + x + 1); p\n', '            -2*sqrt(2)*a*x + 2*a^2 + x^2 + x + 1\n', '            sage: p.list(a)\n', '            [x^2 + x + 1, -2*sqrt(2)*x, 2]\n', '            sage: s=(1/(1-x)).series(x,6); s\n', '            1 + 1*x + 1*x^2 + 1*x^3 + 1*x^4 + 1*x^5 + Order(x^6)\n', '            sage: s.list()\n', '            [1, 1, 1, 1, 1, 1]\n', '        """\n', '        return self.coefficients(x=x, sparse=False)\n', '\n', '    def leading_coefficient(self, s):\n', '        """\n', '        Return the leading coefficient of s in self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,a')\n", '            (x, y, a)\n', '            sage: f = 100 + a*x + x^3*sin(x*y) + x*y + x/y + 2*sin(x*y)/x; f\n', '            x^3*sin(x*y) + a*x + x*y + x/y + 2*sin(x*y)/x + 100\n', '            sage: f.leading_coefficient(x)\n', '            sin(x*y)\n', '            sage: f.leading_coefficient(y)\n', '            x\n', '            sage: f.leading_coefficient(sin(x*y))\n', '            x^3 + 2/x\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.lcoeff(ss._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    leading_coeff = leading_coefficient\n', '\n', '    def trailing_coefficient(self, s):\n', '        """\n', '        Return the trailing coefficient of s in self, i.e., the coefficient\n', '        of the smallest power of s in self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,a')\n", '            (x, y, a)\n', '            sage: f = 100 + a*x + x^3*sin(x*y) + x*y + x/y + 2*sin(x*y)/x; f\n', '            x^3*sin(x*y) + a*x + x*y + x/y + 2*sin(x*y)/x + 100\n', '            sage: f.trailing_coefficient(x)\n', '            2*sin(x*y)\n', '            sage: f.trailing_coefficient(y)\n', '            x\n', '            sage: f.trailing_coefficient(sin(x*y))\n', '            a*x + x*y + x/y + 100\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.tcoeff(ss._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    trailing_coeff = trailing_coefficient\n', '\n', '    def low_degree(self, s):\n', '        """\n', '        Return the exponent of the lowest nonpositive power of s in self.\n', '\n', '        OUTPUT:\n', '\n', '        An integer ``<= 0``.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,a')\n", '            (x, y, a)\n', '            sage: f = 100 + a*x + x^3*sin(x*y) + x*y + x/y^10 + 2*sin(x*y)/x; f\n', '            x^3*sin(x*y) + a*x + x*y + 2*sin(x*y)/x + x/y^10 + 100\n', '            sage: f.low_degree(x)\n', '            -1\n', '            sage: f.low_degree(y)\n', '            -10\n', '            sage: f.low_degree(sin(x*y))\n', '            0\n', '            sage: (x^3+y).low_degree(x)\n', '            0\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        sig_on()\n', '        try:\n', '            return new_Expression_from_GEx(self._parent,\n', '                                     GEx(self._gobj.ldegree(ss._gobj)))\n', '        finally:\n', '            sig_off()\n', '\n', '    def degree(self, s):\n', '        """\n', '        Return the exponent of the highest nonnegative power of s in self.\n', '\n', '        OUTPUT:\n', '\n', '        An integer ``>= 0``.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,a')\n", '            (x, y, a)\n', '            sage: f = 100 + a*x + x^3*sin(x*y) + x*y + x/y^10 + 2*sin(x*y)/x; f\n', '            x^3*sin(x*y) + a*x + x*y + 2*sin(x*y)/x + x/y^10 + 100\n', '            sage: f.degree(x)\n', '            3\n', '            sage: f.degree(y)\n', '            1\n', '            sage: f.degree(sin(x*y))\n', '            1\n', '            sage: (x^-3+y).degree(x)\n', '            0\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        sig_on()\n', '        try:\n', '            return new_Expression_from_GEx(self._parent,\n', '                                     GEx(self._gobj.degree(ss._gobj)))\n', '        finally:\n', '            sig_off()\n', '\n', '    def unit(self, s):\n', '        """\n', '        Return the unit of this expression when considered as a\n', '        polynomial in ``s``.\n', '\n', '        See also :meth:`content`, :meth:`primitive_part`, and\n', '        :meth:`unit_content_primitive`.\n', '\n', '        INPUT:\n', '\n', '        - ``s`` -- a symbolic expression.\n', '\n', '        OUTPUT:\n', '\n', '        The unit part of a polynomial as a symbolic expression. It is\n', '        defined as the sign of the leading coefficient.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (2*x+4).unit(x)\n', '            1\n', '            sage: (-2*x+1).unit(x)\n', '            -1\n', '            sage: (2*x+1/2).unit(x)\n', '            1\n', "            sage: var('y')\n", '            y\n', '            sage: (2*x - 4*sin(y)).unit(sin(y))\n', '            -1\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.unit(ss._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    def content(self, s):\n', '        """\n', '        Return the content of this expression when considered as a\n', '        polynomial in ``s``.\n', '\n', '        See also :meth:`unit`, :meth:`primitive_part`, and\n', '        :meth:`unit_content_primitive`.\n', '\n', '        INPUT:\n', '\n', '        - ``s`` -- a symbolic expression.\n', '\n', '        OUTPUT:\n', '\n', '        The content part of a polynomial as a symbolic expression. It\n', '        is defined as the gcd of the coefficients.\n', '\n', '        .. warning::\n', '\n', '            The expression is considered to be a univariate polynomial\n', '            in ``s``. The output is different from the ``content()``\n', '            method provided by multivariate polynomial rings in Sage.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (2*x+4).content(x)\n', '            2\n', '            sage: (2*x+1).content(x)\n', '            1\n', '            sage: (2*x+1/2).content(x)\n', '            1/2\n', "            sage: var('y')\n", '            y\n', '            sage: (2*x + 4*sin(y)).content(sin(y))\n', '            2\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.content(ss._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    def primitive_part(self, s):\n', '        """\n', '        Return the primitive polynomial of this expression when\n', '        considered as a polynomial in ``s``.\n', '\n', '        See also :meth:`unit`, :meth:`content`, and\n', '        :meth:`unit_content_primitive`.\n', '\n', '        INPUT:\n', '\n', '        - ``s`` -- a symbolic expression.\n', '\n', '        OUTPUT:\n', '\n', '        The primitive polynomial as a symbolic expression. It is\n', '        defined as the quotient by the :meth:`unit` and\n', '        :meth:`content` parts (with respect to the variable ``s``).\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (2*x+4).primitive_part(x)\n', '            x + 2\n', '            sage: (2*x+1).primitive_part(x)\n', '            2*x + 1\n', '            sage: (2*x+1/2).primitive_part(x)\n', '            4*x + 1\n', "            sage: var('y')\n", '            y\n', '            sage: (2*x + 4*sin(y)).primitive_part(sin(y))\n', '            x + 2*sin(y)\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.primpart(ss._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    def unit_content_primitive(self, s):\n', '        """\n', '        Return the factorization into unit, content, and primitive part.\n', '\n', '        INPUT:\n', '\n', '        - ``s`` -- a symbolic expression, usually a symbolic\n', '          variable. The whole symbolic expression ``self`` will be\n', '          considered as a univariate polynomial in ``s``.\n', '\n', '        OUTPUT:\n', '\n', '        A triple (unit, content, primitive polynomial)` containing the\n', '        :meth:`unit <unit>`, :meth:`content <content>`, and\n', '        :meth:`primitive polynomial <primitive_part>`. Their product equals\n', '        ``self``.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: ex = 9*x^3*y+3*y\n', '            sage: ex.unit_content_primitive(x)\n', '            (1, 3*y, 3*x^3 + 1)\n', '            sage: ex.unit_content_primitive(y)\n', '            (1, 9*x^3 + 3, y)\n', '        """\n', '        cdef Expression ss = self.coerce_in(s)\n', '        cdef GEx unit, cont, prim\n', '        sig_on()\n', '        try:\n', '            self._gobj.unitcontprim(ss._gobj, unit, cont, prim)\n', '        finally:\n', '            sig_off()\n', '        return (new_Expression_from_GEx(self._parent, unit),\n', '                new_Expression_from_GEx(self._parent, cont),\n', '                new_Expression_from_GEx(self._parent, prim))\n', '\n', '    def poly(self, x=None):\n', '        r"""\n', '        Express this symbolic expression as a polynomial in *x*. If\n', '        this is not a polynomial in *x*, then some coefficients may be\n', '        functions of *x*.\n', '\n', '        .. warning::\n', '\n', '           This is different from :meth:`polynomial` which returns\n', '           a Sage polynomial over a given base ring.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('a, x')\n", '            (a, x)\n', '            sage: p = expand((x-a*sqrt(2))^2 + x + 1); p\n', '            -2*sqrt(2)*a*x + 2*a^2 + x^2 + x + 1\n', '            sage: p.poly(a)\n', '            -2*sqrt(2)*a*x + 2*a^2 + x^2 + x + 1\n', '            sage: bool(p.poly(a) == (x-a*sqrt(2))^2 + x + 1)\n', '            True\n', '            sage: p.poly(x)\n', '            2*a^2 - (2*sqrt(2)*a - 1)*x + x^2 + 1\n', '        """\n', '        from sage.symbolic.ring import SR\n', '        if x is None:\n', '            x = self.default_variable()\n', '        G = self.coefficients(x)\n', '        ans = None\n', '        for Z in G:\n', '            coeff = SR(Z[0])\n', '            n = SR(Z[1])\n', '            if not coeff.is_trivial_zero():\n', '                if n.is_trivial_zero():\n', '                    xpow = SR(1)\n', "                elif repr(n) == '1':\n", '                    xpow = x\n', '                else:\n', '                    xpow = x**n\n', '                if ans is None:\n', '                    ans = coeff*xpow\n', '                else:\n', '                    ans += coeff*xpow\n', '        return ans\n', '\n', '    def polynomial(self, base_ring=None, ring=None):\n', '        r"""\n', '        Return this symbolic expression as an algebraic polynomial\n', '        over the given base ring, if possible.\n', '\n', '        The point of this function is that it converts purely symbolic\n', '        polynomials into optimised algebraic polynomials over a given\n', '        base ring.\n', '\n', '        You can specify either the base ring (``base_ring``) you want\n', '        the output polynomial to be over, or you can specify the full\n', '        polynomial ring (``ring``) you want the output polynomial to\n', '        be an element of.\n', '\n', '        INPUT:\n', '\n', '        -  ``base_ring`` - (optional) the base ring for the polynomial\n', '\n', '        -  ``ring`` - (optional) the parent for the polynomial\n', '\n', '        .. warning::\n', '\n', '           This is different from :meth:`poly` which is used to rewrite\n', '           self as a polynomial in terms of one of the variables.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = x^2 -2/3*x + 1\n', '            sage: f.polynomial(QQ)\n', '            x^2 - 2/3*x + 1\n', '            sage: f.polynomial(GF(19))\n', '            x^2 + 12*x + 1\n', '\n', '        Polynomials can be useful for getting the coefficients of an\n', '        expression::\n', '\n', '            sage: g = 6*x^2 - 5\n', '            sage: g.coefficients()\n', '            [[-5, 0], [6, 2]]\n', '            sage: g.polynomial(QQ).list()\n', '            [-5, 0, 6]\n', '            sage: g.polynomial(QQ).dict()\n', '            {0: -5, 2: 6}\n', '\n', '        ::\n', '\n', '            sage: f = x^2*e + x + pi/e\n', '            sage: f.polynomial(RDF)  # abs tol 5e-16\n', '            2.718281828459045*x^2 + x + 1.1557273497909217\n', '            sage: g = f.polynomial(RR); g\n', '            2.71828182845905*x^2 + x + 1.15572734979092\n', '            sage: g.parent()\n', '            Univariate Polynomial Ring in x over Real Field with 53 bits of precision\n', '            sage: f.polynomial(RealField(100))\n', '            2.7182818284590452353602874714*x^2 + x + 1.1557273497909217179100931833\n', '            sage: f.polynomial(CDF)  # abs tol 5e-16\n', '            2.718281828459045*x^2 + x + 1.1557273497909217\n', '            sage: f.polynomial(CC)\n', '            2.71828182845905*x^2 + x + 1.15572734979092\n', '\n', '        We coerce a multivariate polynomial with complex symbolic\n', '        coefficients::\n', '\n', "            sage: x, y, n = var('x, y, n')\n", '            sage: f = pi^3*x - y^2*e - I; f\n', '            pi^3*x - y^2*e - I\n', '            sage: f.polynomial(CDF)  # abs tol 1e-15\n', '            (-2.718281828459045)*y^2 + 31.006276680299816*x - 1.0*I\n', '            sage: f.polynomial(CC)\n', '            (-2.71828182845905)*y^2 + 31.0062766802998*x - 1.00000000000000*I\n', '            sage: f.polynomial(ComplexField(70))\n', '            (-2.7182818284590452354)*y^2 + 31.006276680299820175*x - 1.0000000000000000000*I\n', '\n', '        Another polynomial::\n', '\n', '            sage: f = sum((e*I)^n*x^n for n in range(5)); f\n', '            x^4*e^4 - I*x^3*e^3 - x^2*e^2 + I*x*e + 1\n', '            sage: f.polynomial(CDF)   # abs tol 5e-16\n', '            54.598150033144236*x^4 - 20.085536923187668*I*x^3 - 7.38905609893065*x^2 + 2.718281828459045*I*x + 1.0\n', '            sage: f.polynomial(CC)\n', '            54.5981500331442*x^4 - 20.0855369231877*I*x^3 - 7.38905609893065*x^2 + 2.71828182845905*I*x + 1.00000000000000\n', '\n', '        A multivariate polynomial over a finite field::\n', '\n', '            sage: f = (3*x^5 - 5*y^5)^7; f\n', '            (3*x^5 - 5*y^5)^7\n', '            sage: g = f.polynomial(GF(7)); g\n', '            3*x^35 + 2*y^35\n', '            sage: parent(g)\n', '            Multivariate Polynomial Ring in x, y over Finite Field of size 7\n', '\n', '        We check to make sure constants are converted appropriately::\n', '\n', '            sage: (pi*x).polynomial(SR)\n', '            pi*x\n', '\n', '        Using the ``ring`` parameter, you can also create polynomials\n', '        rings over the symbolic ring where only certain variables are\n', '        considered generators of the polynomial ring and the others\n', '        are considered "constants"::\n', '\n', "            sage: a, x, y = var('a,x,y')\n", '            sage: f = a*x^10*y+3*x\n', "            sage: B = f.polynomial(ring=SR['x,y'])\n", '            sage: B.coefficients()\n', '            [a, 3]\n', '\n', '        """\n', '        from sage.symbolic.expression_conversions import polynomial\n', '        return polynomial(self, base_ring=base_ring, ring=ring)\n', '\n', '    def laurent_polynomial(self, base_ring=None, ring=None):\n', '        r"""\n', '        Return this symbolic expression as a Laurent polynomial\n', '        over the given base ring, if possible.\n', '\n', '        INPUT:\n', '\n', '        -  ``base_ring`` - (optional) the base ring for the polynomial\n', '\n', '        -  ``ring`` - (optional) the parent for the polynomial\n', '\n', '        You can specify either the base ring (``base_ring``) you want\n', '        the output Laurent polynomial to be over, or you can specify the full\n', '        laurent polynomial ring (``ring``) you want the output laurent\n', '        polynomial to be an element of.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = x^2 -2/3/x + 1\n', '            sage: f.laurent_polynomial(QQ)\n', '            -2/3*x^-1 + 1 + x^2\n', '            sage: f.laurent_polynomial(GF(19))\n', '            12*x^-1 + 1 + x^2\n', '        """\n', '        from sage.symbolic.expression_conversions import laurent_polynomial\n', '        return laurent_polynomial(self, base_ring=base_ring, ring=ring)\n', '\n', '    def _polynomial_(self, R):\n', '        """\n', '        Coerce this symbolic expression to a polynomial in `R`.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y,z,w')\n", '            (x, y, z, w)\n', '\n', '        ::\n', '\n', "            sage: R = QQ['x,y,z']\n", '            sage: R(x^2 + y)\n', '            x^2 + y\n', "            sage: R = QQ['w']\n", '            sage: R(w^3 + w + 1)\n', '            w^3 + w + 1\n', "            sage: R = GF(7)['z']\n", '            sage: R(z^3 + 10*z)\n', '            z^3 + 3*z\n', '\n', '        .. NOTE::\n', '\n', '           If the base ring of the polynomial ring is the symbolic ring,\n', '           then a constant polynomial is always returned.\n', '\n', '        ::\n', '\n', "            sage: R = SR['x']\n", '            sage: a = R(sqrt(2) + x^3 + y)\n', '            sage: a\n', '            x^3 + y + sqrt(2)\n', '            sage: type(a)\n', "            <class 'sage.rings.polynomial.polynomial_ring.PolynomialRing_field_with_category.element_class'>\n", '            sage: a.degree()\n', '            0\n', '\n', '        We coerce to a double precision complex polynomial ring::\n', '\n', '            sage: f = e*x^3 + pi*y^3 + sqrt(2) + I; f\n', '            pi*y^3 + x^3*e + sqrt(2) + I\n', "            sage: R = CDF['x,y']\n", '            sage: R(f)  # abs tol 1e-15\n', '            2.718281828459045*x^3 + 3.141592653589793*y^3 + 1.414213562373095 + 1.0*I\n', '\n', '        We coerce to a higher-precision polynomial ring::\n', '\n', "            sage: R = ComplexField(100)['x,y']\n", '            sage: R(f)\n', '            2.7182818284590452353602874714*x^3 + 3.1415926535897932384626433833*y^3 + 1.4142135623730950488016887242 + 1.0000000000000000000000000000*I\n', '\n', '        TESTS:\n', '\n', '        This shows that the issue at :trac:`5755` is fixed (attempting to\n', '        coerce a symbolic expression to a non-symbolic polynomial ring\n', '        caused an error::\n', '\n', "            sage: xx = var('xx')\n", "            sage: RDF['xx'](1.0*xx)\n", '            xx\n', "            sage: RDF['xx'](2.0*xx)\n", '            2.0*xx\n', "            sage: RR['xx'](1.0*xx)\n", '            xx\n', "            sage: RR['xx'](2.0*xx)\n", '            2.00000000000000*xx\n', '\n', '        This shows that the issue at :trac:`4246` is fixed (attempting to\n', "        coerce an expression containing at least one variable that's not in\n", '        `R` raises an error)::\n', '\n', "            sage: x, y = var('x y')\n", "            sage: S = PolynomialRing(Integers(4), 1, 'x')\n", '            sage: S(x)\n', '            x\n', '            sage: S(y)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: y is not a variable of Multivariate Polynomial Ring in x over Ring of integers modulo 4\n', '            sage: S(x+y)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: y is not a variable of Multivariate Polynomial Ring in x over Ring of integers modulo 4\n', '            sage: (x+y)._polynomial_(S)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: y is not a variable of Multivariate Polynomial Ring in x over Ring of integers modulo 4\n', '        """\n', '        from sage.symbolic.all import SR\n', '        from sage.rings.polynomial.multi_polynomial_ring import is_MPolynomialRing\n', '        base_ring = R.base_ring()\n', '        if base_ring == SR:\n', '            if is_MPolynomialRing(R):\n', '                return R({tuple([0]*R.ngens()):self})\n', '            else:\n', '                return R([self])\n', '        return self.polynomial(None, ring=R)\n', '\n', '    def fraction(self, base_ring):\n', '        """\n', '        Return this expression as element of the algebraic fraction\n', '        field over the base ring given.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: fr = (1/x).fraction(ZZ); fr\n', '            1/x\n', '            sage: parent(fr)\n', '            Fraction Field of Univariate Polynomial Ring in x over Integer Ring\n', '            sage: parent(((pi+sqrt(2)/x).fraction(SR)))\n', '            Fraction Field of Univariate Polynomial Ring in x over Symbolic Ring\n', '            sage: parent(((pi+sqrt(2))/x).fraction(SR))\n', '            Fraction Field of Univariate Polynomial Ring in x over Symbolic Ring\n', "            sage: y=var('y')\n", '            sage: fr=((3*x^5 - 5*y^5)^7/(x*y)).fraction(GF(7)); fr\n', '            (3*x^35 + 2*y^35)/(x*y)\n', '            sage: parent(fr)\n', '            Fraction Field of Multivariate Polynomial Ring in x, y over Finite Field of size 7\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`17736` is fixed::\n', '\n', "            sage: a,b,c = var('a,b,c')\n", '            sage: fr = (1/a).fraction(QQ); fr\n', '            1/a\n', '            sage: parent(fr)\n', '            Fraction Field of Univariate Polynomial Ring in a over Rational Field\n', '            sage: parent((b/(a+sin(c))).fraction(SR))\n', '            Fraction Field of Multivariate Polynomial Ring in a, b over Symbolic Ring\n', '        """\n', '        from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing\n', '        from sage.rings.fraction_field import FractionField\n', '        nu = ring.SR(self.numerator()).polynomial(base_ring)\n', '        de = ring.SR(self.denominator()).polynomial(base_ring)\n', '        vars = sorted(set(nu.variables() + de.variables()), key=repr)\n', '        R = FractionField(PolynomialRing(base_ring, vars))\n', '        return R(self.numerator())/R(self.denominator())\n', '\n', '    def power_series(self, base_ring):\n', '        """\n', '        Return algebraic power series associated to this symbolic\n', '        expression, which must be a polynomial in one variable, with\n', '        coefficients coercible to the base ring.\n', '\n', '        The power series is truncated one more than the degree.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: theta = var('theta')\n", '            sage: f = theta^3 + (1/3)*theta - 17/3\n', '            sage: g = f.power_series(QQ); g\n', '            -17/3 + 1/3*theta + theta^3 + O(theta^4)\n', '            sage: g^3\n', '            -4913/27 + 289/9*theta - 17/9*theta^2 + 2602/27*theta^3 + O(theta^4)\n', '            sage: g.parent()\n', '            Power Series Ring in theta over Rational Field\n', '        """\n', '        v = self.variables()\n', '        if len(v) != 1:\n', '            raise ValueError("self must be a polynomial in one variable but it is in the variables %s" % tuple([v]))\n', '        f = self.polynomial(base_ring)\n', '        from sage.rings.all import PowerSeriesRing\n', '        R = PowerSeriesRing(base_ring, names=f.parent().variable_names())\n', '        return R(f, f.degree()+1)\n', '\n', '    def gcd(self, b):\n', '        r"""\n', '        Return the symbolic gcd of self and b.\n', '\n', '        Note that the polynomial GCD is unique up to the multiplication\n', '        by an invertible constant. The following examples make sure all\n', '        results are caught.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: SR(10).gcd(SR(15))\n', '            5\n', '            sage: (x^3 - 1).gcd(x-1) / (x-1) in QQ\n', '            True\n', '            sage: (x^3 - 1).gcd(x^2+x+1) / (x^2+x+1) in QQ\n', '            True\n', '            sage: (x^3 - x^2*pi + x^2 - pi^2).gcd(x-pi) / (x-pi) in QQ\n', '            True\n', '            sage: gcd(sin(x)^2 + sin(x), sin(x)^2 - 1) / (sin(x) + 1) in QQ\n', '            True\n', '            sage: gcd(x^3 - y^3, x-y) / (x-y) in QQ\n', '            True\n', '            sage: gcd(x^100-y^100, x^10-y^10) / (x^10-y^10) in QQ\n', '            True\n', '            sage: r = gcd(expand( (x^2+17*x+3/7*y)*(x^5 - 17*y + 2/3) ), expand((x^13+17*x+3/7*y)*(x^5 - 17*y + 2/3)) )\n', '            sage: r / (x^5 - 17*y + 2/3) in QQ\n', '            True\n', '\n', '        Embedded Sage objects of all kinds get basic support. Note that\n', '        full algebraic GCD is not implemented yet::\n', '\n', '            sage: gcd(I - I*x, x^2 - 1)\n', '            x - 1\n', '            sage: gcd(I + I*x, x^2 - 1)\n', '            x + 1\n', '            sage: alg = SR(QQbar(sqrt(2) + I*sqrt(3)))\n', '            sage: gcd(alg + alg*x, x^2 - 1)  # known bug (trac #28489)\n', '            x + 1\n', '            sage: gcd(alg - alg*x, x^2 - 1)  # known bug (trac #28489)\n', '            x - 1\n', '            sage: sqrt2 = SR(QQbar(sqrt(2)))\n', '            sage: gcd(sqrt2 + x, x^2 - 2)    # known bug\n', '            1\n', '\n', '        TESTS:\n', '\n', '        Check if :trac:`10284` is fixed::\n', '\n', "            sage: u = var('u')\n", "            sage: v = var('v')\n", "            sage: w = var('w')\n", "            sage: x = var('x')\n", "            sage: y = var('y')\n", "            sage: z = var('z')\n", '            sage: e = 792*z^8*w^4*x^3*y^4*u^7 + 24*z^4*w^4*x^2*y^3*u^4 + \\\n', '                    264*z^8*w^3*x^2*y^7*u^5 + 198*z^4*w^5*x^5*y*u^6  + 110*z^2*w^3*x^5*y^4*u^6 \\\n', '                    - 120*z^8*w*x^4*u^6 - 480*z^5*w*x^4*y^6*u^8 - 720*z^7*x^3*y^3*u^7 + \\\n', '                    165*z^4*w^2*x^4*y*u^5 + 450*z^8*w^6*x^2*y*u^8 + 40*z^2*w^3*x^3*y^3*u^6 - \\\n', '                    288*z^7*w^2*x^3*y^6*u^6  + 250*z^6*w^4*x^2*y^4*u^8 + \\\n', '                    576*z^7*w^7*x^2*y^4*u^8  - 80*z^6*w^2*x^5*y^3*u^7 - 144*z^8*w^4*x^5*u^7 + \\\n', '                    120*z^4*w*x^2*y^6*u^6 + 320*z^5*w^5*x^2*y^7*u^8 + 192*z^7*w^6*x*y^7*u^6 - \\\n', '                    12*z^4*w^3*x^3*y^5*u^6  - 36*z^4*w^4*x^4*y^2*u^8 + 72*z^4*w^5*x^3*u^6  - \\\n', '                    20*z^2*w^2*x^4*y^5*u^8 + 660*z^8*w*x^2*y^4*u^6 + 66*z^4*w^4*x^4*y^4*u^4 + \\\n', '                    440*z^6*w^2*x^3*y^7*u^7  - 30*z^4*w*x^3*y^2*u^7 - 48*z^8*w^3*x^4*y^3*u^5 + \\\n', '                    72*z^6*w^2*x*y^6*u^4 - 864*z^7*w^3*x^4*y^3*u^8 + 480*z^7*w^4*x*y^4*u^7 + \\\n', '                    60*z^4*w^2*x^2*u^5 + 375*z^8*w^3*x*y*u^7 + 150*z^8*w^5*x*y^4*u^6 + \\\n', '                    180*z^6*x*y^3*u^5 + 216*z^6*w^3*x^2*y^3*u^6;\n', '            sage: d = e.diff(x)\n', '            sage: gcd(d,e) / (u^4*z^2) in QQ\n', '            True\n', '\n', '        Check that :trac:`23793` is fixed::\n', '\n', '            sage: gcd(I + I*x, x^2 - 1)\n', '            x + 1\n', '\n', '        Check that arguments are expanded before GCD (:trac:`23845`)::\n', '\n', '            sage: P = (x+1)^2 + 1\n', '            sage: gcd(P, P.expand())\n', '            x^2 + 2*x + 2\n', '        """\n', '        cdef Expression r = self.coerce_in(b)\n', '        cdef GEx x = g_gcd(self._gobj, r._gobj)\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def gosper_sum(self, *args):\n', '        """\n', '        Return the summation of this hypergeometric expression using\n', "        Gosper's algorithm.\n", '\n', '        INPUT:\n', '\n', '        - a symbolic expression that may contain rational functions,\n', '          powers, factorials, gamma function terms, binomial\n', '          coefficients, and Pochhammer symbols that are rational-linear\n', '          in their arguments\n', '\n', '        - the main variable and, optionally, summation limits\n', '\n', '        EXAMPLES::\n', '\n', "            sage: a,b,k,m,n = var('a b k m n')\n", '            sage: SR(1).gosper_sum(n)\n', '            n\n', '            sage: SR(1).gosper_sum(n,5,8)\n', '            4\n', '            sage: n.gosper_sum(n)\n', '            1/2*(n - 1)*n\n', '            sage: n.gosper_sum(n,0,5)\n', '            15\n', '            sage: n.gosper_sum(n,0,m)\n', '            1/2*(m + 1)*m\n', '            sage: n.gosper_sum(n,a,b)\n', '            -1/2*(a + b)*(a - b - 1)\n', '\n', '        ::\n', '\n', '            sage: (factorial(m + n)/factorial(n)).gosper_sum(n)\n', '            n*factorial(m + n)/((m + 1)*factorial(n))\n', '            sage: (binomial(m + n, n)).gosper_sum(n)\n', '            n*binomial(m + n, n)/(m + 1)\n', '            sage: (binomial(m + n, n)).gosper_sum(n, 0, a)\n', '            (a + m + 1)*binomial(a + m, a)/(m + 1)\n', '            sage: (binomial(m + n, n)).gosper_sum(n, 0, 5)\n', '            1/120*(m + 6)*(m + 5)*(m + 4)*(m + 3)*(m + 2)\n', '            sage: (rising_factorial(a,n)/rising_factorial(b,n)).gosper_sum(n)\n', '            (b + n - 1)*gamma(a + n)*gamma(b)/((a - b + 1)*gamma(a)*gamma(b + n))\n', '            sage: factorial(n).gosper_term(n)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: expression not Gosper-summable\n', '        """\n', '        cdef Expression s, a, b\n', '        cdef GEx x\n', '        cdef int i = 1\n', '        if len(args) > 1:\n', '            n, l1, l2 = args\n', '            s = self.coerce_in(n)\n', '            a = self.coerce_in(l1)\n', '            b = self.coerce_in(l2)\n', '            sig_on()\n', '            try:\n', '                x = g_gosper_sum_definite(self._gobj, s._gobj,\n', '                        a._gobj, b._gobj, &i)\n', '            finally:\n', '                sig_off()\n', '            if i == 0:\n', '                raise ValueError("expression not Gosper-summable")\n', '            return new_Expression_from_GEx(self._parent, x)\n', '        else:\n', '            s = self.coerce_in(args[0])\n', '            sig_on()\n', '            try:\n', '                x = g_gosper_sum_indefinite(self._gobj, s._gobj, &i)\n', '            finally:\n', '                sig_off()\n', '            if i == 0:\n', '                raise ValueError("expression not Gosper-summable")\n', '            return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def gosper_term(self, n):\n', '        """\n', "        Return Gosper's hypergeometric term for ``self``.\n", '\n', '        Suppose ``f``=``self`` is a hypergeometric term such that:\n', '\n', '        .. math::\n', '\n', '            s_n = \\sum_{k=0}^{n-1} f_k\n', '\n', "        and `f_k` doesn't depend on `n`. Return a hypergeometric\n", '        term `g_n` such that `g_{n+1} - g_n = f_n`.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: _ = var('n')\n", '            sage: SR(1).gosper_term(n)\n', '            n\n', '            sage: n.gosper_term(n)\n', '            1/2*(n^2 - n)/n\n', '            sage: (n*factorial(n)).gosper_term(n)\n', '            1/n\n', '            sage: factorial(n).gosper_term(n)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: expression not Gosper-summable\n', '        """\n', '        cdef Expression s\n', '        cdef int i = 1\n', '        s = self.coerce_in(n)\n', '        sig_on()\n', '        try:\n', '            x = g_gosper_term(self._gobj, s._gobj)\n', '        except ValueError:\n', '            raise ValueError("expression not Gosper-summable")\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def WZ_certificate(self, n, k):\n', '        r"""\n', '        Return the Wilf-Zeilberger certificate for this hypergeometric\n', '        summand in ``n``, ``k``.\n', '\n', '        To prove the identity `\\sum_k F(n,k)=\\textrm{const}` it suffices\n', '        to show that `F(n+1,k)-F(n,k)=G(n,k+1)-G(n,k),` with `G=RF` and\n', '        `R` the WZ certificate.\n', '\n', '        EXAMPLES:\n', '\n', '        To show that `\\sum_k \\binom{n}{k} = 2^n` do::\n', '\n', "            sage: _ = var('k n')\n", '            sage: F(n,k) = binomial(n,k) / 2^n\n', '            sage: c = F(n,k).WZ_certificate(n,k); c\n', '            1/2*k/(k - n - 1)\n', '            sage: G(n,k) = c * F(n,k); G\n', '            (n, k) |--> 1/2*k*binomial(n, k)/(2^n*(k - n - 1))\n', '            sage: (F(n+1,k) - F(n,k) - G(n,k+1) + G(n,k)).simplify_full()\n', '            0\n', '        """\n', '        cdef Expression s, f\n', '        cdef int i = 1\n', '        s = self.coerce_in(k)\n', '        f = self.subs(n == n+1) - self\n', '        sig_on()\n', '        try:\n', '            x = g_gosper_term(f._gobj, s._gobj)\n', '        finally:\n', '            sig_off()\n', '        g = new_Expression_from_GEx(self._parent, x)\n', '        return (f*g / self).to_gamma().gamma_normalize().simplify_full().factor()\n', '\n', '    def lcm(self, b):\n', '        """\n', '        Return the lcm of self and b.\n', '\n', '        The lcm is computed from the gcd of self and b implicitly from the\n', '        relation self * b = gcd(self, b) * lcm(self, b).\n', '\n', '        .. NOTE::\n', '\n', '            In agreement with the convention in use for integers, if\n', '            self * b == 0, then gcd(self, b) == max(self, b) and\n', '            lcm(self, b) == 0.\n', '\n', '        .. NOTE::\n', '\n', '            Since the polynomial lcm is computed from the gcd, and the\n', '            polynomial gcd is unique up to a constant factor (which can\n', '            be negative), the polynomial lcm is unique up to a factor of -1.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: SR(10).lcm(SR(15))\n', '            30\n', '            sage: (x^3 - 1).lcm(x-1)\n', '            x^3 - 1\n', '            sage: (x^3 - 1).lcm(x^2+x+1)\n', '            x^3 - 1\n', '            sage: (x^3 - sage.symbolic.constants.pi).lcm(x-sage.symbolic.constants.pi)\n', '            (pi - x^3)*(pi - x)\n', '            sage: lcm(x^3 - y^3, x-y) / (x^3 - y^3) in [1,-1]\n', '            True\n', '            sage: lcm(x^100-y^100, x^10-y^10) / (x^100 - y^100) in [1,-1]\n', '            True\n', '            sage: a = expand( (x^2+17*x+3/7*y)*(x^5 - 17*y + 2/3) )\n', '            sage: b = expand((x^13+17*x+3/7*y)*(x^5 - 17*y + 2/3) )\n', '            sage: gcd(a,b) * lcm(a,b) / (a * b) in [1,-1]\n', '            True\n', '\n', '        The result is not automatically simplified::\n', '\n', '            sage: ex = lcm(sin(x)^2 - 1, sin(x)^2 + sin(x)); ex\n', '            (sin(x)^2 + sin(x))*(sin(x)^2 - 1)/(sin(x) + 1)\n', '            sage: ex.simplify_full()\n', '            sin(x)^3 - sin(x)\n', '\n', '        TESTS:\n', '\n', '        Verify that x * y = gcd(x,y) * lcm(x,y)::\n', '\n', "            sage: x, y = var('x,y')\n", '            sage: LRs = [(SR(10), SR(15)), (x^3-1, x-1), (x^3-y^3, x-y), (x^3-1, x^2+x+1), (SR(0), x-y)]\n', '            sage: all((L.gcd(R) * L.lcm(R)) == L*R for L, R in LRs)\n', '            True\n', '\n', '        Make sure that the convention for what to do with the 0 is being respected::\n', '\n', '            sage: gcd(x, SR(0)), lcm(x, SR(0))\n', '            (x, 0)\n', '            sage: gcd(SR(0), SR(0)), lcm(SR(0), SR(0))\n', '            (0, 0)\n', '\n', '        """\n', '        sb = self * b\n', '        try:\n', '            return 0 if sb.is_trivial_zero() else sb / self.gcd(b)\n', '        except ValueError:\n', '            # make the error message refer to lcm, not gcd\n', '            raise ValueError("lcm: arguments must be polynomials over the rationals")\n', '\n', '    def resultant(self, other, var):\n', '        """\n', '        Compute the resultant of this polynomial expression and the first\n', '        argument with respect to the variable given as the second\n', '        argument.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: _ = var('a b n k u x y')\n", '            sage: x.resultant(y, x)\n', '            y\n', '            sage: (x+y).resultant(x-y, x)\n', '            -2*y\n', '            sage: r = (x^4*y^2+x^2*y-y).resultant(x*y-y*a-x*b+a*b+u,x)\n', '            sage: r.coefficient(a^4)\n', '            b^4*y^2 - 4*b^3*y^3 + 6*b^2*y^4 - 4*b*y^5 + y^6\n', '            sage: x.resultant(sin(x), x)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: resultant(): arguments must be polynomials\n', '        """\n', '        cdef Expression o = self.coerce_in(other)\n', '        cdef Expression v = self.coerce_in(var)\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = g_resultant(self._gobj, o._gobj, v._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '\n', '    def collect(Expression self, s):\n', '        """\n', '        Collect the coefficients of ``s`` into a group.\n', '\n', '        INPUT:\n', '\n', '        - ``s`` -- the symbol whose coefficients will be collected.\n', '\n', '        OUTPUT:\n', '\n', '        A new expression, equivalent to the original one, with the\n', '        coefficients of ``s`` grouped.\n', '\n', '        .. NOTE::\n', '\n', '            The expression is not expanded or factored before the\n', '            grouping takes place. For best results, call :meth:`expand`\n', '            on the expression before :meth:`collect`.\n', '\n', '        EXAMPLES:\n', '\n', '        In the first term of `f`, `x` has a coefficient of `4y`. In\n', '        the second term, `x` has a coefficient of `z`. Therefore, if\n', '        we collect those coefficients, `x` will have a coefficient of\n', '        `4y+z`::\n', '\n', "            sage: x,y,z = var('x,y,z')\n", '            sage: f = 4*x*y + x*z + 20*y^2 + 21*y*z + 4*z^2 + x^2*y^2*z^2\n', '            sage: f.collect(x)\n', '            x^2*y^2*z^2 + x*(4*y + z) + 20*y^2 + 21*y*z + 4*z^2\n', '\n', '        Here we do the same thing for `y` and `z`; however, note that\n', '        we do not factor the `y^{2}` and `z^{2}` terms before\n', '        collecting coefficients::\n', '\n', '            sage: f.collect(y)\n', '            (x^2*z^2 + 20)*y^2 + (4*x + 21*z)*y + x*z + 4*z^2\n', '            sage: f.collect(z)\n', '            (x^2*y^2 + 4)*z^2 + 4*x*y + 20*y^2 + (x + 21*y)*z\n', '\n', '        The terms are collected, whether the expression\n', '        is expanded or not::\n', '\n', '            sage: f = (x + y)*(x - z)\n', '            sage: f.collect(x)\n', '            x^2 + x*(y - z) - y*z\n', '            sage: f.expand().collect(x)\n', '            x^2 + x*(y - z) - y*z\n', '\n', '        TESTS:\n', '\n', '        The output should be equivalent to the input::\n', '\n', "            sage: polynomials = QQ['x']\n", '            sage: f = SR(polynomials.random_element())\n', '            sage: g = f.collect(x)\n', '            sage: bool(f == g)\n', '            True\n', '\n', '        If ``s`` is not present in the given expression, the\n', '        expression should not be modified. The variable `z` will not\n', '        be present in `f` below since `f` is a random polynomial of\n', '        maximum degree 10 in `x` and `y`::\n', '\n', "            sage: z = var('z')\n", "            sage: polynomials = QQ['x,y']\n", '            sage: f = SR(polynomials.random_element(10))\n', '            sage: g = f.collect(z)\n', '            sage: bool(str(f) == str(g))\n', '            True\n', '\n', '        Check if :trac:`9046` is fixed::\n', '\n', "            sage: var('a b x y z')\n", '            (a, b, x, y, z)\n', '            sage: p = -a*x^3 - a*x*y^2 + 2*b*x^2*y + 2*y^3 + x^2*z + y^2*z + x^2 + y^2 + a*x\n', '            sage: p.collect(x)\n', '            -a*x^3 + (2*b*y + z + 1)*x^2 + 2*y^3 + y^2*z - (a*y^2 - a)*x + y^2\n', '        """\n', '        cdef Expression s0 = self.coerce_in(s)\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = self._gobj.collect(s0._gobj, False)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def horner(self, x):\n', '        """\n', '        Rewrite this expression as a polynomial in Horner form in ``x``.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: add((i+1)*x^i for i in range(5)).horner(x)\n', '            (((5*x + 4)*x + 3)*x + 2)*x + 1\n', '\n', "            sage: x, y, z = SR.var('x,y,z')\n", '            sage: (x^5 + y*cos(x) + z^3 + (x + y)^2 + y^x).horner(x)\n', '            z^3 + ((x^3 + 1)*x + 2*y)*x + y^2 + y*cos(x) + y^x\n', '\n', '            sage: expr = sin(5*x).expand_trig(); expr\n', '            5*cos(x)^4*sin(x) - 10*cos(x)^2*sin(x)^3 + sin(x)^5\n', '            sage: expr.horner(sin(x))\n', '            (5*cos(x)^4 - (10*cos(x)^2 - sin(x)^2)*sin(x)^2)*sin(x)\n', '            sage: expr.horner(cos(x))\n', '            sin(x)^5 + 5*(cos(x)^2*sin(x) - 2*sin(x)^3)*cos(x)^2\n', '\n', '        TESTS::\n', '\n', '            sage: SR(0).horner(x), SR(1).horner(x), x.horner(x)\n', '            (0, 1, x)\n', '            sage: (x^(1/3)).horner(x)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Cannot return dense coefficient list with noninteger exponents.\n', '        """\n', '        coef = self.coefficients(x, sparse=False)\n', '        res = coef[-1]\n', '        for c in reversed(coef[:-1]):\n', '            res = res*x + c\n', '        return res\n', '\n', '    def _evaluate_polynomial(self, pol):\n', '        """\n', '        Evaluate a univariate polynomial on this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: pol = QQ['s'](range(5))\n", '            sage: pol(sin(x))\n', '            4*sin(x)^4 + 3*sin(x)^3 + 2*sin(x)^2 + sin(x)\n', '\n', '        TESTS::\n', '\n', '            sage: SR(0.1)._evaluate_polynomial(pol)\n', '            0.123400000000000\n', '\n', '            sage: Pol.<x> = SR[]\n', '            sage: pol = x^2 - 1\n', '            sage: pol(1)\n', '            0\n', '            sage: pol(1).parent()\n', '            Symbolic Ring\n', '        """\n', '        cdef Expression zero\n', '        if not isinstance(pol[0], Expression): # avoid infinite recursion\n', '            try:\n', '                x = self.pyobject()\n', '                y = pol(x) # may fail if x is a symbolic constant\n', '            except TypeError:\n', '                pass\n', '            else:\n', '                return new_Expression_from_pyobject(self._parent, y)\n', '        zero = self._parent.zero()\n', '        return zero.add(*(pol[i]*self**i for i in xrange(pol.degree() + 1)))\n', '\n', '    def collect_common_factors(self):\n', '        """\n', '        This function does not perform a full factorization but only\n', '        looks for factors which are already explicitly present.\n', '\n', '        Polynomials can often be brought into a more compact form by\n', '        collecting common factors from the terms of sums. This is\n', '        accomplished by this function.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x')\n", '            x\n', '            sage: (x/(x^2 + x)).collect_common_factors()\n', '            1/(x + 1)\n', '\n', "            sage: var('a,b,c,x,y')\n", '            (a, b, c, x, y)\n', '            sage: (a*x+a*y).collect_common_factors()\n', '            a*(x + y)\n', '            sage: (a*x^2+2*a*x*y+a*y^2).collect_common_factors()\n', '            (x^2 + 2*x*y + y^2)*a\n', '            sage: (a*(b*(a+c)*x+b*((a+c)*x+(a+c)*y)*y)).collect_common_factors()\n', '            ((x + y)*y + x)*(a + c)*a*b\n', '        """\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = g_collect_common_factors(self._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def __abs__(self):\n', '        """\n', '        Return the absolute value of this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '\n', '        The absolute value of a symbolic expression::\n', '\n', '            sage: abs(x^2+y^2)\n', '            abs(x^2 + y^2)\n', '\n', '        The absolute value of a number in the symbolic ring::\n', '\n', '            sage: abs(SR(-5))\n', '            5\n', '            sage: type(abs(SR(-5)))\n', "            <type 'sage.symbolic.expression.Expression'>\n", '\n', '        Because this overrides a Python builtin function, we do not\n', '        currently support a ``hold`` parameter to prevent automatic\n', '        evaluation::\n', '\n', '            sage: abs(SR(-5),hold=True)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: abs() takes no keyword arguments\n', '\n', '        But this is possible using the method :meth:`abs`::\n', '\n', '            sage: SR(-5).abs(hold=True)\n', '            abs(-5)\n', '\n', '        TESTS:\n', '\n', '        Check if :trac:`11155` is fixed::\n', '\n', '            sage: abs(pi+i)\n', '            abs(pi + I)\n', '        """\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = g_abs(self._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    def abs(self, hold=False):\n', '        """\n', '        Return the absolute value of this expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: (x+y).abs()\n', '            abs(x + y)\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: SR(-5).abs(hold=True)\n', '            abs(-5)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(-5).abs(hold=True); a.unhold()\n', '            5\n', '\n', '        TESTS:\n', '\n', '        From :trac:`7557`::\n', '\n', "            sage: var('y', domain='real')\n", '            y\n', '            sage: abs(exp(1.1*y*I)).simplify()\n', '            1\n', "            sage: var('y', domain='complex') # reset the domain for other tests\n", '            y\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_abs, self._gobj, hold))\n', '\n', '    def step(self, hold=False):\n', '        """\n', '        Return the value of the unit step function, which is 0 for\n', '        negative x, 1 for 0, and 1 for positive x.\n', '\n', '        .. SEEALSO::\n', '\n', '            :class:`sage.functions.generalized.FunctionUnitStep`\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: SR(1.5).step()\n', '            1\n', '            sage: SR(0).step()\n', '            1\n', '            sage: SR(-1/2).step()\n', '            0\n', '            sage: SR(float(-1)).step()\n', '            0\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: SR(2).step()\n', '            1\n', '            sage: SR(2).step(hold=True)\n', '            unit_step(2)\n', '\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_step, self._gobj, hold))\n', '\n', '    def csgn(self, hold=False):\n', '        """\n', '        Return the sign of self, which is -1 if self < 0, 0 if self ==\n', '        0, and 1 if self > 0, or unevaluated when self is a nonconstant\n', '        symbolic expression.\n', '\n', '        If self is not real, return the complex half-plane (left or right)\n', '        in which the number lies.  If self is pure imaginary, return the sign\n', '        of the imaginary part of self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: SR(-2).csgn()\n', '            -1\n', '            sage: SR(0.0).csgn()\n', '            0\n', '            sage: SR(10).csgn()\n', '            1\n', '            sage: x.csgn()\n', '            csgn(x)\n', '            sage: SR(CDF.0).csgn()\n', '            1\n', '            sage: SR(I).csgn()\n', '            1\n', '            sage: SR(-I).csgn()\n', '            -1\n', '            sage: SR(1+I).csgn()\n', '            1\n', '            sage: SR(1-I).csgn()\n', '            1\n', '            sage: SR(-1+I).csgn()\n', '            -1\n', '            sage: SR(-1-I).csgn()\n', '            -1\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: SR(I).csgn(hold=True)\n', '            csgn(I)\n', '\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_csgn, self._gobj, hold))\n', '\n', '    def conjugate(self, hold=False):\n', '        """\n', '        Return the complex conjugate of this symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: a = 1 + 2*I\n', '            sage: a.conjugate()\n', '            -2*I + 1\n', '            sage: a = sqrt(2) + 3^(1/3)*I; a\n', '            sqrt(2) + I*3^(1/3)\n', '            sage: a.conjugate()\n', '            sqrt(2) - I*3^(1/3)\n', '\n', '            sage: SR(CDF.0).conjugate()\n', '            -1.0*I\n', '            sage: x.conjugate()\n', '            conjugate(x)\n', '            sage: SR(RDF(1.5)).conjugate()\n', '            1.5\n', '            sage: SR(float(1.5)).conjugate()\n', '            1.5\n', '            sage: SR(I).conjugate()\n', '            -I\n', '            sage: ( 1+I  + (2-3*I)*x).conjugate()\n', '            (3*I + 2)*conjugate(x) - I + 1\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: SR(I).conjugate(hold=True)\n', '            conjugate(I)\n', '\n', '        This also works in functional notation::\n', '\n', '            sage: conjugate(I)\n', '            -I\n', '            sage: conjugate(I,hold=True)\n', '            conjugate(I)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(I).conjugate(hold=True); a.unhold()\n', '            -I\n', '\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_conjugate, self._gobj, hold))\n', '\n', '    def norm(self):\n', '        r"""\n', '        Return the complex norm of this symbolic expression, i.e.,\n', '        the expression times its complex conjugate. If `c = a + bi` is a\n', '        complex number, then the norm of `c` is defined as the product of\n', '        `c` and its complex conjugate\n', '\n', '        .. MATH::\n', '\n', '            \\text{norm}(c)\n', '            =\n', '            \\text{norm}(a + bi)\n', '            =\n', '            c \\cdot \\overline{c}\n', '            =\n', '            a^2 + b^2.\n', '\n', '        The norm of a complex number is different from its absolute value.\n', '        The absolute value of a complex number is defined to be the square\n', '        root of its norm. A typical use of the complex norm is in the\n', '        integral domain `\\ZZ[i]` of Gaussian integers, where the norm of\n', '        each Gaussian integer `c = a + bi` is defined as its complex norm.\n', '\n', '        .. SEEALSO::\n', '\n', '            :func:`sage.misc.functional.norm`\n', '\n', '        EXAMPLES::\n', '\n', '            sage: a = 1 + 2*I\n', '            sage: a.norm()\n', '            5\n', '            sage: a = sqrt(2) + 3^(1/3)*I; a\n', '            sqrt(2) + I*3^(1/3)\n', '            sage: a.norm()\n', '            3^(2/3) + 2\n', '            sage: CDF(a).norm()\n', '            4.080083823051...\n', '            sage: CDF(a.norm())\n', '            4.080083823051904\n', '        """\n', '        return (self*self.conjugate()).expand()\n', '\n', '    def real_part(self, hold=False):\n', '        """\n', '        Return the real part of this symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: x.real_part()\n', '            real_part(x)\n', '            sage: SR(2+3*I).real_part()\n', '            2\n', '            sage: SR(CDF(2,3)).real_part()\n', '            2.0\n', '            sage: SR(CC(2,3)).real_part()\n', '            2.00000000000000\n', '\n', '            sage: f = log(x)\n', '            sage: f.real_part()\n', '            log(abs(x))\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: SR(2).real_part()\n', '            2\n', '            sage: SR(2).real_part(hold=True)\n', '            real_part(2)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: real_part(I,hold=True)\n', '            real_part(I)\n', '            sage: real_part(I)\n', '            0\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(2).real_part(hold=True); a.unhold()\n', '            2\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`12807` is fixed::\n', '\n', '            sage: (6*exp(i*pi/3)-6*exp(i*2*pi/3)).real_part()\n', '            6\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_real_part, self._gobj, hold))\n', '\n', '    real = real_part\n', '\n', '    def imag_part(self, hold=False):\n', '        r"""\n', '        Return the imaginary part of this symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: sqrt(-2).imag_part()\n', '            sqrt(2)\n', '\n', '        We simplify `\\ln(\\exp(z))` to `z`.  This should only\n', '        be for `-\\pi<{\\rm Im}(z)<=\\pi`, but Maxima does not\n', '        have a symbolic imaginary part function, so we cannot\n', '        use ``assume`` to assume that first::\n', '\n', "            sage: z = var('z')\n", '            sage: f = log(exp(z))\n', '            sage: f\n', '            log(e^z)\n', '            sage: f.simplify()\n', '            z\n', '            sage: forget()\n', '\n', '        A more symbolic example::\n', '\n', "            sage: var('a, b')\n", '            (a, b)\n', '            sage: f = log(a + b*I)\n', '            sage: f.imag_part()\n', '            arctan2(imag_part(a) + real_part(b), -imag_part(b) + real_part(a))\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: I.imag_part()\n', '            1\n', '            sage: I.imag_part(hold=True)\n', '            imag_part(I)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: imag_part(I,hold=True)\n', '            imag_part(I)\n', '            sage: imag_part(I)\n', '            1\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = I.imag_part(hold=True); a.unhold()\n', '            1\n', '\n', '        TESTS::\n', '\n', "            sage: x = var('x')\n", '            sage: x.imag_part()\n', '            imag_part(x)\n', '            sage: SR(2+3*I).imag_part()\n', '            3\n', '            sage: SR(CC(2,3)).imag_part()\n', '            3.00000000000000\n', '            sage: SR(CDF(2,3)).imag_part()\n', '            3.0\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_imag_part, self._gobj, hold))\n', '\n', '    imag = imag_part\n', '\n', '    def sqrt(self, hold=False):\n', '        """\n', '        Return the square root of this expression\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: SR(2).sqrt()\n', '            sqrt(2)\n', '            sage: (x^2+y^2).sqrt()\n', '            sqrt(x^2 + y^2)\n', '            sage: (x^2).sqrt()\n', '            sqrt(x^2)\n', '\n', '        Immediate simplifications are applied::\n', '\n', '            sage: sqrt(x^2)\n', '            sqrt(x^2)\n', "            sage: x = SR.symbol('x', domain='real')\n", '            sage: sqrt(x^2)\n', '            abs(x)\n', '            sage: forget()\n', '            sage: assume(x<0)\n', '            sage: sqrt(x^2)\n', '            -x\n', '            sage: sqrt(x^4)\n', '            x^2\n', '            sage: forget()\n', "            sage: x = SR.symbol('x', domain='real')\n", '            sage: sqrt(x^4)\n', '            x^2\n', '            sage: sqrt(sin(x)^2)\n', '            abs(sin(x))\n', '            sage: sqrt((x+1)^2)\n', '            abs(x + 1)\n', '            sage: forget()\n', '            sage: assume(x<0)\n', '            sage: sqrt((x-1)^2)\n', '            -x + 1\n', '            sage: forget()\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: SR(4).sqrt()\n', '            2\n', '            sage: SR(4).sqrt(hold=True)\n', '            sqrt(4)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(4).sqrt(hold=True); a.unhold()\n', '            2\n', '\n', '        To use this parameter in functional notation, you must coerce to\n', '        the symbolic ring::\n', '\n', '            sage: sqrt(SR(4),hold=True)\n', '            sqrt(4)\n', '            sage: sqrt(4,hold=True)\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: _do_sqrt() got an unexpected keyword argument 'hold'\n", '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold2_wrapper(g_power_construct, self._gobj, g_ex1_2, hold))\n', '\n', '    def sin(self, hold=False):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: sin(x^2 + y^2)\n', '            sin(x^2 + y^2)\n', '            sage: sin(sage.symbolic.constants.pi)\n', '            0\n', '            sage: sin(SR(1))\n', '            sin(1)\n', '            sage: sin(SR(RealField(150)(1)))\n', '            0.84147098480789650665250232163029899962256306\n', '\n', '        Using the ``hold`` parameter it is possible to prevent automatic\n', '        evaluation::\n', '\n', '            sage: SR(0).sin()\n', '            0\n', '            sage: SR(0).sin(hold=True)\n', '            sin(0)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: sin(0,hold=True)\n', '            sin(0)\n', '            sage: sin(0)\n', '            0\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(0).sin(hold=True); a.unhold()\n', '            0\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).sin()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: sin_eval(): sin(infinity) encountered\n', '            sage: SR(-oo).sin()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: sin_eval(): sin(infinity) encountered\n', '            sage: SR(unsigned_infinity).sin()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: sin_eval(): sin(infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_sin, self._gobj, hold))\n', '\n', '    def cos(self, hold=False):\n', '        """\n', '        Return the cosine of self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: cos(x^2 + y^2)\n', '            cos(x^2 + y^2)\n', '            sage: cos(sage.symbolic.constants.pi)\n', '            -1\n', '            sage: cos(SR(1))\n', '            cos(1)\n', '            sage: cos(SR(RealField(150)(1)))\n', '            0.54030230586813971740093660744297660373231042\n', '\n', '        In order to get a numeric approximation use .n()::\n', '\n', '            sage: SR(RR(1)).cos().n()\n', '            0.540302305868140\n', '            sage: SR(float(1)).cos().n()\n', '            0.540302305868140\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: pi.cos()\n', '            -1\n', '            sage: pi.cos(hold=True)\n', '            cos(pi)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: cos(pi,hold=True)\n', '            cos(pi)\n', '            sage: cos(pi)\n', '            -1\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = pi.cos(hold=True); a.unhold()\n', '            -1\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).cos()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: cos_eval(): cos(infinity) encountered\n', '            sage: SR(-oo).cos()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: cos_eval(): cos(infinity) encountered\n', '            sage: SR(unsigned_infinity).cos()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: cos_eval(): cos(infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_cos, self._gobj, hold))\n', '\n', '    def tan(self, hold=False):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: tan(x^2 + y^2)\n', '            tan(x^2 + y^2)\n', '            sage: tan(sage.symbolic.constants.pi/2)\n', '            Infinity\n', '            sage: tan(SR(1))\n', '            tan(1)\n', '            sage: tan(SR(RealField(150)(1)))\n', '            1.5574077246549022305069748074583601730872508\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: (pi/12).tan()\n', '            -sqrt(3) + 2\n', '            sage: (pi/12).tan(hold=True)\n', '            tan(1/12*pi)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: tan(pi/12,hold=True)\n', '            tan(1/12*pi)\n', '            sage: tan(pi/12)\n', '            -sqrt(3) + 2\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = (pi/12).tan(hold=True); a.unhold()\n', '            -sqrt(3) + 2\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).tan()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: tan_eval(): tan(infinity) encountered\n', '            sage: SR(-oo).tan()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: tan_eval(): tan(infinity) encountered\n', '            sage: SR(unsigned_infinity).tan()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: tan_eval(): tan(infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_tan, self._gobj, hold))\n', '\n', '    def arcsin(self, hold=False):\n', '        """\n', '        Return the arcsin of x, i.e., the number y between -pi and pi\n', '        such that sin(y) == x.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.arcsin()\n', '            arcsin(x)\n', '            sage: SR(0.5).arcsin()\n', '            1/6*pi\n', '            sage: SR(0.999).arcsin()\n', '            1.52607123962616\n', '            sage: SR(1/3).arcsin()\n', '            arcsin(1/3)\n', '            sage: SR(-1/3).arcsin()\n', '            -arcsin(1/3)\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(0).arcsin()\n', '            0\n', '            sage: SR(0).arcsin(hold=True)\n', '            arcsin(0)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: arcsin(0,hold=True)\n', '            arcsin(0)\n', '            sage: arcsin(0)\n', '            0\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(0).arcsin(hold=True); a.unhold()\n', '            0\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).arcsin()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arcsin_eval(): arcsin(infinity) encountered\n', '            sage: SR(-oo).arcsin()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arcsin_eval(): arcsin(infinity) encountered\n', '            sage: SR(unsigned_infinity).arcsin()\n', '            Infinity\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_asin, self._gobj, hold))\n', '\n', '    def arccos(self, hold=False):\n', '        """\n', '        Return the arc cosine of self.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.arccos()\n', '            arccos(x)\n', '            sage: SR(1).arccos()\n', '            0\n', '            sage: SR(1/2).arccos()\n', '            1/3*pi\n', '            sage: SR(0.4).arccos()\n', '            1.15927948072741\n', '            sage: plot(lambda x: SR(x).arccos(), -1,1)\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(1).arccos(hold=True)\n', '            arccos(1)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: arccos(1,hold=True)\n', '            arccos(1)\n', '            sage: arccos(1)\n', '            0\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(1).arccos(hold=True); a.unhold()\n', '            0\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).arccos()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arccos_eval(): arccos(infinity) encountered\n', '            sage: SR(-oo).arccos()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arccos_eval(): arccos(infinity) encountered\n', '            sage: SR(unsigned_infinity).arccos()\n', '            Infinity\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_acos, self._gobj, hold))\n', '\n', '    def arctan(self, hold=False):\n', '        """\n', '        Return the arc tangent of self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: x.arctan()\n', '            arctan(x)\n', '            sage: SR(1).arctan()\n', '            1/4*pi\n', '            sage: SR(1/2).arctan()\n', '            arctan(1/2)\n', '            sage: SR(0.5).arctan()\n', '            0.463647609000806\n', '            sage: plot(lambda x: SR(x).arctan(), -20,20)\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(1).arctan(hold=True)\n', '            arctan(1)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: arctan(1,hold=True)\n', '            arctan(1)\n', '            sage: arctan(1)\n', '            1/4*pi\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(1).arctan(hold=True); a.unhold()\n', '            1/4*pi\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).arctan()\n', '            1/2*pi\n', '            sage: SR(-oo).arctan()\n', '            -1/2*pi\n', '            sage: SR(unsigned_infinity).arctan()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arctan_eval(): arctan(unsigned_infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_atan, self._gobj, hold))\n', '\n', '    def arctan2(self, x, hold=False):\n', '        """\n', '        Return the inverse of the 2-variable tan function on self and x.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: x.arctan2(y)\n', '            arctan2(x, y)\n', '            sage: SR(1/2).arctan2(1/2)\n', '            1/4*pi\n', "            sage: maxima.eval('atan2(1/2,1/2)')\n", "            '%pi/4'\n", '\n', '            sage: SR(-0.7).arctan2(SR(-0.6))\n', '            -2.27942259892257\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(1/2).arctan2(1/2, hold=True)\n', '            arctan2(1/2, 1/2)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: arctan2(1,2,hold=True)\n', '            arctan2(1, 2)\n', '            sage: arctan2(1,2)\n', '            arctan(1/2)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(1/2).arctan2(1/2, hold=True); a.unhold()\n', '            1/4*pi\n', '\n', '        TESTS:\n', '\n', '        We compare a bunch of different evaluation points between\n', '        Sage and Maxima::\n', '\n', '            sage: float(SR(0.7).arctan2(0.6))\n', '            0.8621700546672264\n', "            sage: maxima('atan2(0.7,0.6)')\n", '            0.862170054667226...\n', '            sage: float(SR(0.7).arctan2(-0.6))\n', '            2.279422598922567\n', "            sage: maxima('atan2(0.7,-0.6)')\n", '            2.279422598922567\n', '            sage: float(SR(-0.7).arctan2(0.6))\n', '            -0.8621700546672264\n', "            sage: maxima('atan2(-0.7,0.6)')\n", '            -0.862170054667226...\n', '            sage: float(SR(-0.7).arctan2(-0.6))\n', '            -2.279422598922567\n', "            sage: maxima('atan2(-0.7,-0.6)')\n", '            -2.279422598922567\n', '            sage: float(SR(0).arctan2(-0.6))\n', '            3.141592653589793\n', "            sage: maxima('atan2(0,-0.6)')\n", '            3.141592653589793\n', '            sage: float(SR(0).arctan2(0.6))\n', '            0.0\n', "            sage: maxima('atan2(0,0.6)')\n", '            0.0\n', '            sage: SR(0).arctan2(0) # see trac ticket #21614\n', '            NaN\n', '            sage: SR(I).arctan2(1)\n', '            arctan2(I, 1)\n', '            sage: SR(CDF(0,1)).arctan2(1)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: power::eval(): division by zero\n', '            sage: SR(1).arctan2(CDF(0,1))\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: power::eval(): division by zero\n', '\n', '            sage: arctan2(0,oo)\n', '            0\n', '            sage: SR(oo).arctan2(oo)\n', '            1/4*pi\n', '            sage: SR(oo).arctan2(0)\n', '            1/2*pi\n', '            sage: SR(-oo).arctan2(0)\n', '            -1/2*pi\n', '            sage: SR(-oo).arctan2(-2)\n', '            pi\n', '            sage: SR(unsigned_infinity).arctan2(2)\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arctan2_eval(): arctan2(x, unsigned_infinity) encountered\n', '            sage: SR(2).arctan2(oo)\n', '            1/2*pi\n', '            sage: SR(2).arctan2(-oo)\n', '            -1/2*pi\n', '            sage: SR(2).arctan2(SR(unsigned_infinity))\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arctan2_eval(): arctan2(unsigned_infinity, x) encountered\n', '        """\n', '        cdef Expression nexp = self.coerce_in(x)\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold2_wrapper(g_atan2, self._gobj, nexp._gobj, hold))\n', '\n', '    def sinh(self, hold=False):\n', '        r"""\n', '        Return sinh of self.\n', '\n', '        We have $\\sinh(x) = (e^{x} - e^{-x})/2$.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.sinh()\n', '            sinh(x)\n', '            sage: SR(1).sinh()\n', '            sinh(1)\n', '            sage: SR(0).sinh()\n', '            0\n', '            sage: SR(1.0).sinh()\n', '            1.17520119364380\n', "            sage: maxima('sinh(1.0)')\n", '            1.17520119364380...\n', '\n', '            sinh(1.0000000000000000000000000)\n', '            sage: SR(1).sinh().n(90)\n', '            1.1752011936438014568823819\n', '            sage: SR(RIF(1)).sinh()\n', '            1.175201193643802?\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: arccosh(x).sinh()\n', '            sqrt(x + 1)*sqrt(x - 1)\n', '            sage: arccosh(x).sinh(hold=True)\n', '            sinh(arccosh(x))\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: sinh(arccosh(x),hold=True)\n', '            sinh(arccosh(x))\n', '            sage: sinh(arccosh(x))\n', '            sqrt(x + 1)*sqrt(x - 1)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = arccosh(x).sinh(hold=True); a.simplify()\n', '            sqrt(x + 1)*sqrt(x - 1)\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).sinh()\n', '            +Infinity\n', '            sage: SR(-oo).sinh()\n', '            -Infinity\n', '            sage: SR(unsigned_infinity).sinh()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: sinh_eval(): sinh(unsigned_infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_sinh, self._gobj, hold))\n', '\n', '    def cosh(self, hold=False):\n', '        r"""\n', '        Return cosh of self.\n', '\n', '        We have $\\cosh(x) = (e^{x} + e^{-x})/2$.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.cosh()\n', '            cosh(x)\n', '            sage: SR(1).cosh()\n', '            cosh(1)\n', '            sage: SR(0).cosh()\n', '            1\n', '            sage: SR(1.0).cosh()\n', '            1.54308063481524\n', "            sage: maxima('cosh(1.0)')\n", '            1.54308063481524...\n', '            sage: SR(1.00000000000000000000000000).cosh()\n', '            1.5430806348152437784779056\n', '            sage: SR(RIF(1)).cosh()\n', '            1.543080634815244?\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: arcsinh(x).cosh()\n', '            sqrt(x^2 + 1)\n', '            sage: arcsinh(x).cosh(hold=True)\n', '            cosh(arcsinh(x))\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: cosh(arcsinh(x),hold=True)\n', '            cosh(arcsinh(x))\n', '            sage: cosh(arcsinh(x))\n', '            sqrt(x^2 + 1)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = arcsinh(x).cosh(hold=True); a.unhold()\n', '            sqrt(x^2 + 1)\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).cosh()\n', '            +Infinity\n', '            sage: SR(-oo).cosh()\n', '            +Infinity\n', '            sage: SR(unsigned_infinity).cosh()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: cosh_eval(): cosh(unsigned_infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_cosh, self._gobj, hold))\n', '\n', '    def tanh(self, hold=False):\n', '        r"""\n', '        Return tanh of self.\n', '\n', '        We have $\\tanh(x) = \\sinh(x) / \\cosh(x)$.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.tanh()\n', '            tanh(x)\n', '            sage: SR(1).tanh()\n', '            tanh(1)\n', '            sage: SR(0).tanh()\n', '            0\n', '            sage: SR(1.0).tanh()\n', '            0.761594155955765\n', "            sage: maxima('tanh(1.0)')\n", '            0.7615941559557649\n', '            sage: plot(lambda x: SR(x).tanh(), -1, 1)\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: arcsinh(x).tanh()\n', '            x/sqrt(x^2 + 1)\n', '            sage: arcsinh(x).tanh(hold=True)\n', '            tanh(arcsinh(x))\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: tanh(arcsinh(x),hold=True)\n', '            tanh(arcsinh(x))\n', '            sage: tanh(arcsinh(x))\n', '            x/sqrt(x^2 + 1)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = arcsinh(x).tanh(hold=True); a.unhold()\n', '            x/sqrt(x^2 + 1)\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).tanh()\n', '            1\n', '            sage: SR(-oo).tanh()\n', '            -1\n', '            sage: SR(unsigned_infinity).tanh()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: tanh_eval(): tanh(unsigned_infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_tanh, self._gobj, hold))\n', '\n', '    def arcsinh(self, hold=False):\n', '        """\n', '        Return the inverse hyperbolic sine of self.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.arcsinh()\n', '            arcsinh(x)\n', '            sage: SR(0).arcsinh()\n', '            0\n', '            sage: SR(1).arcsinh()\n', '            arcsinh(1)\n', '            sage: SR(1.0).arcsinh()\n', '            0.881373587019543\n', "            sage: maxima('asinh(2.0)')\n", '            1.4436354751788...\n', '\n', '        Sage automatically applies certain identities::\n', '\n', '            sage: SR(3/2).arcsinh().cosh()\n', '            1/2*sqrt(13)\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(-2).arcsinh()\n', '            -arcsinh(2)\n', '            sage: SR(-2).arcsinh(hold=True)\n', '            arcsinh(-2)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: arcsinh(-2,hold=True)\n', '            arcsinh(-2)\n', '            sage: arcsinh(-2)\n', '            -arcsinh(2)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(-2).arcsinh(hold=True); a.unhold()\n', '            -arcsinh(2)\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).arcsinh()\n', '            +Infinity\n', '            sage: SR(-oo).arcsinh()\n', '            -Infinity\n', '            sage: SR(unsigned_infinity).arcsinh()\n', '            Infinity\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_asinh, self._gobj, hold))\n', '\n', '    def arccosh(self, hold=False):\n', '        """\n', '        Return the inverse hyperbolic cosine of self.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.arccosh()\n', '            arccosh(x)\n', '            sage: SR(0).arccosh()\n', '            1/2*I*pi\n', '            sage: SR(1/2).arccosh()\n', '            arccosh(1/2)\n', '            sage: SR(CDF(1/2)).arccosh() #  rel tol 1e-15\n', '            1.0471975511965976*I\n', "            sage: maxima('acosh(0.5)')\n", '            1.04719755119659...*%i\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(-1).arccosh()\n', '            I*pi\n', '            sage: SR(-1).arccosh(hold=True)\n', '            arccosh(-1)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: arccosh(-1,hold=True)\n', '            arccosh(-1)\n', '            sage: arccosh(-1)\n', '            I*pi\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(-1).arccosh(hold=True); a.unhold()\n', '            I*pi\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).arccosh()\n', '            +Infinity\n', '            sage: SR(-oo).arccosh()\n', '            +Infinity\n', '            sage: SR(unsigned_infinity).arccosh()\n', '            +Infinity\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_acosh, self._gobj, hold))\n', '\n', '    def arctanh(self, hold=False):\n', '        """\n', '        Return the inverse hyperbolic tangent of self.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.arctanh()\n', '            arctanh(x)\n', '            sage: SR(0).arctanh()\n', '            0\n', '            sage: SR(1/2).arctanh()\n', '            1/2*log(3)\n', '            sage: SR(0.5).arctanh()\n', '            0.549306144334055\n', '            sage: SR(0.5).arctanh().tanh()\n', '            0.500000000000000\n', "            sage: maxima('atanh(0.5)')  # abs tol 2e-16\n", '            0.5493061443340548\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(-1/2).arctanh()\n', '            -1/2*log(3)\n', '            sage: SR(-1/2).arctanh(hold=True)\n', '            arctanh(-1/2)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: arctanh(-1/2,hold=True)\n', '            arctanh(-1/2)\n', '            sage: arctanh(-1/2)\n', '            -1/2*log(3)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(-1/2).arctanh(hold=True); a.unhold()\n', '            -1/2*log(3)\n', '\n', '        TESTS::\n', '\n', '            sage: SR(1).arctanh()\n', '            +Infinity\n', '            sage: SR(-1).arctanh()\n', '            -Infinity\n', '\n', '            sage: SR(oo).arctanh()\n', '            -1/2*I*pi\n', '            sage: SR(-oo).arctanh()\n', '            1/2*I*pi\n', '            sage: SR(unsigned_infinity).arctanh()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: arctanh_eval(): arctanh(unsigned_infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_atanh, self._gobj, hold))\n', '\n', '    def exp(self, hold=False):\n', '        """\n', '        Return exponential function of self, i.e., e to the\n', '        power of self.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x.exp()\n', '            e^x\n', '            sage: SR(0).exp()\n', '            1\n', '            sage: SR(1/2).exp()\n', '            e^(1/2)\n', '            sage: SR(0.5).exp()\n', '            1.64872127070013\n', '            sage: math.exp(0.5)\n', '            1.6487212707001282\n', '\n', '            sage: SR(0.5).exp().log()\n', '            0.500000000000000\n', '            sage: (pi*I).exp()\n', '            -1\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: (pi*I).exp(hold=True)\n', '            e^(I*pi)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: exp(I*pi,hold=True)\n', '            e^(I*pi)\n', '            sage: exp(I*pi)\n', '            -1\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = (pi*I).exp(hold=True); a.unhold()\n', '            -1\n', '\n', '        TESTS:\n', '\n', '        Test if :trac:`6377` is fixed::\n', '\n', '            sage: SR(oo).exp()\n', '            +Infinity\n', '            sage: SR(-oo).exp()\n', '            0\n', '            sage: SR(unsigned_infinity).exp()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: exp_eval(): exp^(unsigned_infinity) encountered\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_exp, self._gobj, hold))\n', '\n', '    def log(self, b=None, hold=False):\n', '        """\n', '        Return the logarithm of self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x, y = var('x, y')\n", '            sage: x.log()\n', '            log(x)\n', '            sage: (x^y + y^x).log()\n', '            log(x^y + y^x)\n', '            sage: SR(0).log()\n', '            -Infinity\n', '            sage: SR(-1).log()\n', '            I*pi\n', '            sage: SR(1).log()\n', '            0\n', '            sage: SR(1/2).log()\n', '            log(1/2)\n', '            sage: SR(0.5).log()\n', '            -0.693147180559945\n', '            sage: SR(0.5).log().exp()\n', '            0.500000000000000\n', '            sage: math.log(0.5)\n', '            -0.6931471805599453\n', '            sage: plot(lambda x: SR(x).log(), 0.1,10)\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: I.log()\n', '            1/2*I*pi\n', '            sage: I.log(hold=True)\n', '            log(I)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = I.log(hold=True); a.unhold()\n', '            1/2*I*pi\n', '\n', '        The ``hold`` parameter also works in functional notation::\n', '\n', '            sage: log(-1,hold=True)\n', '            log(-1)\n', '            sage: log(-1)\n', '            I*pi\n', '\n', '        TESTS::\n', '\n', '            sage: SR(oo).log()\n', '            +Infinity\n', '            sage: SR(-oo).log()\n', '            +Infinity\n', '            sage: SR(unsigned_infinity).log()\n', '            +Infinity\n', '        """\n', '        res = new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_log, self._gobj, hold))\n', '        if b is None:\n', '            return res\n', '        else:\n', '            return res/self.coerce_in(b).log(hold=hold)\n', '\n', '    def zeta(self, hold=False):\n', '        """\n', '        EXAMPLES::\n', '\n', "            sage: x, y = var('x, y')\n", '            sage: (x/y).zeta()\n', '            zeta(x/y)\n', '            sage: SR(2).zeta()\n', '            1/6*pi^2\n', '            sage: SR(3).zeta()\n', '            zeta(3)\n', '            sage: SR(CDF(0,1)).zeta()  # abs tol 1e-16\n', '            0.003300223685324103 - 0.4181554491413217*I\n', '            sage: CDF(0,1).zeta()  # abs tol 1e-16\n', '            0.003300223685324103 - 0.4181554491413217*I\n', '            sage: plot(lambda x: SR(x).zeta(), -10,10).show(ymin=-3,ymax=3)\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(2).zeta(hold=True)\n', '            zeta(2)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: zeta(2,hold=True)\n', '            zeta(2)\n', '            sage: zeta(2)\n', '            1/6*pi^2\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(2).zeta(hold=True); a.unhold()\n', '            1/6*pi^2\n', '\n', '        TESTS::\n', '\n', '            sage: t = SR(1).zeta(); t\n', '            Infinity\n', '        """\n', '        cdef GEx x = g_hold_wrapper(g_zeta, self._gobj, hold)\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def factorial(self, hold=False):\n', '        """\n', '        Return the factorial of self.\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: SR(5).factorial()\n', '            120\n', '            sage: x.factorial()\n', '            factorial(x)\n', '            sage: (x^2+y^3).factorial()\n', '            factorial(y^3 + x^2)\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(5).factorial(hold=True)\n', '            factorial(5)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: factorial(5,hold=True)\n', '            factorial(5)\n', '            sage: factorial(5)\n', '            120\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(5).factorial(hold=True); a.unhold()\n', '            120\n', '        """\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = g_hold_wrapper(g_factorial, self._gobj, hold)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def binomial(self, k, hold=False):\n', '        """\n', '        Return binomial coefficient "self choose k".\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: SR(5).binomial(SR(3))\n', '            10\n', '            sage: x.binomial(SR(3))\n', '            1/6*(x - 1)*(x - 2)*x\n', '            sage: x.binomial(y)\n', '            binomial(x, y)\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: x.binomial(3, hold=True)\n', '            binomial(x, 3)\n', '            sage: SR(5).binomial(3, hold=True)\n', '            binomial(5, 3)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(5).binomial(3, hold=True); a.unhold()\n', '            10\n', '\n', '        The ``hold`` parameter is also supported in functional notation::\n', '\n', '            sage: binomial(5,3, hold=True)\n', '            binomial(5, 3)\n', '\n', '        TESTS:\n', '\n', '        Check if we handle zero correctly (:trac:`8561`)::\n', '\n', '            sage: x.binomial(0)\n', '            1\n', '            sage: SR(0).binomial(0)\n', '            1\n', '        """\n', '        cdef Expression nexp = self.coerce_in(k)\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = g_hold2_wrapper(g_binomial, self._gobj, nexp._gobj, hold)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def Order(self, hold=False):\n', '        """\n', '        Return the order of the expression, as in big oh notation.\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: n = var('n')\n", '            sage: t = (17*n^3).Order(); t\n', '            Order(n^3)\n', '            sage: t.derivative(n)\n', '            Order(n^2)\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: (17*n^3).Order(hold=True)\n', '            Order(17*n^3)\n', '        """\n', '        return new_Expression_from_GEx(self._parent,\n', '                g_hold_wrapper(g_Order, self._gobj, hold))\n', '\n', '    def gamma(self, *, hold=False):\n', '        """\n', '        Return the Gamma function evaluated at self.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: x.gamma()\n', '            gamma(x)\n', '            sage: SR(2).gamma()\n', '            1\n', '            sage: SR(10).gamma()\n', '            362880\n', '            sage: SR(10.0r).gamma()  # For ARM: rel tol 2e-15\n', '            362880.0\n', '            sage: SR(CDF(1,1)).gamma()\n', '            0.49801566811835607 - 0.15494982830181067*I\n', '\n', '        ::\n', '\n', "            sage: gp('gamma(1+I)')\n", '            0.4980156681183560427136911175 - 0.1549498283018106851249551305*I # 32-bit\n', '            0.49801566811835604271369111746219809195 - 0.15494982830181068512495513048388660520*I # 64-bit\n', '\n', '        We plot the familiar plot of this log-convex function::\n', '\n', '            sage: plot(gamma(x), -6,4).show(ymin=-3,ymax=3)\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(1/2).gamma()\n', '            sqrt(pi)\n', '            sage: SR(1/2).gamma(hold=True)\n', '            gamma(1/2)\n', '\n', '        This also works using functional notation::\n', '\n', '            sage: gamma(1/2,hold=True)\n', '            gamma(1/2)\n', '            sage: gamma(1/2)\n', '            sqrt(pi)\n', '\n', '        To then evaluate again, we use :meth:`unhold`::\n', '\n', '            sage: a = SR(1/2).gamma(hold=True); a.unhold()\n', '            sqrt(pi)\n', '\n', '        TESTS:\n', '\n', '        Check that no confusion with the incomplete gamma function is\n', '        possible::\n', '\n', "            sage: x, y = SR.var('x,y')\n", '            sage: x.gamma(y)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: gamma() takes exactly 0 positional arguments (1 given)\n', '        """\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = g_hold_wrapper(g_gamma, self._gobj, hold)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def log_gamma(self, hold=False):\n', '        """\n', '        Return the log gamma function evaluated at self.\n', '        This is the logarithm of gamma of self, where\n', '        gamma is a complex function such that `gamma(n)`\n', '        equals `factorial(n-1)`.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x')\n", '            sage: x.log_gamma()\n', '            log_gamma(x)\n', '            sage: SR(2).log_gamma()\n', '            0\n', '            sage: SR(5).log_gamma()\n', '            log(24)\n', '            sage: a = SR(5).log_gamma(); a.n()\n', '            3.17805383034795\n', '            sage: SR(5-1).factorial().log()\n', '            log(24)\n', '            sage: set_verbose(-1); plot(lambda x: SR(x).log_gamma(), -7,8, plot_points=1000).show()\n', '            sage: math.exp(0.5)\n', '            1.6487212707001282\n', '            sage: plot(lambda x: (SR(x).exp() - SR(-x).exp())/2 - SR(x).sinh(), -1, 1)\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        To prevent automatic evaluation use the ``hold`` argument::\n', '\n', '            sage: SR(5).log_gamma(hold=True)\n', '            log_gamma(5)\n', '\n', '        To evaluate again, currently we must use numerical evaluation\n', '        via :meth:`n`::\n', '\n', '            sage: a = SR(5).log_gamma(hold=True); a.n()\n', '            3.17805383034795\n', '        """\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = g_hold_wrapper(g_lgamma, self._gobj, hold)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def default_variable(self):\n', '        """\n', '        Return the default variable, which is by definition the first\n', '        variable in self, or `x` is there are no variables in self.\n', '        The result is cached.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: sqrt(2).default_variable()\n', '            x\n', "            sage: x, theta, a = var('x, theta, a')\n", '            sage: f = x^2 + theta^3 - a^x\n', '            sage: f.default_variable()\n', '            a\n', '\n', '        Note that this is the first *variable*, not the first *argument*::\n', '\n', '            sage: f(theta, a, x) = a + theta^3\n', '            sage: f.default_variable()\n', '            a\n', '            sage: f.variables()\n', '            (a, theta)\n', '            sage: f.arguments()\n', '            (theta, a, x)\n', '        """\n', '        v = self.variables()\n', '        if len(v) == 0:\n', "            return self.parent().var('x')\n", '        else:\n', '            return v[0]\n', '\n', '    def combine(self, bint deep=False):\n', '        r"""\n', '        Return a simplified version of this symbolic expression\n', '        by combining all toplevel terms with the same denominator into\n', '        a single term.\n', '\n', '        Please use the keyword ``deep=True`` to apply the process\n', '        recursively.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y, a, b, c')\n", '            (x, y, a, b, c)\n', '            sage: f = x*(x-1)/(x^2 - 7) + y^2/(x^2-7) + 1/(x+1) + b/a + c/a; f\n', '            (x - 1)*x/(x^2 - 7) + y^2/(x^2 - 7) + b/a + c/a + 1/(x + 1)\n', '            sage: f.combine()\n', '            ((x - 1)*x + y^2)/(x^2 - 7) + (b + c)/a + 1/(x + 1)\n', '            sage: (1/x + 1/x^2 + (x+1)/x).combine()\n', '            (x + 2)/x + 1/x^2\n', '            sage: ex = 1/x + ((x + 1)/x - 1/x)/x^2 + (x+1)/x; ex\n', '            (x + 1)/x + 1/x + ((x + 1)/x - 1/x)/x^2\n', '            sage: ex.combine()\n', '            (x + 2)/x + ((x + 1)/x - 1/x)/x^2\n', '            sage: ex.combine(deep=True)\n', '            (x + 2)/x + 1/x^2\n', '            sage: (1+sin((x + 1)/x - 1/x)).combine(deep=True)\n', '            sin(1) + 1\n', '        """\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.combine_fractions(deep)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    def normalize(self):\n', '        """\n', '        Return this expression normalized as a fraction\n', '\n', '        .. SEEALSO::\n', '\n', '            :meth:`numerator`, :meth:`denominator`,\n', '            :meth:`numerator_denominator`, :meth:`combine`\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y, a, b, c')\n", '            (x, y, a, b, c)\n', '            sage: g = x + y/(x + 2)\n', '            sage: g.normalize()\n', '            (x^2 + 2*x + y)/(x + 2)\n', '\n', '            sage: f = x*(x-1)/(x^2 - 7) + y^2/(x^2-7) + 1/(x+1) + b/a + c/a\n', '            sage: f.normalize()\n', '            (a*x^3 + b*x^3 + c*x^3 + a*x*y^2 + a*x^2 + b*x^2 + c*x^2 +\n', '                    a*y^2 - a*x - 7*b*x - 7*c*x - 7*a - 7*b - 7*c)/((x^2 -\n', '                        7)*a*(x + 1))\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`19775` is fixed::\n', '\n', "            sage: a,b,c,d,e,y = var('a,b,c,d,e,y')\n", '            sage: ((x - 2*y)^4/(x^2 - 4*y^2)^2).normalize()\n', '            (x - 2*y)^2/(x + 2*y)^2\n', '            sage: f = ((x - 2*y)^4/(x^2 - 4*y^2)^2 + 1)*(y + a)*(2*y + x) / (4*y^2 + x^2)\n', '            sage: f.normalize()\n', '            2*(a + y)/(x + 2*y)\n', '            sage: (c/a - b*c^2/(a^2*(b*c/a-d)) + c*d/(a*(b*c/a-d))).normalize()\n', '            0\n', '            sage: (e + c/a - b*c^2/(a^2*(b*c/a-d)) + c*d/(a*(b*c/a-d))).normalize()\n', '            e\n', '\n', '        Check that :trac:`23861` is fixed::\n', '\n', '            sage: (x^(2*pi) + x^(-2*pi) - 2).normalize()\n', '            (x^(4*pi) - 2*x^(2*pi) + 1)/x^(2*pi)\n', '            sage: (e^2 + e^(-2) - 2).normalize()\n', '            (e^4 - 2*e^2 + 1)/e^2\n', '            sage: (e^(2*pi) - e^(-2*pi)).normalize()\n', '            (e^(4*pi) - 1)/e^(2*pi)\n', '\n', '        ALGORITHM: Uses GiNaC.\n', '\n', '        """\n', '        cdef GEx r\n', '        sig_on()\n', '        try:\n', '            r = self._gobj.normal(0, False, True)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, r)\n', '\n', '    def numerator(self, bint normalize = True):\n', '        """\n', '        Return the numerator of this symbolic expression\n', '\n', '        INPUT:\n', '\n', '        - ``normalize`` -- (default: ``True``) a boolean.\n', '\n', '        If ``normalize`` is ``True``, the expression is first normalized to\n', '        have it as a fraction before getting the numerator.\n', '\n', '        If ``normalize`` is ``False``, the expression is kept and if it is not\n', '        a quotient, then this will return the expression itself.\n', '\n', '        .. SEEALSO::\n', '\n', '            :meth:`normalize`, :meth:`denominator`,\n', '            :meth:`numerator_denominator`, :meth:`combine`\n', '\n', '        EXAMPLES::\n', '\n', "            sage: a, x, y = var('a,x,y')\n", '            sage: f = x*(x-a)/((x^2 - y)*(x-a)); f\n', '            x/(x^2 - y)\n', '            sage: f.numerator()\n', '            x\n', '            sage: f.denominator()\n', '            x^2 - y\n', '            sage: f.numerator(normalize=False)\n', '            x\n', '            sage: f.denominator(normalize=False)\n', '            x^2 - y\n', '\n', "            sage: y = var('y')\n", '            sage: g = x + y/(x + 2); g\n', '            x + y/(x + 2)\n', '            sage: g.numerator()\n', '            x^2 + 2*x + y\n', '            sage: g.denominator()\n', '            x + 2\n', '            sage: g.numerator(normalize=False)\n', '            x + y/(x + 2)\n', '            sage: g.denominator(normalize=False)\n', '            1\n', '\n', '        TESTS::\n', '\n', '            sage: ((x+y)^2/(x-y)^3*x^3).numerator(normalize=False)\n', '            (x + y)^2*x^3\n', '            sage: ((x+y)^2*x^3).numerator(normalize=False)\n', '            (x + y)^2*x^3\n', '            sage: (y/x^3).numerator(normalize=False)\n', '            y\n', '            sage: t = y/x^3/(x+y)^(1/2); t\n', '            y/(sqrt(x + y)*x^3)\n', '            sage: t.numerator(normalize=False)\n', '            y\n', '            sage: (1/x^3).numerator(normalize=False)\n', '            1\n', '            sage: (x^3).numerator(normalize=False)\n', '            x^3\n', '            sage: (y*x^sin(x)).numerator(normalize=False)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: self is not a rational expression\n', '        """\n', '        cdef GExVector vec\n', '        cdef GEx oper, power, ex\n', '        if normalize:\n', '            sig_on()\n', '            try:\n', '                ex = self._gobj.numer()\n', '            finally:\n', '                sig_off()\n', '            return new_Expression_from_GEx(self._parent, ex)\n', '        elif is_a_mul(self._gobj):\n', '            for i from 0 <= i < self._gobj.nops():\n', '                oper = self._gobj.op(i)\n', '                if not is_a_power(oper):\n', '                    vec.push_back(oper)\n', '                else:\n', '                    power = oper.op(1)\n', '                    if not is_a_numeric(power):\n', '                        raise TypeError("self is not a rational expression")\n', '                    elif ex_to_numeric(power).is_positive():\n', '                        vec.push_back(oper)\n', '            return new_Expression_from_GEx(self._parent,\n', '                                           g_mul_construct(vec, True))\n', '        elif is_a_power(self._gobj):\n', '            power = self._gobj.op(1)\n', '            if is_a_numeric(power) and ex_to_numeric(power).is_negative():\n', '                return self._parent.one()\n', '        return self\n', '\n', '    def denominator(self, bint normalize=True):\n', '        """\n', '        Return the denominator of this symbolic expression\n', '\n', '        INPUT:\n', '\n', '        - ``normalize`` -- (default: ``True``) a boolean.\n', '\n', '        If ``normalize`` is ``True``, the expression is first normalized to\n', '        have it as a fraction before getting the denominator.\n', '\n', '        If ``normalize`` is ``False``, the expression is kept and if it is not\n', '        a quotient, then this will just return 1.\n', '\n', '        .. SEEALSO::\n', '\n', '            :meth:`normalize`, :meth:`numerator`,\n', '            :meth:`numerator_denominator`, :meth:`combine`\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x, y, z, theta = var('x, y, z, theta')\n", '            sage: f = (sqrt(x) + sqrt(y) + sqrt(z))/(x^10 - y^10 - sqrt(theta))\n', '            sage: f.numerator()\n', '            sqrt(x) + sqrt(y) + sqrt(z)\n', '            sage: f.denominator()\n', '            x^10 - y^10 - sqrt(theta)\n', '\n', '            sage: f.numerator(normalize=False)\n', '            (sqrt(x) + sqrt(y) + sqrt(z))\n', '            sage: f.denominator(normalize=False)\n', '            x^10 - y^10 - sqrt(theta)\n', '\n', "            sage: y = var('y')\n", '            sage: g = x + y/(x + 2); g\n', '            x + y/(x + 2)\n', '            sage: g.numerator(normalize=False)\n', '            x + y/(x + 2)\n', '            sage: g.denominator(normalize=False)\n', '            1\n', '\n', '        TESTS::\n', '\n', '            sage: ((x+y)^2/(x-y)^3*x^3).denominator(normalize=False)\n', '            (x - y)^3\n', '            sage: ((x+y)^2*x^3).denominator(normalize=False)\n', '            1\n', '            sage: (y/x^3).denominator(normalize=False)\n', '            x^3\n', '            sage: t = y/x^3/(x+y)^(1/2); t\n', '            y/(sqrt(x + y)*x^3)\n', '            sage: t.denominator(normalize=False)\n', '            sqrt(x + y)*x^3\n', '            sage: (1/x^3).denominator(normalize=False)\n', '            x^3\n', '            sage: (x^3).denominator(normalize=False)\n', '            1\n', '            sage: (y*x^sin(x)).denominator(normalize=False)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: self is not a rational expression\n', '        """\n', '        cdef GExVector vec\n', '        cdef GEx oper, ex, power\n', '        if normalize:\n', '            sig_on()\n', '            try:\n', '                ex = self._gobj.denom()\n', '            finally:\n', '                sig_off()\n', '            return new_Expression_from_GEx(self._parent, ex)\n', '        elif is_a_mul(self._gobj):\n', '            for i from 0 <= i < self._gobj.nops():\n', '                oper = self._gobj.op(i)\n', '                if is_a_power(oper):\n', '                    ex = oper.op(0)\n', '                    power = oper.op(1)\n', '                    if not is_a_numeric(power):\n', '                        raise TypeError("self is not a rational expression")\n', '                    elif ex_to_numeric(power).is_negative():\n', '                        vec.push_back(g_pow(ex, g_abs(power)))\n', '            return new_Expression_from_GEx(self._parent,\n', '                                           g_mul_construct(vec, False))\n', '        elif is_a_power(self._gobj):\n', '            power = self._gobj.op(1)\n', '            if is_a_numeric(power) and ex_to_numeric(power).is_negative():\n', '                return new_Expression_from_GEx(self._parent,\n', '                        g_pow(self._gobj.op(0), g_abs(power)))\n', '\n', '        return self._parent.one()\n', '\n', '    def numerator_denominator(self, bint normalize=True):\n', '        """\n', '        Return the numerator and the denominator of this symbolic expression\n', '\n', '        INPUT:\n', '\n', '        - ``normalize`` -- (default: ``True``) a boolean.\n', '\n', '        If ``normalize`` is ``True``, the expression is first normalized to\n', '        have it as a fraction before getting the numerator and denominator.\n', '\n', '        If ``normalize`` is ``False``, the expression is kept and if it is not\n', '        a quotient, then this will return the expression itself together with\n', '        1.\n', '\n', '        .. SEEALSO::\n', '\n', '            :meth:`normalize`, :meth:`numerator`, :meth:`denominator`,\n', '            :meth:`combine`\n', '\n', '        EXAMPLES::\n', '\n', '            sage: x, y, a = var("x y a")\n', '            sage: ((x+y)^2/(x-y)^3*x^3).numerator_denominator()\n', '            ((x + y)^2*x^3, (x - y)^3)\n', '\n', '            sage: ((x+y)^2/(x-y)^3*x^3).numerator_denominator(False)\n', '            ((x + y)^2*x^3, (x - y)^3)\n', '\n', '            sage: g = x + y/(x + 2)\n', '            sage: g.numerator_denominator()\n', '            (x^2 + 2*x + y, x + 2)\n', '            sage: g.numerator_denominator(normalize=False)\n', '            (x + y/(x + 2), 1)\n', '\n', '            sage: g = x^2*(x + 2)\n', '            sage: g.numerator_denominator()\n', '            ((x + 2)*x^2, 1)\n', '            sage: g.numerator_denominator(normalize=False)\n', '            ((x + 2)*x^2, 1)\n', '\n', '        TESTS::\n', '\n', '            sage: ((x+y)^2/(x-y)^3*x^3).numerator_denominator(normalize=False)\n', '            ((x + y)^2*x^3, (x - y)^3)\n', '            sage: ((x+y)^2*x^3).numerator_denominator(normalize=False)\n', '            ((x + y)^2*x^3, 1)\n', '            sage: (y/x^3).numerator_denominator(normalize=False)\n', '            (y, x^3)\n', '            sage: t = y/x^3/(x+y)^(1/2); t\n', '            y/(sqrt(x + y)*x^3)\n', '            sage: t.numerator_denominator(normalize=False)\n', '            (y, sqrt(x + y)*x^3)\n', '            sage: (1/x^3).numerator_denominator(normalize=False)\n', '            (1, x^3)\n', '            sage: (x^3).numerator_denominator(normalize=False)\n', '            (x^3, 1)\n', '            sage: (y*x^sin(x)).numerator_denominator(normalize=False)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: self is not a rational expression\n', '        """\n', '        cdef GExVector vecnumer, vecdenom\n', '        cdef GEx oper, ex, power\n', '        cdef GNumeric power_num\n', '        if normalize:\n', '            sig_on()\n', '            try:\n', '                ex = self._gobj.numer_denom()\n', '            finally:\n', '                sig_off()\n', '            return (new_Expression_from_GEx(self._parent, ex.op(0)),\n', '                    new_Expression_from_GEx(self._parent, ex.op(1)))\n', '        elif is_a_mul(self._gobj):\n', '            for i from 0 <= i < self._gobj.nops():\n', '                oper = self._gobj.op(i)\n', '                if is_a_power(oper):   # oper = ex^power\n', '                    ex = oper.op(0)\n', '                    power = oper.op(1)\n', '                    if not is_a_numeric(power):\n', '                        raise TypeError("self is not a rational expression")\n', '                    elif is_a_numeric(power):\n', '                        power_num = ex_to_numeric(power)\n', '                        if power_num.is_positive():\n', '                            vecnumer.push_back(oper)\n', '                        else:\n', '                            vecdenom.push_back(g_pow(ex, g_abs(power)))\n', '                else:\n', '                    vecnumer.push_back(oper)\n', '            return (new_Expression_from_GEx(self._parent,\n', '                                            g_mul_construct(vecnumer, False)),\n', '                    new_Expression_from_GEx(self._parent,\n', '                                            g_mul_construct(vecdenom, False)))\n', '        elif is_a_power(self._gobj):\n', '            power = self._gobj.op(1)\n', '            if is_a_numeric(power) and ex_to_numeric(power).is_positive():\n', '                return (self, self._parent.one())\n', '            else:\n', '                return (self._parent.one(),\n', '                        new_Expression_from_GEx(self._parent,\n', '                               g_pow(self._gobj.op(0), g_abs(power))))\n', '        else:\n', '            return (self, self._parent.one())\n', '\n', '    def partial_fraction(self, var=None):\n', '        r"""\n', '        Return the partial fraction expansion of ``self`` with\n', '        respect to the given variable.\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``var`` - variable name or string (default: first\n', '           variable)\n', '\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = x^2/(x+1)^3\n', '            sage: f.partial_fraction()\n', '            1/(x + 1) - 2/(x + 1)^2 + 1/(x + 1)^3\n', '            sage: f.partial_fraction()\n', '            1/(x + 1) - 2/(x + 1)^2 + 1/(x + 1)^3\n', '\n', '        Notice that the first variable in the expression is used by\n', '        default::\n', '\n', "            sage: y = var('y')\n", '            sage: f = y^2/(y+1)^3\n', '            sage: f.partial_fraction()\n', '            1/(y + 1) - 2/(y + 1)^2 + 1/(y + 1)^3\n', '\n', '            sage: f = y^2/(y+1)^3 + x/(x-1)^3\n', '            sage: f.partial_fraction()\n', '            y^2/(y^3 + 3*y^2 + 3*y + 1) + 1/(x - 1)^2 + 1/(x - 1)^3\n', '\n', '        You can explicitly specify which variable is used::\n', '\n', '            sage: f.partial_fraction(y)\n', '            x/(x^3 - 3*x^2 + 3*x - 1) + 1/(y + 1) - 2/(y + 1)^2 + 1/(y + 1)^3\n', '        """\n', '        if var is None:\n', '            var = self.default_variable()\n', '        return self.parent()(self._maxima_().partfrac(var))\n', '\n', '    def maxima_methods(self):\n', '        """\n', '        Provide easy access to maxima methods, converting the result to a\n', '        Sage expression automatically.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: t = log(sqrt(2) - 1) + log(sqrt(2) + 1); t\n', '            log(sqrt(2) + 1) + log(sqrt(2) - 1)\n', '            sage: res = t.maxima_methods().logcontract(); res\n', '            log((sqrt(2) + 1)*(sqrt(2) - 1))\n', '            sage: type(res)\n', "            <type 'sage.symbolic.expression.Expression'>\n", '        """\n', '        from sage.symbolic.maxima_wrapper import MaximaWrapper\n', '        return MaximaWrapper(self)\n', '\n', '    def rectform(self):\n', '        r"""\n', '        Convert this symbolic expression to rectangular form; that\n', '        is, the form `a + bi` where `a` and `b` are real numbers and\n', '        `i` is the imaginary unit.\n', '\n', '        .. NOTE::\n', '\n', '           The name \\"rectangular\\" comes from the fact that, in the\n', '           complex plane, `a` and `bi` are perpendicular.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` -- the expression to convert.\n', '\n', '        OUTPUT:\n', '\n', '        A new expression, equivalent to the original, but expressed in\n', '        the form `a + bi`.\n', '\n', '        ALGORITHM:\n', '\n', "        We call Maxima's ``rectform()`` and return the result unmodified.\n", '\n', '        EXAMPLES:\n', '\n', '        The exponential form of `\\sin(x)`::\n', '\n', '            sage: f = (e^(I*x) - e^(-I*x)) / (2*I)\n', '            sage: f.rectform()\n', '            sin(x)\n', '\n', '        And `\\cos(x)`::\n', '\n', '            sage: f = (e^(I*x) + e^(-I*x)) / 2\n', '            sage: f.rectform()\n', '            cos(x)\n', '\n', '        In some cases, this will simplify the given expression. For\n', '        example, here, `e^{ik\\pi}`, `\\sin(k\\pi)=0` should cancel\n', '        leaving only `\\cos(k\\pi)` which can then be simplified::\n', '\n', "            sage: k = var('k')\n", "            sage: assume(k, 'integer')\n", '            sage: f = e^(I*pi*k)\n', '            sage: f.rectform()\n', '            (-1)^k\n', '\n', '        However, in general, the resulting expression may be more\n', '        complicated than the original::\n', '\n', '            sage: f = e^(I*x)\n', '            sage: f.rectform()\n', '            cos(x) + I*sin(x)\n', '\n', '        TESTS:\n', '\n', '        If the expression is already in rectangular form, it should be\n', '        left alone::\n', '\n', "            sage: a,b = var('a,b')\n", "            sage: assume((a, 'real'), (b, 'real'))\n", '            sage: f = a + b*I\n', '            sage: f.rectform()\n', '            a + I*b\n', '            sage: forget()\n', '\n', '        We can check with specific real numbers::\n', '\n', '            sage: a = RR.random_element()\n', '            sage: b = RR.random_element()\n', '            sage: f = a + b*I\n', '            sage: bool(f.rectform() == a + b*I)\n', '            True\n', '\n', '        If we decompose a complex number into its real and imaginary\n', '        parts, they should correspond to the real and imaginary terms\n', '        of the rectangular form::\n', '\n', '            sage: z = CC.random_element()\n', '            sage: a = z.real_part()\n', '            sage: b = z.imag_part()\n', '            sage: bool(SR(z).rectform() == a + b*I)\n', '            True\n', '\n', '        """\n', '        return self.maxima_methods().rectform()\n', '\n', '    def unhold(self, exclude=None):\n', '        """\n', '        Evaluates any held operations (with the ``hold`` keyword) in the\n', '        expression\n', '\n', '        INPUT:\n', '\n', '        - ``self`` -- an expression with held operations\n', '        - ``exclude`` -- (default: None) a list of operators to exclude from\n', '          evaluation. Excluding arithmetic operators does not yet work (see\n', '          :trac:`10169`).\n', '\n', '        OUTPUT:\n', '\n', '        A new expression with held operations, except those in ``exclude``,\n', '        evaluated\n', '\n', '        EXAMPLES::\n', '\n', '            sage: a = exp(I * pi, hold=True)\n', '            sage: a\n', '            e^(I*pi)\n', '            sage: a.unhold()\n', '            -1\n', '            sage: b = x.add(x, hold=True)\n', '            sage: b\n', '            x + x\n', '            sage: b.unhold()\n', '            2*x\n', '            sage: (a + b).unhold()\n', '            2*x - 1\n', '            sage: c = (x.mul(x, hold=True)).add(x.mul(x, hold=True), hold=True)\n', '            sage: c\n', '            x*x + x*x\n', '            sage: c.unhold()\n', '            2*x^2\n', '            sage: sin(tan(0, hold=True), hold=True).unhold()\n', '            0\n', '            sage: sin(tan(0, hold=True), hold=True).unhold(exclude=[sin])\n', '            sin(0)\n', '            sage: (e^sgn(0, hold=True)).unhold()\n', '            1\n', '            sage: (e^sgn(0, hold=True)).unhold(exclude=[exp])\n', '            e^0\n', '            sage: log(3).unhold()\n', '            log(3)\n', '        """\n', '        if self.operator():\n', '            from sage.symbolic.expression_conversions import HoldRemover\n', '            h = HoldRemover(self, exclude)\n', '            return h()\n', '        else:\n', '            return self\n', '\n', '    def simplify(self):\n', '        """\n', '        Return a simplified version of this symbolic expression.\n', '\n', '        .. NOTE::\n', '\n', '           Currently, this just sends the expression to Maxima\n', '           and converts it back to Sage.\n', '\n', '        .. SEEALSO::\n', '\n', '           :meth:`simplify_full`, :meth:`simplify_trig`,\n', '           :meth:`simplify_rational`, :meth:`simplify_rectform`\n', '           :meth:`simplify_factorial`, :meth:`simplify_log`,\n', '           :meth:`simplify_real`, :meth:`simplify_hypergeometric`,\n', '           :meth:`canonicalize_radical`\n', '\n', '        EXAMPLES::\n', '\n', "            sage: a = var('a'); f = x*sin(2)/(x^a); f\n", '            x*sin(2)/x^a\n', '            sage: f.simplify()\n', '            x^(-a + 1)*sin(2)\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`14637` is fixed::\n', '\n', '            sage: assume(x > 0, x < pi/2)\n', '            sage: acos(cos(x)).simplify()\n', '            x\n', '            sage: forget()\n', '        """\n', '        return self._parent(self._maxima_())\n', '\n', '    def simplify_full(self):\n', '        """\n', '        Apply :meth:`simplify_factorial`, :meth:`simplify_rectform`,\n', '        :meth:`simplify_trig`, :meth:`simplify_rational`, and\n', '        then :meth:`expand_sum` to self (in that order).\n', '\n', '        ALIAS: ``simplify_full`` and ``full_simplify`` are the same.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = sin(x)^2 + cos(x)^2\n', '            sage: f.simplify_full()\n', '            1\n', '\n', '        ::\n', '\n', '            sage: f = sin(x/(x^2 + x))\n', '            sage: f.simplify_full()\n', '            sin(1/(x + 1))\n', '\n', '        ::\n', '\n', "            sage: var('n,k')\n", '            (n, k)\n', '            sage: f = binomial(n,k)*factorial(k)*factorial(n-k)\n', '            sage: f.simplify_full()\n', '            factorial(n)\n', '\n', '        TESTS:\n', '\n', '        There are two square roots of `(x + 1)^2`, so this should\n', '        not be simplified to `x + 1`, see :trac:`12737`::\n', '\n', '            sage: f = sqrt((x + 1)^2)\n', '            sage: f.simplify_full()\n', '            sqrt(x^2 + 2*x + 1)\n', '\n', '        The imaginary part of an expression should not change under\n', '        simplification; :trac:`11934`::\n', '\n', '            sage: f = sqrt(-8*(4*sqrt(2) - 7)*x^4 + 16*(3*sqrt(2) - 5)*x^3)\n', '            sage: original = f.imag_part()\n', '            sage: simplified = f.full_simplify().imag_part()\n', '            sage: original - simplified\n', '            0\n', '\n', '        The invalid simplification from :trac:`12322` should not occur\n', '        after :trac:`12737`::\n', '\n', "            sage: t = var('t')\n", "            sage: assume(t, 'complex')\n", '            sage: assumptions()\n', '            [t is complex]\n', '            sage: f = (1/2)*log(2*t) + (1/2)*log(1/t)\n', '            sage: f.simplify_full()\n', '            1/2*log(2*t) - 1/2*log(t)\n', '            sage: forget()\n', '\n', '        Complex logs are not contracted, :trac:`17556`::\n', '\n', "            sage: x,y = SR.var('x,y')\n", "            sage: assume(y, 'complex')\n", '            sage: f = log(x*y) - (log(x) + log(y))\n', '            sage: f.simplify_full()\n', '            log(x*y) - log(x) - log(y)\n', '            sage: forget()\n', '\n', '        The simplifications from :meth:`simplify_rectform` are\n', '        performed, :trac:`17556`::\n', '\n', '            sage: f = ( e^(I*x) - e^(-I*x) ) / ( I*e^(I*x) + I*e^(-I*x) )\n', '            sage: f.simplify_full()\n', '            sin(x)/cos(x)\n', '\n', '        """\n', '        x = self\n', '        x = x.simplify_factorial()\n', '        x = x.simplify_rectform()\n', '        x = x.simplify_trig()\n', '        x = x.simplify_rational()\n', '        x = x.expand_sum()\n', '        return x\n', '\n', '    full_simplify = simplify_full\n', '\n', '\n', "    def simplify_hypergeometric(self, algorithm='maxima'):\n", '        """\n', '        Simplify an expression containing hypergeometric or confluent\n', '        hypergeometric functions.\n', '\n', '        INPUT:\n', '\n', "        - ``algorithm`` -- (default: ``'maxima'``) the algorithm to use for\n", "          for simplification. Implemented are ``'maxima'``, which uses Maxima's\n", "          ``hgfred`` function, and ``'sage'``, which uses an algorithm\n", '          implemented in the hypergeometric module\n', '\n', '        ALIAS: :meth:`hypergeometric_simplify` and\n', '        :meth:`simplify_hypergeometric` are the same\n', '\n', '        EXAMPLES::\n', '\n', '            sage: hypergeometric((5, 4), (4, 1, 2, 3),\n', '            ....:                x).simplify_hypergeometric()\n', '            1/144*x^2*hypergeometric((), (3, 4), x) +...\n', '            1/3*x*hypergeometric((), (2, 3), x) + hypergeometric((), (1, 2), x)\n', '            sage: (2*hypergeometric((), (), x)).simplify_hypergeometric()\n', '            2*e^x\n', '            sage: (nest(lambda y: hypergeometric([y], [1], x), 3, 1)\n', '            ....:  .simplify_hypergeometric())\n', '            laguerre(-laguerre(-e^x, x), x)\n', '            sage: (nest(lambda y: hypergeometric([y], [1], x), 3, 1)\n', "            ....:  .simplify_hypergeometric(algorithm='sage'))\n", '            hypergeometric((hypergeometric((e^x,), (1,), x),), (1,), x)\n', '            sage: hypergeometric_M(1, 3, x).simplify_hypergeometric()\n', '            -2*(x - e^x + 1)/x^2\n', '            sage: (2 * hypergeometric_U(1, 3, x)).simplify_hypergeometric()\n', '            2*(x + 1)/x^2\n', '\n', '        """\n', '        from sage.functions.hypergeometric import (hypergeometric,\n', '                                                   hypergeometric_M,\n', '                                                   hypergeometric_U,\n', '                                                   closed_form)\n', '        from sage.calculus.calculus import maxima\n', '        try:\n', '            op = self.operator()\n', '        except RuntimeError:\n', '            return self\n', '        ops = self.operands()\n', '\n', '        if op == hypergeometric_M or op == hypergeometric_U:\n', '            return self.generalized().simplify_hypergeometric(algorithm)\n', '\n', "        if algorithm not in ('maxima', 'sage'):\n", '            raise NotImplementedError(\n', '                    "unknown algorithm: \'{}\'".format(algorithm))\n', '\n', '        simplify = lambda o: o.simplify_hypergeometric(algorithm)\n', '\n', '        if op == hypergeometric:\n', '            a = [simplify(o) for o in ops[0].operands()]\n', '            b = [simplify(o) for o in ops[1].operands()]\n', '            t = simplify(ops[2])\n', '\n', "            if algorithm == 'maxima':\n", '                R = self.parent()\n', '                return R(maxima.hgfred(a, b, t))\n', "            elif algorithm == 'sage':\n", '                return closed_form(hypergeometric(a, b, t))\n', '\n', '        if not op:\n', '            return self\n', '\n', '        return op(*(simplify(o) for o in ops))\n', '\n', '    hypergeometric_simplify = simplify_hypergeometric\n', '\n', '\n', '    def simplify_rectform(self, complexity_measure = string_length):\n', '        r"""\n', '        Attempt to simplify this expression by expressing it in the\n', '        form `a + bi` where both `a` and `b` are real. This\n', '        transformation is generally not a simplification, so we use\n', '        the given ``complexity_measure`` to discard\n', '        non-simplifications.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` -- the expression to simplify.\n', '\n', '        - ``complexity_measure`` -- (default:\n', '          ``sage.symbolic.complexity_measures.string_length``) a\n', '          function taking a symbolic expression as an argument and\n', '          returning a measure of that expressions complexity. If\n', '          ``None`` is supplied, the simplification will be performed\n', '          regardless of the result.\n', '\n', '        OUTPUT:\n', '\n', '        If the transformation produces a simpler expression (according\n', '        to ``complexity_measure``) then that simpler expression is\n', '        returned. Otherwise, the original expression is returned.\n', '\n', '        ALGORITHM:\n', '\n', '        We first call :meth:`rectform()` on the given\n', '        expression. Then, the supplied complexity measure is used to\n', '        determine whether or not the result is simpler than the\n', '        original expression.\n', '\n', '        EXAMPLES:\n', '\n', '        The exponential form of `\\tan(x)`::\n', '\n', '            sage: f = ( e^(I*x) - e^(-I*x) ) / ( I*e^(I*x) + I*e^(-I*x) )\n', '            sage: f.simplify_rectform()\n', '            sin(x)/cos(x)\n', '\n', "        This should not be expanded with Euler's formula since the\n", '        resulting expression is longer when considered as a string,\n', '        and the default ``complexity_measure`` uses string length to\n', '        determine which expression is simpler::\n', '\n', '            sage: f = e^(I*x)\n', '            sage: f.simplify_rectform()\n', '            e^(I*x)\n', '\n', '        However, if we pass ``None`` as our complexity measure, it\n', '        is::\n', '\n', '            sage: f = e^(I*x)\n', '            sage: f.simplify_rectform(complexity_measure = None)\n', '            cos(x) + I*sin(x)\n', '\n', '        TESTS:\n', '\n', '        When given ``None``, we should always call :meth:`rectform()`\n', '        and return the result::\n', '\n', "            sage: polynomials = QQ['x']\n", '            sage: f = SR(polynomials.random_element())\n', '            sage: g = f.simplify_rectform(complexity_measure = None)\n', '            sage: bool(g == f.rectform())\n', '            True\n', '\n', '        """\n', '        simplified_expr = self.rectform()\n', '\n', '        if complexity_measure is None:\n', '            return simplified_expr\n', '\n', '        if complexity_measure(simplified_expr) < complexity_measure(self):\n', '            return simplified_expr\n', '        else:\n', '            return self\n', '\n', '    def simplify_real(self):\n', '        r"""\n', '        Simplify the given expression over the real numbers. This allows\n', '        the simplification of `\\sqrt{x^{2}}` into `\\left|x\\right|` and\n', '        the contraction of `\\log(x) + \\log(y)` into `\\log(xy)`.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` -- the expression to convert.\n', '\n', '        OUTPUT:\n', '\n', '        A new expression, equivalent to the original one under the\n', '        assumption that the variables involved are real.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = sqrt(x^2)\n', '            sage: f.simplify_real()\n', '            abs(x)\n', '\n', '        ::\n', '\n', "            sage: y = SR.var('y')\n", '            sage: f = log(x) + 2*log(y)\n', '            sage: f.simplify_real()\n', '            log(x*y^2)\n', '\n', '        TESTS:\n', '\n', "        We set the Maxima ``domain`` variable to 'real' before we call\n", '        out to Maxima. When we return, however, we should set the\n', '        ``domain`` back to what it was, rather than assuming that it\n', "        was 'complex'::\n", '\n', '            sage: from sage.calculus.calculus import maxima\n', "            sage: maxima('domain: real;')\n", '            real\n', '            sage: x.simplify_real()\n', '            x\n', "            sage: maxima('domain;')\n", '            real\n', "            sage: maxima('domain: complex;')\n", '            complex\n', '\n', '        We forget the assumptions that our variables are real after\n', "        simplification; make sure we don't forget an assumption that\n", '        existed before we were called::\n', '\n', "            sage: assume(x, 'real')\n", '            sage: x.simplify_real()\n', '            x\n', '            sage: assumptions()\n', '            [x is real]\n', '            sage: forget()\n', '\n', "        We also want to be sure that we don't forget assumptions on\n", '        other variables::\n', '\n', "            sage: x,y,z = SR.var('x,y,z')\n", "            sage: assume(y, 'integer')\n", "            sage: assume(z, 'antisymmetric')\n", '            sage: x.simplify_real()\n', '            x\n', '            sage: assumptions()\n', '            [y is integer, z is antisymmetric]\n', '            sage: forget()\n', '\n', '        No new assumptions should exist after the call::\n', '\n', '            sage: assumptions()\n', '            []\n', '            sage: x.simplify_real()\n', '            x\n', '            sage: assumptions()\n', '            []\n', '\n', '        """\n', '        from sage.symbolic.assumptions import assume, assumptions, forget\n', '        from sage.calculus.calculus import maxima\n', "        original_domain = maxima.eval('domain')\n", '        original_assumptions = assumptions()\n', '\n', "        maxima.eval('domain: real$')\n", '\n', '        # We might as well go all the way and tell Maxima to assume\n', "        # that all variables are real. Since we're setting the\n", "        # simplification domain (and it's indiscriminate), you'd\n", '        # better not call this unless your variables really are real\n', '        # anyway.\n', '        for v in self.variables():\n', "            assume(v, 'real')\n", '\n', '        # This will round trip through Maxima, essentially performing\n', '        # self.simplify() in the process.\n', '        result = self.simplify_log()\n', '\n', '        # Set the domain back to what it was before we were called.\n', "        maxima.eval('domain: %s$' % original_domain)\n", '\n', '        # Forget all assumptions, and restore the ones that existed\n', '        # when we were called. This is much simpler than the bookkeeping\n', '        # necessary otherwise.\n', '        forget()\n', '        for assumption in original_assumptions:\n', '            assume(assumption);\n', '\n', '        return result\n', '\n', '\n', '    def simplify_trig(self,expand=True):\n', '        r"""\n', '        Optionally expand and then employ identities such as\n', '        `\\sin(x)^2 + \\cos(x)^2 = 1`, `\\cosh(x)^2 - \\sinh(x)^2 = 1`,\n', '        `\\sin(x)\\csc(x) = 1`, or `\\tanh(x)=\\sinh(x)/\\cosh(x)`\n', '        to simplify expressions containing tan, sec, etc., to sin,\n', '        cos, sinh, cosh.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - symbolic expression\n', '\n', '        - ``expand`` - (default:True) if True, expands trigonometric\n', '          and hyperbolic functions of sums of angles and of multiple\n', '          angles occurring in ``self`` first. For best results,\n', '          ``self`` should be expanded. See also :meth:`expand_trig` to\n', '          get more controls on this expansion.\n', '\n', '        ALIAS: :meth:`trig_simplify` and :meth:`simplify_trig` are the same\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = sin(x)^2 + cos(x)^2; f\n', '            cos(x)^2 + sin(x)^2\n', '            sage: f.simplify()\n', '            cos(x)^2 + sin(x)^2\n', '            sage: f.simplify_trig()\n', '            1\n', '            sage: h = sin(x)*csc(x)\n', '            sage: h.simplify_trig()\n', '            1\n', '            sage: k = tanh(x)*cosh(2*x)\n', '            sage: k.simplify_trig()\n', '            (2*sinh(x)^3 + sinh(x))/cosh(x)\n', '\n', '        In some cases we do not want to expand::\n', '\n', '            sage: f=tan(3*x)\n', '            sage: f.simplify_trig()\n', '            -(4*cos(x)^2 - 1)*sin(x)/(4*cos(x)*sin(x)^2 - cos(x))\n', '            sage: f.simplify_trig(False)\n', '            sin(3*x)/cos(3*x)\n', '\n', '        """\n', "        # much better to expand first, since it often doesn't work\n", '        # right otherwise!\n', '        if expand:\n', '            return self.parent()(self._maxima_().trigexpand().trigsimp())\n', '        else:\n', '            return self.parent()(self._maxima_().trigsimp())\n', '\n', '    trig_simplify = simplify_trig\n', '\n', "    def simplify_rational(self,algorithm='full', map=False):\n", '        r"""\n', '        Simplify rational expressions.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - symbolic expression\n', '\n', "        - ``algorithm`` - (default: 'full') string which switches the\n", '          algorithm for simplifications. Possible values are\n', '\n', "          - 'simple' (simplify rational functions into quotient of two\n", '            polynomials),\n', '\n', "          - 'full' (apply repeatedly, if necessary)\n", '\n', "          - 'noexpand' (convert to common denominator and add)\n", '\n', '        - ``map`` - (default: ``False``) if ``True``, the result is an\n', '          expression whose leading operator is the same as that of the\n', '          expression ``self`` but whose subparts are the results of\n', '          applying simplification rules to the corresponding subparts\n', '          of the expressions.\n', '\n', '        ALIAS: :meth:`rational_simplify` and :meth:`simplify_rational`\n', '        are the same\n', '\n', '        DETAILS: We call Maxima functions ratsimp, fullratsimp and\n', '        xthru. If each part of the expression has to be simplified\n', '        separately, we use Maxima function map.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = sin(x/(x^2 + x))\n', '            sage: f\n', '            sin(x/(x^2 + x))\n', '            sage: f.simplify_rational()\n', '            sin(1/(x + 1))\n', '\n', '        ::\n', '\n', '            sage: f = ((x - 1)^(3/2) - (x + 1)*sqrt(x - 1))/sqrt((x - 1)*(x + 1)); f\n', '            -((x + 1)*sqrt(x - 1) - (x - 1)^(3/2))/sqrt((x + 1)*(x - 1))\n', '            sage: f.simplify_rational()\n', '            -2*sqrt(x - 1)/sqrt(x^2 - 1)\n', '\n', '        With ``map=True`` each term in a sum is simplified separately\n', '        and thus the resuls are shorter for functions which are\n', '        combination of rational and nonrational functions. In the\n', '        following example, we use this option if we want not to\n', '        combine logarithm and the rational function into one\n', '        fraction::\n', '\n', '            sage: f=(x^2-1)/(x+1)-ln(x)/(x+2)\n', '            sage: f.simplify_rational()\n', '            (x^2 + x - log(x) - 2)/(x + 2)\n', '            sage: f.simplify_rational(map=True)\n', '            x - log(x)/(x + 2) - 1\n', '\n', '        Here is an example from the Maxima documentation of where\n', "        ``algorithm='simple'`` produces an (possibly useful) intermediate\n", '        step::\n', '\n', "            sage: y = var('y')\n", '            sage: g = (x^(y/2) + 1)^2*(x^(y/2) - 1)^2/(x^y - 1)\n', "            sage: g.simplify_rational(algorithm='simple')\n", '            (x^(2*y) - 2*x^y + 1)/(x^y - 1)\n', '            sage: g.simplify_rational()\n', '            x^y - 1\n', '\n', "        With option ``algorithm='noexpand'`` we only convert to common\n", '        denominators and add. No expansion of products is performed::\n', '\n', '            sage: f=1/(x+1)+x/(x+2)^2\n', '            sage: f.simplify_rational()\n', '            (2*x^2 + 5*x + 4)/(x^3 + 5*x^2 + 8*x + 4)\n', "            sage: f.simplify_rational(algorithm='noexpand')\n", '            ((x + 2)^2 + (x + 1)*x)/((x + 2)^2*(x + 1))\n', '        """\n', '        self_m = self._maxima_()\n', "        if algorithm == 'full':\n", "            maxima_method = 'fullratsimp'\n", "        elif algorithm == 'simple':\n", "            maxima_method = 'ratsimp'\n", "        elif algorithm == 'noexpand':\n", "            maxima_method = 'xthru'\n", '        else:\n', '            raise NotImplementedError("unknown algorithm, see the help for available algorithms")\n', '        P = self_m.parent()\n', '        self_str=self_m.str()\n', '        if map:\n', '            cmd = "if atom(%s) then %s(%s) else map(%s,%s)"%(self_str,maxima_method,self_str,maxima_method,self_str)\n', '        else:\n', '            cmd = "%s(%s)"%(maxima_method,self_m.str())\n', '        res = P(cmd)\n', '        return self.parent()(res)\n', '\n', '    rational_simplify = simplify_rational\n', '\n', '    def simplify_factorial(self):\n', '        """\n', '        Simplify by combining expressions with factorials, and by\n', '        expanding binomials into factorials.\n', '\n', '        ALIAS: factorial_simplify and simplify_factorial are the same\n', '\n', '        EXAMPLES:\n', '\n', '        Some examples are relatively clear::\n', '\n', "            sage: var('n,k')\n", '            (n, k)\n', '            sage: f = factorial(n+1)/factorial(n); f\n', '            factorial(n + 1)/factorial(n)\n', '            sage: f.simplify_factorial()\n', '            n + 1\n', '\n', '        ::\n', '\n', '            sage: f = factorial(n)*(n+1); f\n', '            (n + 1)*factorial(n)\n', '            sage: simplify(f)\n', '            (n + 1)*factorial(n)\n', '            sage: f.simplify_factorial()\n', '            factorial(n + 1)\n', '\n', '        ::\n', '\n', '            sage: f = binomial(n, k)*factorial(k)*factorial(n-k); f\n', '            binomial(n, k)*factorial(k)*factorial(-k + n)\n', '            sage: f.simplify_factorial()\n', '            factorial(n)\n', '\n', '        A more complicated example, which needs further processing::\n', '\n', '            sage: f = factorial(x)/factorial(x-2)/2 + factorial(x+1)/factorial(x)/2; f\n', '            1/2*factorial(x + 1)/factorial(x) + 1/2*factorial(x)/factorial(x - 2)\n', '            sage: g = f.simplify_factorial(); g\n', '            1/2*(x - 1)*x + 1/2*x + 1/2\n', '            sage: g.simplify_rational()\n', '            1/2*x^2 + 1/2\n', '\n', '\n', '        TESTS:\n', '\n', '        Check that the problem with applying ``full_simplify()`` to gamma\n', '        functions (:trac:`9240`) has been fixed::\n', '\n', '            sage: gamma(1/3)\n', '            gamma(1/3)\n', '            sage: gamma(1/3).full_simplify()\n', '            gamma(1/3)\n', '            sage: gamma(4/3)\n', '            gamma(4/3)\n', '            sage: gamma(4/3).full_simplify()\n', '            1/3*gamma(1/3)\n', '\n', '        """\n', '        return self.parent()(self._maxima_().makefact().factcomb().minfactorial())\n', '\n', '    factorial_simplify = simplify_factorial\n', '\n', '    def to_gamma(self):\n', '        """\n', '        Convert factorial, binomial, and Pochhammer symbol\n', '        expressions to their gamma function equivalents.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: m,n = var('m n', domain='integer')\n", '            sage: factorial(n).to_gamma()\n', '            gamma(n + 1)\n', '            sage: binomial(m,n).to_gamma()\n', '            gamma(m + 1)/(gamma(m - n + 1)*gamma(n + 1))\n', '        """\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = to_gamma(self._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def gamma_normalize(self):\n', '        """\n', '        Return the expression with any gamma functions that have\n', '        a common base converted to that base.\n', '\n', '        Additionally the expression is normalized so any fractions\n', '        can be simplified through cancellation.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: m,n = var('m n', domain='integer')\n", '            sage: (gamma(n+2)/gamma(n)).gamma_normalize()\n', '            (n + 1)*n\n', '            sage: (gamma(n+2)*gamma(n)).gamma_normalize()\n', '            (n + 1)*n*gamma(n)^2\n', '            sage: (gamma(n+2)*gamma(m-1)/gamma(n)/gamma(m+1)).gamma_normalize()\n', '            (n + 1)*n/((m - 1)*m)\n', '\n', '        Check that :trac:`22826` is fixed::\n', '\n', "            sage: _ = var('n')\n", '            sage: (n-1).gcd(n+1)\n', '            1\n', '            sage: ex = (n-1)^2*gamma(2*n+5)/gamma(n+3) + gamma(2*n+3)/gamma(n+1)\n', '            sage: ex.gamma_normalize()\n', '            (4*n^3 - 2*n^2 - 7*n + 7)*gamma(2*n + 3)/((n + 1)*gamma(n + 1))\n', '        """\n', '        cdef GEx x\n', '        sig_on()\n', '        try:\n', '            x = gamma_normalize(self._gobj)\n', '        finally:\n', '            sig_off()\n', '        return new_Expression_from_GEx(self._parent, x)\n', '\n', '    def expand_sum(self):\n', '        r"""\n', '        For every symbolic sum in the given expression, try to expand it,\n', '        symbolically or numerically.\n', '\n', '        While symbolic sum expressions with constant limits are evaluated\n', '        immediately on the command line, unevaluated sums of this kind can\n', '        result from, e.g., substitution of limit variables.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - symbolic expression\n', '\n', '        EXAMPLES::\n', '\n', "            sage: (k,n) = var('k,n')\n", '            sage: ex = sum(abs(-k*k+n),k,1,n)(n=8); ex\n', '            sum(abs(-k^2 + 8), k, 1, 8)\n', '            sage: ex.expand_sum()\n', '            162\n', '            sage: f(x,k) = sum((2/n)*(sin(n*x)*(-1)^(n+1)), n, 1, k)\n', '            sage: f(x,2)\n', '            -2*sum((-1)^n*sin(n*x)/n, n, 1, 2)\n', '            sage: f(x,2).expand_sum()\n', '            -sin(2*x) + 2*sin(x)\n', '\n', '        We can use this to do floating-point approximation as well::\n', '\n', "            sage: (k,n) = var('k,n')\n", '            sage: f(n)=sum(sqrt(abs(-k*k+n)),k,1,n)\n', '            sage: f(n=8)\n', '            sum(sqrt(abs(-k^2 + 8)), k, 1, 8)\n', '            sage: f(8).expand_sum()\n', '            sqrt(41) + sqrt(17) + 2*sqrt(14) + 3*sqrt(7) + 2*sqrt(2) + 3\n', '            sage: f(8).expand_sum().n()\n', '            31.7752256945384\n', '\n', '        See :trac:`9424` for making the following no longer raise\n', '        an error::\n', '\n', '            sage: f(8).n()\n', '            31.7752256945384\n', '        """\n', '        return self.parent()(self._maxima_().simplify_sum())\n', '\n', '    def canonicalize_radical(self):\n', '        r"""\n', '        Choose a canonical branch of the given expression. The square\n', '        root, cube root, natural log, etc. functions are multi-valued. The\n', '        ``canonicalize_radical()`` method will choose *one* of these values\n', '        based on a heuristic.\n', '\n', '        For example, ``sqrt(x^2)`` has two values: ``x``, and\n', '        ``-x``. The ``canonicalize_radical()`` function will choose\n', '        *one* of them, consistently, based on the behavior of the\n', '        expression as ``x`` tends to positive infinity. The solution\n', '        chosen is the one which exhibits this same behavior. Since\n', '        ``sqrt(x^2)`` approaches positive infinity as ``x`` does, the\n', '        solution chosen is ``x`` (which also tends to positive\n', '        infinity).\n', '\n', '        .. WARNING::\n', '\n', '            As shown in the examples below, a canonical form is not always\n', '            returned, i.e., two mathematically identical expressions might\n', '            be converted to different expressions.\n', '\n', '            Assumptions are not taken into account during the\n', '            transformation. This may result in a branch choice\n', '            inconsistent with your assumptions.\n', '\n', '        ALGORITHM:\n', '\n', '        This uses the Maxima ``radcan()`` command. From the Maxima\n', '        documentation:\n', '\n', '        .. pull-quote::\n', '\n', '            Simplifies an expression, which can contain logs,\n', '            exponentials, and radicals, by converting it into a form\n', '            which is canonical over a large class of expressions and a\n', '            given ordering of variables; that is, all functionally\n', '            equivalent forms are mapped into a unique form. For a\n', '            somewhat larger class of expressions, radcan produces a\n', '            regular form. Two equivalent expressions in this class do\n', '            not necessarily have the same appearance, but their\n', '            difference can be simplified by radcan to zero.\n', '\n', '            For some expressions radcan is quite time consuming. This\n', '            is the cost of exploring certain relationships among the\n', '            components of the expression for simplifications based on\n', '            factoring and partial fraction expansions of exponents.\n', '\n', '        EXAMPLES:\n', '\n', '        ``canonicalize_radical()`` can perform some of the same\n', '        manipulations as :meth:`log_expand`::\n', '\n', "            sage: y = SR.symbol('y')\n", '            sage: f = log(x*y)\n', '            sage: f.log_expand()\n', '            log(x) + log(y)\n', '            sage: f.canonicalize_radical()\n', '            log(x) + log(y)\n', '\n', '        And also handles some exponential functions::\n', '\n', '            sage: f = (e^x-1)/(1+e^(x/2))\n', '            sage: f.canonicalize_radical()\n', '            e^(1/2*x) - 1\n', '\n', '        It can also be used to change the base of a logarithm when the\n', '        arguments to ``log()`` are positive real numbers::\n', '\n', '            sage: f = log(8)/log(2)\n', '            sage: f.canonicalize_radical()\n', '            3\n', '\n', '        ::\n', '\n', "            sage: a = SR.symbol('a')\n", '            sage: f = (log(x+x^2)-log(x))^a/log(1+x)^(a/2)\n', '            sage: f.canonicalize_radical()\n', '            log(x + 1)^(1/2*a)\n', '\n', '        The simplest example of counter-intuitive behavior is what\n', '        happens when we take the square root of a square::\n', '\n', '            sage: sqrt(x^2).canonicalize_radical()\n', '            x\n', '\n', '        If you don\'t want this kind of "simplification," don\'t use\n', '        ``canonicalize_radical()``.\n', '\n', '        This behavior can also be triggered when the expression under\n', '        the radical is not given explicitly as a square::\n', '\n', '            sage: sqrt(x^2 - 2*x + 1).canonicalize_radical()\n', '            x - 1\n', '\n', '        Another place where this can become confusing is with\n', '        logarithms of complex numbers. Suppose ``x`` is complex with\n', '        ``x == r*e^(I*t)`` (``r`` real). Then ``log(x)`` is\n', '        ``log(r) + I*(t + 2*k*pi)`` for some integer ``k``.\n', '\n', '        Calling ``canonicalize_radical()`` will choose a branch,\n', '        eliminating the solutions for all choices of ``k`` but\n', '        one. Simplified by hand, the expression below is\n', '        ``(1/2)*log(2) + I*pi*k`` for integer ``k``. However,\n', '        ``canonicalize_radical()`` will take each log expression, and\n', '        choose one particular solution, dropping the other. When the\n', "        results are subtracted, we're left with no imaginary part::\n", '\n', '            sage: f = (1/2)*log(2*x) + (1/2)*log(1/x)\n', '            sage: f.canonicalize_radical()\n', '            1/2*log(2)\n', '\n', '        Naturally the result is wrong for some choices of ``x``::\n', '\n', '            sage: f(x = -1)\n', '            I*pi + 1/2*log(2)\n', '\n', '        The example below shows two expressions e1 and e2 which are\n', '        "simplified" to different expressions, while their difference\n', '        is "simplified" to zero; thus ``canonicalize_radical()`` does\n', '        not return a canonical form::\n', '\n', '            sage: e1 = 1/(sqrt(5)+sqrt(2))\n', '            sage: e2 = (sqrt(5)-sqrt(2))/3\n', '            sage: e1.canonicalize_radical()\n', '            1/(sqrt(5) + sqrt(2))\n', '            sage: e2.canonicalize_radical()\n', '            1/3*sqrt(5) - 1/3*sqrt(2)\n', '            sage: (e1-e2).canonicalize_radical()\n', '            0\n', '\n', '        The issue reported in :trac:`3520` is a case where\n', '        ``canonicalize_radical()`` causes a numerical integral to be\n', '        calculated incorrectly::\n', '\n', '            sage: f1 = sqrt(25 - x) * sqrt( 1 + 1/(4*(25-x)) )\n', '            sage: f2 = f1.canonicalize_radical()\n', '            sage: numerical_integral(f1.real(), 0, 1)[0] # abs tol 1e-10\n', '            4.974852579915647\n', '            sage: numerical_integral(f2.real(), 0, 1)[0] # abs tol 1e-10\n', '            -4.974852579915647\n', '\n', '        TESTS:\n', '\n', '        This tests that :trac:`11668` has been fixed (by :trac:`12780`)::\n', '\n', "            sage: a,b = var('a b', domain='real')\n", '            sage: A = abs((a+I*b))^2\n', '            sage: imag(A)\n', '            0\n', '            sage: A.canonicalize_radical() # not implemented\n', '            a^2 + b^2\n', '            sage: imag(A.canonicalize_radical())\n', '            0\n', '        """\n', '        from sage.calculus.calculus import maxima\n', '        return self.parent()(self._maxima_().radcan())\n', '\n', '    def simplify_log(self, algorithm=None):\n', '        r"""\n', '        Simplify a (real) symbolic expression that contains logarithms.\n', '\n', '        The given expression is scanned recursively, transforming\n', '        subexpressions of the form `a \\log(b) + c \\log(d)` into\n', '        `\\log(b^{a} d^{c})` before simplifying within the ``log()``.\n', '\n', '        The user can specify conditions that `a` and `c` must satisfy\n', '        before this transformation will be performed using the optional\n', '        parameter ``algorithm``.\n', '\n', '        .. WARNING::\n', '\n', '            This is only safe to call if every variable in the given\n', '            expression is assumed to be real. The simplification it performs\n', '            is in general not valid over the complex numbers. For example::\n', '\n', "                sage: x,y = SR.var('x,y')\n", '                sage: f = log(x*y) - (log(x) + log(y))\n', '                sage: f(x=-1, y=i)\n', '                -2*I*pi\n', '                sage: f.simplify_log()\n', '                0\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - expression to be simplified\n', '\n', '        - ``algorithm`` - (default: None) optional, governs the condition\n', '          on `a` and `c` which must be satisfied to contract expression\n', '          `a \\log(b) + c \\log(d)`. Values are\n', '\n', '          - ``None`` (use Maxima default, integers),\n', '\n', "          - ``'one'`` (1 and -1),\n", '\n', "          - ``'ratios'`` (rational numbers),\n", '\n', "          - ``'constants'`` (constants),\n", '\n', "          - ``'all'`` (all expressions).\n", '\n', '        ALGORITHM:\n', '\n', '        This uses the Maxima ``logcontract()`` command.\n', '\n', '        ALIAS:\n', '\n', '        :meth:`log_simplify` and :meth:`simplify_log` are the same.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y,t=var('x y t')\n", '\n', '        Only two first terms are contracted in the following example;\n', '        the logarithm with coefficient `\\frac{1}{2}` is not contracted::\n', '\n', '            sage: f = log(x)+2*log(y)+1/2*log(t)\n', '            sage: f.simplify_log()\n', '            log(x*y^2) + 1/2*log(t)\n', '\n', '        To contract all terms in the previous example, we use the\n', "        ``'ratios'`` ``algorithm``::\n", '\n', "            sage: f.simplify_log(algorithm='ratios')\n", '            log(sqrt(t)*x*y^2)\n', '\n', '        To contract terms with no coefficient (more precisely, with\n', "        coefficients `1` and `-1`), we use the ``'one'``\n", '        ``algorithm``::\n', '\n', '            sage: f = log(x)+2*log(y)-log(t)\n', "            sage: f.simplify_log('one')\n", '            2*log(y) + log(x/t)\n', '\n', '        ::\n', '\n', '            sage: f = log(x)+log(y)-1/3*log((x+1))\n', '            sage: f.simplify_log()\n', '            log(x*y) - 1/3*log(x + 1)\n', '\n', "            sage: f.simplify_log('ratios')\n", '            log(x*y/(x + 1)^(1/3))\n', '\n', '        `\\pi` is an irrational number; to contract logarithms in the\n', "        following example we have to set ``algorithm`` to ``'constants'``\n", "        or ``'all'``::\n", '\n', '            sage: f = log(x)+log(y)-pi*log((x+1))\n', "            sage: f.simplify_log('constants')\n", '            log(x*y/(x + 1)^pi)\n', '\n', "        ``x*log(9)`` is contracted only if ``algorithm`` is ``'all'``::\n", '\n', '            sage: (x*log(9)).simplify_log()\n', '            2*x*log(3)\n', "            sage: (x*log(9)).simplify_log('all')\n", '            log(3^(2*x))\n', '\n', '        TESTS:\n', '\n', '        Ensure that the option ``algorithm`` from one call has no\n', '        influence upon future calls (a Maxima flag was set, and we have\n', '        to ensure that its value has been restored)::\n', '\n', '            sage: f = log(x)+2*log(y)+1/2*log(t)\n', "            sage: f.simplify_log('one')\n", '            1/2*log(t) + log(x) + 2*log(y)\n', '\n', "            sage: f.simplify_log('ratios')\n", '            log(sqrt(t)*x*y^2)\n', '\n', '            sage: f.simplify_log()\n', '            log(x*y^2) + 1/2*log(t)\n', '\n', '        This shows that the issue at :trac:`7334` is fixed. Maxima\n', '        intentionally keeps the expression inside the log factored::\n', '\n', '            sage: log_expr = (log(sqrt(2)-1)+log(sqrt(2)+1))\n', "            sage: log_expr.simplify_log('all')\n", '            log((sqrt(2) + 1)*(sqrt(2) - 1))\n', '            sage: _.simplify_rational()\n', '            0\n', '\n', '        We should use the current simplification domain rather than\n', "        set it to 'real' explicitly (:trac:`12780`)::\n", '\n', '            sage: f = sqrt(x^2)\n', '            sage: f.simplify_log()\n', '            sqrt(x^2)\n', '            sage: from sage.calculus.calculus import maxima\n', "            sage: maxima('domain: real;')\n", '            real\n', '            sage: f.simplify_log()\n', '            abs(x)\n', "            sage: maxima('domain: complex;')\n", '            complex\n', '\n', '        AUTHORS:\n', '\n', '        - Robert Marik (11-2009)\n', '        """\n', '        from sage.calculus.calculus import maxima\n', "        maxima.eval('savelogexpand:logexpand$ logexpand:false$')\n", '        if algorithm is not None:\n', "            maxima.eval('logconcoeffp:\\'logconfun$')\n", "        if algorithm == 'ratios':\n", "            maxima.eval('logconfun(m):= featurep(m,integer) or ratnump(m)$')\n", "        elif algorithm == 'one':\n", "            maxima.eval('logconfun(m):= is(m=1) or is(m=-1)$')\n", "        elif algorithm == 'constants':\n", "            maxima.eval('logconfun(m):= constantp(m)$')\n", "        elif algorithm == 'all':\n", "            maxima.eval('logconfun(m):= true$')\n", '        elif algorithm is not None:\n', '            raise NotImplementedError("unknown algorithm, see the help for available algorithms")\n', '        res = self.parent()(self._maxima_().logcontract())\n', '        if algorithm is not None:\n', "            maxima.eval('logconcoeffp:false$')\n", "        maxima.eval('logexpand:savelogexpand$')\n", '        return res\n', '\n', '    log_simplify = simplify_log\n', '\n', "    def expand_log(self,algorithm='products'):\n", '        r"""\n', '        Simplify symbolic expression, which can contain logs.\n', '\n', '        Expands logarithms of powers, logarithms of products and\n', '        logarithms of quotients.  The option ``algorithm`` specifies\n', '        which expression types should be expanded.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - expression to be simplified\n', '\n', "        - ``algorithm`` - (default: 'products') optional, governs which\n", '          expression is expanded. Possible values are\n', '\n', "          - 'nothing' (no expansion),\n", '\n', "          - 'powers' (log(a^r) is expanded),\n", '\n', "          - 'products' (like 'powers' and also log(a*b) are expanded),\n", '\n', "          - 'all' (all possible expansion).\n", '\n', '          See also examples below.\n', '\n', '        DETAILS: This uses the Maxima simplifier and sets\n', '        ``logexpand`` option for this simplifier. From the Maxima\n', '        documentation: "Logexpand:true causes log(a^b) to become\n', '        b*log(a). If it is set to all, log(a*b) will also simplify to\n', '        log(a)+log(b). If it is set to super, then log(a/b) will also\n', '        simplify to log(a)-log(b) for rational numbers a/b,\n', '        a#1. (log(1/b), for integer b, always simplifies.) If it is\n', '        set to false, all of these simplifications will be turned\n', '        off. "\n', '\n', '        ALIAS: :meth:`log_expand` and :meth:`expand_log` are the same\n', '\n', '        EXAMPLES:\n', '\n', '        By default powers and products (and quotients) are expanded,\n', '        but not quotients of integers::\n', '\n', '            sage: (log(3/4*x^pi)).log_expand()\n', '            pi*log(x) + log(3/4)\n', '\n', "        To expand also log(3/4) use ``algorithm='all'``::\n", '\n', "            sage: (log(3/4*x^pi)).log_expand('all')\n", '            pi*log(x) + log(3) - 2*log(2)\n', '\n', "        To expand only the power use ``algorithm='powers'``.::\n", '\n', "            sage: (log(x^6)).log_expand('powers')\n", '            6*log(x)\n', '\n', '        The expression ``log((3*x)^6)`` is not expanded with\n', "        ``algorithm='powers'``, since it is converted into product\n", '        first::\n', '\n', "            sage: (log((3*x)^6)).log_expand('powers')\n", '            log(729*x^6)\n', '\n', '        This shows that the option ``algorithm`` from the previous call\n', '        has no influence to future calls (we changed some default\n', '        Maxima flag, and have to ensure that this flag has been\n', '        restored)::\n', '\n', '            sage: (log(3/4*x^pi)).log_expand()\n', '            pi*log(x) + log(3/4)\n', '\n', "            sage: (log(3/4*x^pi)).log_expand('all')\n", '            pi*log(x) + log(3) - 2*log(2)\n', '\n', '            sage: (log(3/4*x^pi)).log_expand()\n', '            pi*log(x) + log(3/4)\n', '\n', '        TESTS:\n', '\n', '        Most of these log expansions only make sense over the\n', '        reals. So, we should set the Maxima ``domain`` variable to\n', "        'real' before we call out to Maxima. When we return, however, we\n", '        should set the ``domain`` back to what it was, rather than\n', "        assuming that it was 'complex'. See :trac:`12780`::\n", '\n', '            sage: from sage.calculus.calculus import maxima\n', "            sage: maxima('domain: real;')\n", '            real\n', '            sage: x.expand_log()\n', '            x\n', "            sage: maxima('domain;')\n", '            real\n', "            sage: maxima('domain: complex;')\n", '            complex\n', '\n', '        AUTHORS:\n', '\n', '        - Robert Marik (11-2009)\n', '        """\n', '        from sage.calculus.calculus import maxima\n', "        original_domain = maxima.eval('domain')\n", "        maxima.eval('domain: real$ savelogexpand:logexpand$')\n", "        if algorithm == 'nothing':\n", "            maxima_method='false'\n", "        elif algorithm == 'powers':\n", "            maxima_method='true'\n", "        elif algorithm == 'products':\n", "            maxima_method='all'\n", "        elif algorithm == 'all':\n", "            maxima_method='super'\n", '        else:\n', '            raise NotImplementedError("unknown algorithm, see the help for available algorithms")\n', "        maxima.eval('logexpand:%s'%maxima_method)\n", '        res = self._maxima_()\n', '        res = res.sage()\n', '        # Set the domain back to what it was before expand_log() was called.\n', "        maxima.eval('domain: %s$ logexpand:savelogexpand$' % original_domain)\n", '        return res\n', '\n', '    log_expand = expand_log\n', '\n', '    def distribute(self, recursive=True):\n', '        """\n', '        Distribute some indexed operators over similar operators in\n', '        order to allow further groupings or simplifications.\n', '\n', '        Implemented cases (so far):\n', '\n', '        - Symbolic sum of a sum ==> sum of symbolic sums\n', '\n', '        - Integral (definite or not) of a sum ==> sum of integrals.\n', '\n', '        - Symbolic product of a product ==> product of symbolic products.\n', '\n', '        INPUT:\n', '\n', '        - ``recursive`` -- (default : True) the distribution proceeds\n', '          along the subtrees of the expression.\n', '\n', '        TESTS:\n', '\n', '            sage: var("j,k,p,q", domain="integer")\n', '            (j, k, p, q)\n', '            sage: X,Y,Z,f,g=function("X,Y,Z,f,g")\n', '            sage: var("x,a,b")\n', '            (x, a, b)\n', '            sage: sum(X(j)+Y(j),j,1,p)\n', '            sum(X(j) + Y(j), j, 1, p)\n', '            sage: sum(X(j)+Y(j),j,1,p).distribute()\n', '            sum(X(j), j, 1, p) + sum(Y(j), j, 1, p)\n', '            sage: integrate(f(x)+g(x),x)\n', '            integrate(f(x) + g(x), x)\n', '            sage: integrate(f(x)+g(x),x).distribute()\n', '            integrate(f(x), x) + integrate(g(x), x)\n', '            sage: integrate(f(x)+g(x),x,a,b)\n', '            integrate(f(x) + g(x), x, a, b)\n', '            sage: integrate(f(x)+g(x),x,a,b).distribute()\n', '            integrate(f(x), x, a, b) + integrate(g(x), x, a, b)\n', '            sage: sum(X(j)+sum(Y(k)+Z(k),k,1,q),j,1,p)\n', '            sum(X(j) + sum(Y(k) + Z(k), k, 1, q), j, 1, p)\n', '            sage: sum(X(j)+sum(Y(k)+Z(k),k,1,q),j,1,p).distribute()\n', '            sum(sum(Y(k), k, 1, q) + sum(Z(k), k, 1, q), j, 1, p) + sum(X(j), j, 1, p)\n', '            sage: sum(X(j)+sum(Y(k)+Z(k),k,1,q),j,1,p).distribute(recursive=False)\n', '            sum(X(j), j, 1, p) + sum(sum(Y(k) + Z(k), k, 1, q), j, 1, p)\n', '            sage: maxima("product(X(j)*Y(j),j,1,p)").sage()\n', '            product(X(j)*Y(j), j, 1, p)\n', '            sage: maxima("product(X(j)*Y(j),j,1,p)").sage().distribute()\n', '            product(X(j), j, 1, p)*product(Y(j), j, 1, p)\n', '\n', '\n', '        AUTHORS:\n', '\n', '        - Emmanuel Charpentier, Ralf Stephan (05-2017)\n', '        """\n', '        from sage.functions.other import symbolic_sum as opsum, \\\n', '            symbolic_product as opprod\n', '        from sage.symbolic.integration.integral \\\n', '            import indefinite_integral as opii, definite_integral as opdi\n', '        from sage.symbolic.operators import add_vararg as opadd, \\\n', '            mul_vararg as opmul\n', '        from sage.misc.misc_c import prod\n', '\n', '        def treat_term(op, term, args):\n', '            l = sage.all.copy(args)\n', '            l.insert(0, term)\n', '            return op(*l)\n', '\n', '        if self.parent() is not sage.all.SR:\n', '            return self\n', '\n', '        op = self.operator()\n', '        if op is None:\n', '            return self\n', '\n', '        if op in {opsum, opdi, opii}:\n', '            sa = self.operands()[0].expand()\n', '            op1 = sa.operator()\n', '            if op1 is opadd:\n', '                la = self.operands()[1:]\n', '                aa = sa.operands()\n', '                if recursive:\n', '                    return sum(treat_term(op, t.distribute(), la) for t in aa)\n', '                return sum(treat_term(op, t, la) for t in aa)\n', '            return self\n', '        if op is opprod:\n', '            sa = self.operands()[0].expand()\n', '            op1 = sa.operator()\n', '            if op1 is opmul:\n', '                la = self.operands()[1:]\n', '                aa = sa.operands()\n', '                if recursive:\n', '                    return prod(treat_term(op, t.distribute(), la) for t in aa)\n', '                return prod(treat_term(op, t, la) for t in aa)\n', '            return self\n', '\n', '        if recursive:\n', '            done = [t.distribute() for t in self.operands()]\n', '            return op(*done)\n', '        return self\n', '\n', '    def factor(self, dontfactor=[]):\n', '        """\n', '        Factor the expression, containing any number of variables or functions, into\n', '        factors irreducible over the integers.\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``self`` - a symbolic expression\n', '\n', '        -  ``dontfactor`` - list (default: []), a list of\n', '           variables with respect to which factoring is not to occur.\n', '           Factoring also will not take place with respect to any variables\n', '           which are less important (using the variable ordering assumed for\n', "           CRE form) than those on the 'dontfactor' list.\n", '\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y,z = var('x, y, z')\n", '            sage: (x^3-y^3).factor()\n', '            (x^2 + x*y + y^2)*(x - y)\n', '            sage: factor(-8*y - 4*x + z^2*(2*y + x))\n', '            (x + 2*y)*(z + 2)*(z - 2)\n', '            sage: f = -1 - 2*x - x^2 + y^2 + 2*x*y^2 + x^2*y^2\n', '            sage: F = factor(f/(36*(1 + 2*y + y^2)), dontfactor=[x]); F\n', '            1/36*(x^2 + 2*x + 1)*(y - 1)/(y + 1)\n', '\n', '        If you are factoring a polynomial with rational coefficients (and\n', '        dontfactor is empty) the factorization is done using Singular\n', '        instead of Maxima, so the following is very fast instead of\n', '        dreadfully slow::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: (x^99 + y^99).factor()\n', '            (x^60 + x^57*y^3 - x^51*y^9 - x^48*y^12 + x^42*y^18 + x^39*y^21 -\n', '            x^33*y^27 - x^30*y^30 - x^27*y^33 + x^21*y^39 + x^18*y^42 -\n', '            x^12*y^48 - x^9*y^51 + x^3*y^57 + y^60)*(x^20 + x^19*y -\n', '            x^17*y^3 - x^16*y^4 + x^14*y^6 + x^13*y^7 - x^11*y^9 -\n', '            x^10*y^10 - x^9*y^11 + x^7*y^13 + x^6*y^14 - x^4*y^16 -\n', '            x^3*y^17 + x*y^19 + y^20)*(x^10 - x^9*y + x^8*y^2 - x^7*y^3 +\n', '            x^6*y^4 - x^5*y^5 + x^4*y^6 - x^3*y^7 + x^2*y^8 - x*y^9 +\n', '            y^10)*(x^6 - x^3*y^3 + y^6)*(x^2 - x*y + y^2)*(x + y)\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`21529` is fixed::\n', '\n', "            sage: f(x) = function('f')(x)\n", '            sage: (f(x).diff(x)^2-1).factor()\n', '            (diff(f(x), x) + 1)*(diff(f(x), x) - 1)\n', '\n', '        Check that :trac:`27304` is fixed::\n', '\n', '            sage: factor(2*exp(x) + exp(-x))\n', '            (2*e^(2*x) + 1)*e^(-x)\n', '            sage: factor(x*exp(-x) + exp(-x))\n', '            (x + 1)*e^(-x)\n', '            sage: factor(x + sqrt(x))\n', '            x + sqrt(x)\n', '            sage: factor((x + sqrt(x))/(x - sqrt(x)))\n', '            (x + sqrt(x))/(x - sqrt(x))\n', '        """\n', '        from sage.calculus.calculus import symbolic_expression_from_maxima_string\n', '        cdef GEx x\n', '        cdef bint b\n', '        if dontfactor or not self.is_rational_expression():\n', '            m = self._maxima_()\n', '            name = m.name()\n', "            varstr = ','.join(['_SAGE_VAR_' + str(v) for v in dontfactor])\n", "            cmd = 'block([dontfactor:[%s]],factor(%s))' % (varstr, name)\n", '            return symbolic_expression_from_maxima_string(cmd)\n', '        sig_on()\n', '        try:\n', '            b = g_factor(self._gobj, x)\n', '        finally:\n', '            sig_off()\n', '        if b:\n', '            return new_Expression_from_GEx(self._parent, x)\n', '        else:\n', '            return self\n', '\n', '    def factor_list(self, dontfactor=[]):\n', '        """\n', '        Return a list of the factors of self, as computed by the\n', '        factor command.\n', '\n', '        INPUT:\n', '\n', '        -  ``self`` - a symbolic expression\n', '\n', '        -  ``dontfactor`` - see docs for :meth:`factor`\n', '\n', '        .. NOTE::\n', '\n', '           If you already have a factored expression and just want to\n', '           get at the individual factors, use the ``_factor_list`` method\n', '           instead.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y, z')\n", '            (x, y, z)\n', '            sage: f = x^3-y^3\n', '            sage: f.factor()\n', '            (x^2 + x*y + y^2)*(x - y)\n', '\n', '        Notice that the -1 factor is separated out::\n', '\n', '            sage: f.factor_list()\n', '            [(x^2 + x*y + y^2, 1), (x - y, 1)]\n', '\n', '        We factor a fairly straightforward expression::\n', '\n', '            sage: factor(-8*y - 4*x + z^2*(2*y + x)).factor_list()\n', '            [(x + 2*y, 1), (z + 2, 1), (z - 2, 1)]\n', '\n', '        A more complicated example::\n', '\n', "            sage: var('x, u, v')\n", '            (x, u, v)\n', '            sage: f = expand((2*u*v^2-v^2-4*u^3)^2 * (-u)^3 * (x-sin(x))^3)\n', '            sage: f.factor()\n', '            -(4*u^3 - 2*u*v^2 + v^2)^2*u^3*(x - sin(x))^3\n', '            sage: g = f.factor_list(); g\n', '            [(4*u^3 - 2*u*v^2 + v^2, 2), (u, 3), (x - sin(x), 3), (-1, 1)]\n', '\n', '        This function also works for quotients::\n', '\n', '            sage: f = -1 - 2*x - x^2 + y^2 + 2*x*y^2 + x^2*y^2\n', '            sage: g = f/(36*(1 + 2*y + y^2)); g\n', '            1/36*(x^2*y^2 + 2*x*y^2 - x^2 + y^2 - 2*x - 1)/(y^2 + 2*y + 1)\n', '            sage: g.factor(dontfactor=[x])\n', '            1/36*(x^2 + 2*x + 1)*(y - 1)/(y + 1)\n', '            sage: g.factor_list(dontfactor=[x])\n', '            [(x^2 + 2*x + 1, 1), (y + 1, -1), (y - 1, 1), (1/36, 1)]\n', '\n', '        This example also illustrates that the exponents do not have to be\n', '        integers::\n', '\n', '            sage: f = x^(2*sin(x)) * (x-1)^(sqrt(2)*x); f\n', '            (x - 1)^(sqrt(2)*x)*x^(2*sin(x))\n', '            sage: f.factor_list()\n', '            [(x - 1, sqrt(2)*x), (x, 2*sin(x))]\n', '        """\n', '        return self.factor(dontfactor=dontfactor)._factor_list()\n', '\n', '    def _factor_list(self):\n', '        r"""\n', '        Turn an expression already in factored form into a list of (prime,\n', '        power) pairs.\n', '\n', '        This is used, e.g., internally by the :meth:`factor_list`\n', '        command.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: g = factor(x^3 - 1); g\n', '            (x^2 + x + 1)*(x - 1)\n', '            sage: v = g._factor_list(); v\n', '            [(x^2 + x + 1, 1), (x - 1, 1)]\n', '            sage: type(v)\n', "            <... 'list'>\n", '        """\n', '        op = self.operator()\n', '        if op is mul_vararg:\n', '            return sum([f._factor_list() for f in self.operands()], [])\n', '        elif op is operator.pow:\n', '            return [tuple(self.operands())]\n', '        else:\n', '            return [(self, 1)]\n', '\n', '    ###################################################################\n', '    # Units\n', '    ###################################################################\n', '    def convert(self, target=None):\n', '        """\n', '        Call the convert function in the units package. For symbolic\n', '        variables that are not units, this function just returns the\n', '        variable.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` -- the symbolic expression converting from\n', '        - ``target`` -- (default None) the symbolic expression\n', '          converting to\n', '\n', '        OUTPUT:\n', '\n', '        A symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: units.length.foot.convert()\n', '            381/1250*meter\n', '            sage: units.mass.kilogram.convert(units.mass.pound)\n', '            100000000/45359237*pound\n', '\n', '        We do not get anything new by converting an ordinary symbolic variable::\n', '\n', "            sage: a = var('a')\n", '            sage: a - a.convert()\n', '            0\n', '\n', '        Raises ValueError if self and target are not convertible::\n', '\n', '            sage: units.mass.kilogram.convert(units.length.foot)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Incompatible units\n', '            sage: (units.length.meter^2).convert(units.length.foot)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Incompatible units\n', '\n', '        Recognizes derived unit relationships to base units and other\n', '        derived units::\n', '\n', '            sage: (units.length.foot/units.time.second^2).convert(units.acceleration.galileo)\n', '            762/25*galileo\n', '            sage: (units.mass.kilogram*units.length.meter/units.time.second^2).convert(units.force.newton)\n', '            newton\n', '            sage: (units.length.foot^3).convert(units.area.acre*units.length.inch)\n', '            1/3630*(acre*inch)\n', '            sage: (units.charge.coulomb).convert(units.current.ampere*units.time.second)\n', '            (ampere*second)\n', '            sage: (units.pressure.pascal*units.si_prefixes.kilo).convert(units.pressure.pounds_per_square_inch)\n', '            1290320000000/8896443230521*pounds_per_square_inch\n', '\n', '        For decimal answers multiply by 1.0::\n', '\n', '            sage: (units.pressure.pascal*units.si_prefixes.kilo).convert(units.pressure.pounds_per_square_inch)*1.0\n', '            0.145037737730209*pounds_per_square_inch\n', '\n', '        Converting temperatures works as well::\n', '\n', '            sage: s = 68*units.temperature.fahrenheit\n', '            sage: s.convert(units.temperature.celsius)\n', '            20*celsius\n', '            sage: s.convert()\n', '            293.150000000000*kelvin\n', '\n', '        Trying to multiply temperatures by another unit then converting\n', '        raises a ValueError::\n', '\n', '            sage: wrong = 50*units.temperature.celsius*units.length.foot\n', '            sage: wrong.convert()\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Cannot convert\n', '        """\n', '        from . import units\n', '        return units.convert(self, target)\n', '\n', '    ###################################################################\n', '    # solve\n', '    ###################################################################\n', '    def roots(self, x=None, explicit_solutions=True, multiplicities=True, ring=None):\n', '        r"""\n', '        Return roots of ``self`` that can be found exactly,\n', '        possibly with multiplicities.  Not all roots are guaranteed to\n', '        be found.\n', '\n', '        .. warning::\n', '\n', '           This is *not* a numerical solver - use ``find_root`` to\n', '           solve for self == 0 numerically on an interval.\n', '\n', '        INPUT:\n', '\n', '        - ``x`` - variable to view the function in terms of\n', '          (use default variable if not given)\n', '\n', '        - ``explicit_solutions`` - bool (default True); require that\n', '          roots be explicit rather than implicit\n', '\n', '        - ``multiplicities`` - bool (default True); when True, return\n', '          multiplicities\n', '\n', '        - ``ring`` - a ring (default None): if not None, convert\n', '          self to a polynomial over ring and find roots over ring\n', '\n', '        OUTPUT:\n', '\n', '        A list of pairs ``(root, multiplicity)`` or list of roots.\n', '\n', '        If there are infinitely many roots, e.g., a function like\n', '        `\\sin(x)`, only one is returned.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, a')\n", '            (x, a)\n', '\n', '        A simple example::\n', '\n', '            sage: ((x^2-1)^2).roots()\n', '            [(-1, 2), (1, 2)]\n', '            sage: ((x^2-1)^2).roots(multiplicities=False)\n', '            [-1, 1]\n', '\n', '        A complicated example::\n', '\n', '            sage: f = expand((x^2 - 1)^3*(x^2 + 1)*(x-a)); f\n', '            -a*x^8 + x^9 + 2*a*x^6 - 2*x^7 - 2*a*x^2 + 2*x^3 + a - x\n', '\n', '        The default variable is `a`, since it is the first in\n', '        alphabetical order::\n', '\n', '            sage: f.roots()\n', '            [(x, 1)]\n', '\n', '        As a polynomial in `a`, `x` is indeed a root::\n', '\n', '            sage: f.poly(a)\n', '            x^9 - 2*x^7 + 2*x^3 - (x^8 - 2*x^6 + 2*x^2 - 1)*a - x\n', '            sage: f(a=x)\n', '            0\n', '\n', '        The roots in terms of `x` are what we expect::\n', '\n', '            sage: f.roots(x)\n', '            [(a, 1), (-I, 1), (I, 1), (1, 3), (-1, 3)]\n', '\n', '        Only one root of `\\sin(x) = 0` is given::\n', '\n', '            sage: f = sin(x)\n', '            sage: f.roots(x)\n', '            [(0, 1)]\n', '\n', '        .. NOTE::\n', '\n', '            It is possible to solve a greater variety of equations\n', '            using ``solve()`` and the keyword ``to_poly_solve``,\n', '            but only at the price of possibly encountering\n', '            approximate solutions.  See documentation for f.solve\n', '            for more details.\n', '\n', '        We derive the roots of a general quadratic polynomial::\n', '\n', "            sage: var('a,b,c,x')\n", '            (a, b, c, x)\n', '            sage: (a*x^2 + b*x + c).roots(x)\n', '            [(-1/2*(b + sqrt(b^2 - 4*a*c))/a, 1), (-1/2*(b - sqrt(b^2 - 4*a*c))/a, 1)]\n', '\n', '        By default, all the roots are required to be explicit rather than\n', '        implicit. To get implicit roots, pass ``explicit_solutions=False``\n', '        to ``.roots()`` ::\n', '\n', "            sage: var('x')\n", '            x\n', '            sage: f = x^(1/9) + (2^(8/9) - 2^(1/9))*(x - 1) - x^(8/9)\n', '            sage: f.roots()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: no explicit roots found\n', '            sage: f.roots(explicit_solutions=False)\n', '            [((2^(8/9) + x^(8/9) - 2^(1/9) - x^(1/9))/(2^(8/9) - 2^(1/9)), 1)]\n', '\n', '        Another example, but involving a degree 5 poly whose roots do not\n', '        get computed explicitly::\n', '\n', '            sage: f = x^5 + x^3 + 17*x + 1\n', '            sage: f.roots()\n', '            Traceback (most recent call last):\n', '            ...\n', '            RuntimeError: no explicit roots found\n', '            sage: f.roots(explicit_solutions=False)\n', '            [(x^5 + x^3 + 17*x + 1, 1)]\n', '            sage: f.roots(explicit_solutions=False, multiplicities=False)\n', '            [x^5 + x^3 + 17*x + 1]\n', '\n', '        Now let us find some roots over different rings::\n', '\n', '            sage: f.roots(ring=CC)\n', '            [(-0.0588115223184..., 1), (-1.331099917875... - 1.52241655183732*I, 1), (-1.331099917875... + 1.52241655183732*I, 1), (1.36050567903502 - 1.51880872209965*I, 1), (1.36050567903502 + 1.51880872209965*I, 1)]\n', '            sage: (2.5*f).roots(ring=RR)\n', '            [(-0.058811522318449..., 1)]\n', '            sage: f.roots(ring=CC, multiplicities=False)\n', '            [-0.05881152231844..., -1.331099917875... - 1.52241655183732*I, -1.331099917875... + 1.52241655183732*I, 1.36050567903502 - 1.51880872209965*I, 1.36050567903502 + 1.51880872209965*I]\n', '            sage: f.roots(ring=QQ)\n', '            []\n', '            sage: f.roots(ring=QQbar, multiplicities=False)\n', '            [-0.05881152231844944?, -1.331099917875796? - 1.522416551837318?*I, -1.331099917875796? + 1.522416551837318?*I, 1.360505679035020? - 1.518808722099650?*I, 1.360505679035020? + 1.518808722099650?*I]\n', '\n', '        Root finding over finite fields::\n', '\n', "            sage: f.roots(ring=GF(7^2, 'a'))\n", '            [(3, 1), (4*a + 6, 2), (3*a + 3, 2)]\n', '\n', '        TESTS::\n', '\n', '            sage: (sqrt(3) * f).roots(ring=QQ)\n', '            Traceback (most recent call last):\n', '            ...\n', '            TypeError: unable to convert sqrt(3) to a rational\n', '\n', '        Check if :trac:`9538` is fixed::\n', '\n', "            sage: var('f6,f5,f4,x')\n", '            (f6, f5, f4, x)\n', '            sage: e=15*f6*x^2 + 5*f5*x + f4\n', '            sage: res = e.roots(x); res\n', '            [(-1/30*(5*f5 + sqrt(25*f5^2 - 60*f4*f6))/f6, 1), (-1/30*(5*f5 - sqrt(25*f5^2 - 60*f4*f6))/f6, 1)]\n', '            sage: e.subs(x=res[0][0]).is_zero()\n', '            True\n', '        """\n', '        if x is None:\n', '            x = self.default_variable()\n', '        if ring is not None:\n', '            p = self.polynomial(ring)\n', '            return p.roots(ring=ring, multiplicities=multiplicities)\n', '\n', '        S, mul = self.solve(x, multiplicities=True, explicit_solutions=explicit_solutions)\n', '        if len(mul) == 0 and explicit_solutions:\n', '            raise RuntimeError("no explicit roots found")\n', '        else:\n', '            rt_muls = [(S[i].rhs(), mul[i]) for i in range(len(mul))]\n', '        if multiplicities:\n', '            return rt_muls\n', '        else:\n', '            return [ rt for rt, mul in rt_muls ]\n', '\n', '    def solve(self, x, multiplicities=False, solution_dict=False, explicit_solutions=False, to_poly_solve=False, algorithm=None, domain=None):\n', '        r"""\n', '        Analytically solve the equation ``self == 0`` or a univariate\n', '        inequality for the variable `x`.\n', '\n', '        .. warning::\n', '\n', '           This is not a numerical solver - use ``find_root`` to solve\n', '           for self == 0 numerically on an interval.\n', '\n', '        INPUT:\n', '\n', '        -  ``x`` - variable(s) to solve for\n', '\n', '        -  ``multiplicities`` - bool (default: False); if True,\n', '           return corresponding multiplicities.  This keyword is\n', '           incompatible with ``to_poly_solve=True`` and does not make\n', '           any sense when solving an inequality.\n', '\n', '        -  ``solution_dict`` - bool (default: False); if True or non-zero,\n', '           return a list of dictionaries containing solutions. Not used\n', '           when solving an inequality.\n', '\n', '        -  ``explicit_solutions`` - bool (default: False); require that\n', '           all roots be explicit rather than implicit. Not used\n', '           when solving an inequality.\n', '\n', '        -  ``to_poly_solve`` - bool (default: False) or string; use\n', "           Maxima's ``to_poly_solver`` package to search for more possible\n", '           solutions, but possibly encounter approximate solutions.\n', '           This keyword is incompatible with ``multiplicities=True``\n', '           and is not used when solving an inequality. Setting ``to_poly_solve``\n', "           to ``'force'`` omits Maxima's solve command (useful when\n", '           some solutions of trigonometric equations are lost).\n', '\n', '        EXAMPLES::\n', '\n', "            sage: z = var('z')\n", '            sage: (z^5 - 1).solve(z)\n', '            [z == 1/4*sqrt(5) + 1/4*I*sqrt(2*sqrt(5) + 10) - 1/4, z == -1/4*sqrt(5) + 1/4*I*sqrt(-2*sqrt(5) + 10) - 1/4, z == -1/4*sqrt(5) - 1/4*I*sqrt(-2*sqrt(5) + 10) - 1/4, z == 1/4*sqrt(5) - 1/4*I*sqrt(2*sqrt(5) + 10) - 1/4, z == 1]\n', '\n', '            sage: solve((z^3-1)^3, z, multiplicities=True)\n', '            ([z == 1/2*I*sqrt(3) - 1/2, z == -1/2*I*sqrt(3) - 1/2, z == 1], [3, 3, 3])\n', '\n', '        TESTS:\n', '\n', '        Check that :trac:`20755` is indeed fixed::\n', '\n', '            sage: w = x^4 - (1+3*i)*x^3 - (2-4*i)*x^2 + (6-2*i)*x - 4 - 4*i\n', '            sage: w.solve(x,multiplicities=True)\n', '            ([x == -1/2*sqrt(2*I) + 3/2*I - 1/2, x == 1/2*sqrt(2*I) + 3/2*I - 1/2, x == (-I + 1), x == (I + 1)],\n', '             [1, 1, 1, 1])\n', '\n', '        See :func:`sage.symbolic.relation.solve` or the output of ``solve?``\n', '        for extensive documentation.\n', '        """\n', '        from sage.symbolic.relation import solve\n', '        return solve(self, x, multiplicities=multiplicities,\n', '                              solution_dict=solution_dict,\n', '                              explicit_solutions=explicit_solutions,\n', '                              to_poly_solve=to_poly_solve,\n', '                              algorithm=algorithm,\n', '                              domain=domain)\n', '\n', '    def solve_diophantine(self, x=None, solution_dict=False):\n', '        """\n', '        Solve a polynomial equation in the integers (a so called Diophantine).\n', '\n', '        If the argument is just a polynomial expression, equate to zero.\n', '        If ``solution_dict=True`` return a list of dictionaries instead of\n', '        a list of tuples.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x,y = var('x,y')\n", '            sage: solve_diophantine(3*x == 4)\n', '            []\n', '            sage: solve_diophantine(x^2 - 9)\n', '            [-3, 3]\n', '            sage: sorted(solve_diophantine(x^2 + y^2 == 25))\n', '            [(-5, 0), (-4, -3), (-4, 3), (-3, -4), (-3, 4), (0, -5)...\n', '\n', '        The function is used when ``solve()`` is called with all variables\n', '        assumed integer::\n', '\n', "            sage: assume(x, 'integer')\n", "            sage: assume(y, 'integer')\n", '            sage: sorted(solve(x*y == 1, (x,y)))\n', '            [(-1, -1), (1, 1)]\n', '\n', '        You can also pick specific variables, and get the solution as\n', '        a dictionary::\n', '\n', '            sage: solve_diophantine(x*y == 10, x)\n', '            [-10, -5, -2, -1, 1, 2, 5, 10]\n', '            sage: sorted(solve_diophantine(x*y - y == 10, (x,y)))\n', '            [(-9, -1), (-4, -2), (-1, -5), (0, -10), (2, 10), (3, 5), (6, 2), (11, 1)]\n', '            sage: res = solve_diophantine(x*y - y == 10, solution_dict=True)\n', '            sage: sol = [{y: -5, x: -1}, {y: -10, x: 0}, {y: -1, x: -9}, {y: -2, x: -4}, {y: 10, x: 2}, {y: 1, x: 11}, {y: 2, x: 6}, {y: 5, x: 3}]\n', '            sage: all(solution in res for solution in sol) and bool(len(res) == len(sol))\n', '            True\n', '\n', '        If the solution is parametrized the parameter(s) are not defined,\n', '        but you can substitute them with specific integer values::\n', '\n', "            sage: x,y,z = var('x,y,z')\n", '            sage: sol=solve_diophantine(x^2-y==0); sol\n', '            (t, t^2)\n', '            sage: [(sol[0].subs(t=t),sol[1].subs(t=t)) for t in range(-3,4)]\n', '            [(-3, 9), (-2, 4), (-1, 1), (0, 0), (1, 1), (2, 4), (3, 9)]\n', '            sage: sol = solve_diophantine(x^2 + y^2 == z^2); sol\n', '            (2*p*q, p^2 - q^2, p^2 + q^2)\n', '            sage: [(sol[0].subs(p=p,q=q),sol[1].subs(p=p,q=q),sol[2].subs(p=p,q=q)) for p in range(1,4) for q in range(1,4)]\n', '            [(2, 0, 2), (4, -3, 5), (6, -8, 10), (4, 3, 5), (8, 0, 8), (12, -5, 13), (6, 8, 10), (12, 5, 13), (18, 0, 18)]\n', '\n', '        Solve Brahmagupta-Pell equations::\n', '\n', '            sage: sol = sorted(solve_diophantine(x^2 - 2*y^2 == 1), key=str)\n', '            sage: sol\n', '            [(-sqrt(2)*(2*sqrt(2) + 3)^t + sqrt(2)*(-2*sqrt(2) + 3)^t - 3/2*(2*sqrt(2) + 3)^t - 3/2*(-2*sqrt(2) + 3)^t,...\n', '            sage: [(sol[1][0].subs(t=t).simplify_full(),sol[1][1].subs(t=t).simplify_full()) for t in range(-1,5)]\n', '            [(1, 0), (3, -2), (17, -12), (99, -70), (577, -408), (3363, -2378)]\n', '\n', '        TESTS::\n', '\n', '            sage: solve_diophantine(x^2 - y, x, y)\n', '            Traceback (most recent call last):\n', '            ...\n', '            AttributeError: please use a tuple or list for several variables.\n', '\n', '        .. SEEALSO::\n', '\n', '            http://docs.sympy.org/latest/modules/solvers/diophantine.html\n', '        """\n', '        from sage.symbolic.ring import SR\n', '        from sympy.solvers.diophantine import diophantine\n', '\n', '        if not isinstance(solution_dict, bool):\n', '            raise AttributeError("please use a tuple or list for several variables.")\n', '        if is_a_relational(self._gobj) and self.operator() is operator.eq:\n', '            ex = self.lhs() - self.rhs()\n', '        else:\n', '            ex = self\n', '        sympy_ex = ex._sympy_()\n', '        solutions = diophantine(sympy_ex)\n', '        if isinstance(solutions, (set)):\n', '            solutions = list(solutions)\n', '\n', '        if len(solutions) == 0:\n', '            return []\n', '        if not isinstance(solutions[0], tuple):\n', '            solutions = [SR(sol) for sol in solutions]\n', '        else:\n', '            solutions = [tuple(SR(s) for s in sol) for sol in solutions]\n', '        if x is None:\n', '            wanted_vars = ex.variables()\n', '            var_idx = list(xrange(len(ex.variables())))\n', '        else:\n', '            if isinstance(x, (list, tuple)):\n', '                wanted_vars = x\n', '            else:\n', '                wanted_vars = [x]\n', '            var_idx = [ex.variables().index(v) for v in wanted_vars]\n', '\n', '        if solution_dict is False:\n', '            if len(wanted_vars) == 1:\n', '                ret = sorted([sol[var_idx[0]] for sol in solutions])\n', '            else:\n', '                ret = [tuple([sol[i] for i in var_idx]) for sol in solutions]\n', '        else:\n', '            ret = [dict([[ex.variables()[i],sol[i]] for i in var_idx]) for sol in solutions]\n', '\n', '        if len(ret) == 1:\n', '            ret = ret[0]\n', '        return ret\n', '\n', '    def find_root(self, a, b, var=None, xtol=10e-13, rtol=2.0**-50, maxiter=100, full_output=False):\n', '        """\n', '        Numerically find a root of self on the closed interval [a,b] (or\n', '        [b,a]) if possible, where self is a function in the one variable.\n', '        Note: this function only works in fixed (machine) precision, it is not\n', '        possible to get arbitrary precision approximations with it.\n', '\n', '        INPUT:\n', '\n', '        -  ``a, b`` - endpoints of the interval\n', '\n', '        -  ``var`` - optional variable\n', '\n', '        -  ``xtol, rtol`` - the routine converges when a root\n', '           is known to lie within xtol of the value return. Should be >= 0. The\n', '           routine modifies this to take into account the relative precision\n', '           of doubles.\n', '\n', '        -  ``maxiter`` - integer; if convergence is not\n', '           achieved in maxiter iterations, an error is raised. Must be >= 0.\n', '\n', '        -  ``full_output`` - bool (default: False), if True,\n', '           also return object that contains information about convergence.\n', '\n', '\n', '        EXAMPLES:\n', '\n', '        Note that in this example both f(-2) and f(3) are positive,\n', '        yet we still find a root in that interval::\n', '\n', '            sage: f = x^2 - 1\n', '            sage: f.find_root(-2, 3)\n', '            1.0\n', '            sage: f.find_root(-2, 3, x)\n', '            1.0\n', '            sage: z, result = f.find_root(-2, 3, full_output=True)\n', '            sage: result.converged\n', '            True\n', '            sage: result.flag\n', "            'converged'\n", '            sage: result.function_calls\n', '            11\n', '            sage: result.iterations\n', '            10\n', '            sage: result.root\n', '            1.0\n', '\n', '        More examples::\n', '\n', '            sage: (sin(x) + exp(x)).find_root(-10, 10)\n', '            -0.588532743981862...\n', '            sage: sin(x).find_root(-1,1)\n', '            0.0\n', '\n', '        This example was fixed along with :trac:`4942` - \n', '        there was an error in the example\n', '        pi is a root for tan(x), but an asymptote to 1/tan(x)\n', '        added an example to show handling of both cases::\n', '        \n', '            sage: (tan(x)).find_root(3,3.5)\n', '            3.1415926535...\n', '            sage: (1/tan(x)).find_root(3, 3.5)\n', '            Traceback (most recent call last):\n', '            ...\n', "            NotImplementedError: Brent's method failed to find a zero for f on the interval\n", '\n', '        An example with a square root::\n', '\n', '            sage: f = 1 + x + sqrt(x+2); f.find_root(-2,10)\n', '            -1.618033988749895\n', '\n', '        Some examples that Ted Kosan came up with::\n', '\n', "            sage: t = var('t')\n", '            sage: v = 0.004*(9600*e^(-(1200*t)) - 2400*e^(-(300*t)))\n', '            sage: v.find_root(0, 0.002)\n', '            0.001540327067911417...\n', '\n', '        With this expression, we can see there is a\n', '        zero very close to the origin::\n', '\n', '            sage: a = .004*(8*e^(-(300*t)) - 8*e^(-(1200*t)))*(720000*e^(-(300*t)) - 11520000*e^(-(1200*t))) +.004*(9600*e^(-(1200*t)) - 2400*e^(-(300*t)))^2\n', '            sage: show(plot(a, 0, .002), xmin=0, xmax=.002)\n', '\n', '        It is easy to approximate with ``find_root``::\n', '\n', '            sage: a.find_root(0,0.002)\n', '            0.0004110514049349...\n', '\n', '        Using solve takes more effort, and even then gives\n', '        only a solution with free (integer) variables::\n', '\n', '            sage: a.solve(t)\n', '            []\n', '            sage: b = a.canonicalize_radical(); b\n', '            (46080.0*e^(1800*t) - 576000.0*e^(900*t) + 737280.0)*e^(-2400*t)\n', '            sage: b.solve(t)\n', '            []\n', '            sage: b.solve(t, to_poly_solve=True)\n', '            [t == 1/450*I*pi*z... + 1/900*log(-3/4*sqrt(41) + 25/4),\n', '             t == 1/450*I*pi*z... + 1/900*log(3/4*sqrt(41) + 25/4)]\n', '            sage: n(1/900*log(-3/4*sqrt(41) + 25/4))\n', '            0.000411051404934985\n', '\n', '        We illustrate that root finding is only implemented in one\n', '        dimension::\n', '\n', "            sage: x, y = var('x,y')\n", '            sage: (x-y).find_root(-2,2)\n', '            Traceback (most recent call last):\n', '            ...\n', '            NotImplementedError: root finding currently only implemented in 1 dimension.\n', '\n', '        TESTS:\n', '\n', '        Test the special case that failed for the first attempt to fix\n', '        :trac:`3980`::\n', '\n', "            sage: t = var('t')\n", '            sage: find_root(1/t - x,0,2)\n', '            Traceback (most recent call last):\n', '            ...\n', '            NotImplementedError: root finding currently only implemented in 1 dimension.\n', '        """\n', '        if is_a_relational(self._gobj) and self.operator() is not operator.eq:\n', '            raise ValueError("Symbolic equation must be an equality.")\n', '        from sage.numerical.optimize import find_root\n', '        if self.number_of_arguments() == 0:\n', '            if self.is_trivial_zero():\n', '                return a\n', '            else:\n', '                raise RuntimeError("no zero in the interval, since constant expression is not 0.")\n', '        elif self.number_of_arguments() == 1:\n', '            f = self._fast_float_(self.default_variable())\n', '            return find_root(f, a=a, b=b, xtol=xtol,\n', '                             rtol=rtol,maxiter=maxiter,\n', '                             full_output=full_output)\n', '        else:\n', '            raise NotImplementedError("root finding currently only implemented in 1 dimension.")\n', '\n', '    def find_local_maximum(self, a, b, var=None, tol=1.48e-08, maxfun=500):\n', '        r"""\n', '        Numerically find a local maximum of the expression ``self``\n', '        on the interval [a,b] (or [b,a]) along with the point at which the\n', '        maximum is attained.\n', '\n', '        See the documentation for\n', '        :func:`find_local_minimum` for more details.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = x*cos(x)\n', '            sage: f.find_local_maximum(0,5)\n', '            (0.5610963381910451, 0.8603335890...)\n', '            sage: f.find_local_maximum(0,5, tol=0.1, maxfun=10)\n', '            (0.561090323458081..., 0.857926501456...)\n', '        """\n', '        minval, x = (-self).find_local_minimum(a, b, var=var, tol=tol,\n', '                                                     maxfun=maxfun)\n', '        return -minval, x\n', '\n', '    def find_local_minimum(self, a, b, var=None, tol=1.48e-08, maxfun=500):\n', '        r"""\n', '        Numerically find a local minimum of the expression ``self``\n', '        on the interval [a,b] (or [b,a]) and the point at which it attains\n', '        that minimum. Note that ``self`` must be a function of\n', '        (at most) one variable.\n', '\n', '        INPUT:\n', '\n', '        -  ``var`` - variable (default: first variable in\n', '           self)\n', '\n', '        -  ``a,b`` - endpoints of interval on which to minimize\n', '           self.\n', '\n', '        -  ``tol`` - the convergence tolerance\n', '\n', '        -  ``maxfun`` - maximum function evaluations\n', '\n', '\n', '        OUTPUT:\n', '\n', '        A tuple ``(minval, x)``, where\n', '\n', '        - ``minval`` -- float. The minimum value that self takes on in\n', '          the interval ``[a,b]``.\n', '\n', '        - ``x`` -- float. The point at which self takes on the minimum\n', '          value.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = x*cos(x)\n', '            sage: f.find_local_minimum(1, 5)\n', '            (-3.288371395590..., 3.4256184695...)\n', '            sage: f.find_local_minimum(1, 5, tol=1e-3)\n', '            (-3.288371361890..., 3.4257507903...)\n', '            sage: f.find_local_minimum(1, 5, tol=1e-2, maxfun=10)\n', '            (-3.288370845983..., 3.4250840220...)\n', '            sage: show(f.plot(0, 20))\n', '            sage: f.find_local_minimum(1, 15)\n', '            (-9.477294259479..., 9.5293344109...)\n', '\n', '        ALGORITHM:\n', '\n', '        Uses :func:`sage.numerical.optimize.find_local_minimum`.\n', '\n', '        AUTHORS:\n', '\n', '        - William Stein (2007-12-07)\n', '        """\n', '        from sage.numerical.optimize import find_local_minimum\n', '\n', '        if var is None:\n', '            var = self.default_variable()\n', '        return find_local_minimum(self._fast_float_(var),\n', '                                        a=a, b=b, tol=tol, maxfun=maxfun )\n', '\n', '    ###################\n', '    # Fast Evaluation #\n', '    ###################\n', '    def _fast_float_(self, *vars):\n', '        """\n', '        Return an object which provides fast floating point\n', '        evaluation of this symbolic expression.\n', '\n', '        See :mod:`sage.ext.fast_eval` for more information.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: f = sqrt(x+1)\n', "            sage: ff = f._fast_float_('x')\n", '            sage: ff(1.0)\n', '            1.4142135623730951\n', '            sage: type(_)\n', "            <... 'float'>\n", '        """\n', '        from sage.symbolic.expression_conversions import fast_float\n', '        return fast_float(self, *vars)\n', '\n', '    def _fast_callable_(self, etb):\n', '        """\n', '        Given an ExpressionTreeBuilder *etb*, return an Expression representing\n', '        this symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: from sage.ext.fast_callable import ExpressionTreeBuilder\n', "            sage: etb = ExpressionTreeBuilder(vars=['x','y'])\n", "            sage: x,y = var('x,y')\n", '            sage: f = y+2*x^2\n', '            sage: f._fast_callable_(etb)\n', '            add(mul(ipow(v_0, 2), 2), v_1)\n', '        """\n', '        from sage.symbolic.expression_conversions import fast_callable\n', '        return fast_callable(self, etb)\n', '\n', '    def show(self):\n', '        r"""\n', '        Pretty-Print this symbolic expression\n', '\n', '        This typeset it nicely and prints it immediately.\n', '\n', '        OUTPUT:\n', '\n', '        This method does not return anything. Like ``print``, output\n', '        is sent directly to the screen.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (x^2 + 1).show()\n', '            <html><script type="math/tex">\\newcommand{\\Bold}[1]{\\mathbf{#1}}x^{2} + 1</script></html>\n', '        """\n', '        from sage.repl.rich_output.pretty_print import pretty_print\n', '        pretty_print(self)\n', '\n', '    def plot(self, *args, **kwds):\n', '        """\n', '        Plot a symbolic expression. All arguments are passed onto the standard plot command.\n', '\n', '        EXAMPLES:\n', '\n', '        This displays a straight line::\n', '\n', '            sage: sin(2).plot((x,0,3))\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        This draws a red oscillatory curve::\n', '\n', '            sage: sin(x^2).plot((x,0,2*pi), rgbcolor=(1,0,0))\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        Another plot using the variable theta::\n', '\n', "            sage: var('theta')\n", '            theta\n', '            sage: (cos(theta) - erf(theta)).plot((theta,-2*pi,2*pi))\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        A very thick green plot with a frame::\n', '\n', '            sage: sin(x).plot((x,-4*pi, 4*pi), thickness=20, rgbcolor=(0,0.7,0)).show(frame=True)\n', '\n', '        You can embed 2d plots in 3d space as follows::\n', '\n', '            sage: plot(sin(x^2), (x,-pi, pi), thickness=2).plot3d(z = 1)  # long time\n', '            Graphics3d Object\n', '\n', '        A more complicated family::\n', '\n', '            sage: G = sum([plot(sin(n*x), (x,-2*pi, 2*pi)).plot3d(z=n) for n in [0,0.1,..1]])\n', '            sage: G.show(frame_aspect_ratio=[1,1,1/2])  # long time (5s on sage.math, 2012)\n', '\n', '        A plot involving the floor function::\n', '\n', '            sage: plot(1.0 - x * floor(1/x), (x,0.00001,1.0))\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        Sage used to allow symbolic functions with "no arguments";\n', '        this no longer works::\n', '\n', '            sage: plot(2*sin, -4, 4)\n', '            Traceback (most recent call last):\n', '            ...\n', "            TypeError: unsupported operand parent(s) for *: 'Integer Ring' and '<class 'sage.functions.trig.Function_sin'>'\n", '\n', '        You should evaluate the function first::\n', '\n', '            sage: plot(2*sin(x), -4, 4)\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        TESTS::\n', '\n', '            sage: f(x) = x*(1 - x)\n', '            sage: plot(f,0,1)\n', '            Graphics object consisting of 1 graphics primitive\n', '        """\n', '        from sage.symbolic.callable import is_CallableSymbolicExpression\n', '        from sage.symbolic.ring import is_SymbolicVariable\n', '        from sage.plot.plot import plot\n', '\n', '        # see if the user passed a variable in.\n', "        if 'param' in kwds:\n", "            param = kwds['param']\n", '        else:\n', '            param = None\n', '            for i, arg in enumerate(args):\n', '                if is_SymbolicVariable(arg):\n', '                    param = arg\n', '                    args = args[:i] + args[i+1:]\n', '                    break\n', '\n', '        if param is None:\n', '            if is_CallableSymbolicExpression(self):\n', '                A = self.arguments()\n', '                if len(A) == 0:\n', '                    raise ValueError("function has no input arguments")\n', '                else:\n', '                    param = A[0]\n', '\n', '                f = self._plot_fast_callable(param)\n', '            else:\n', '                A = self.variables()\n', '                if len(A) == 0:\n', '                    #Here we handle the case where f is something\n', '                    #like ``sin``, which has takes arguments which\n', "                    #aren't explicitly given\n", '                    n = self.number_of_arguments()\n', '                    f = self._plot_fast_callable()\n', '                else:\n', '                    param = A[0]\n', '                    try:\n', '                        f = self._plot_fast_callable(param)\n', '                    except NotImplementedError:\n', '                        return self.function(param)\n', '        else:\n', '            try:\n', '                f = self._plot_fast_callable(param)\n', '            except NotImplementedError:\n', '                return self.function(param)\n', '        return plot(f, *args, **kwds)\n', '\n', '    def _plot_fast_callable(self, *vars):\n', '        """\n', '        Internal function used for creating a fast callable version of this\n', '        symbolic expression for plotting.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: x = var('x', domain='real')\n", '            sage: s = abs((1+I*x)^4); s\n', '            abs(I*x + 1)^4\n', '            sage: f = s._plot_fast_callable(x); f\n', '            <sage.ext.interpreters.wrapper_py.Wrapper_py object at ...>\n', '            sage: f(10)\n', '            10201\n', '            sage: abs((I*10+1)^4)\n', '            10201\n', '            sage: plot(s)\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        Check that :trac:`19797` is fixed::\n', '\n', '            sage: b = f(10.0)\n', '            sage: b\n', '            10201.0000000000\n', '            sage: parent(b)\n', '            Real Field with 53 bits of precision\n', '\n', '        Check that :trac:`15030` is fixed::\n', '\n', '            sage: abs(log(x))._plot_fast_callable(x)(-0.2)\n', '            3.52985761682672\n', "            sage: f = function('f', evalf_func=lambda self,x,parent: I*x)\n", '            sage: plot(abs(f(x)), 0,5)\n', '            Graphics object consisting of 1 graphics primitive\n', '        """\n', '        from sage.ext.fast_callable import fast_callable\n', '        return fast_callable(self, vars=vars, expect_one_var=True)\n', '\n', '    ############\n', '    # Calculus #\n', '    ############\n', '    def sum(self, *args, **kwds):\n', '        r"""\n', '        Return the symbolic sum\n', '        `\\sum_{v = a}^b self`\n', '\n', '        with respect to the variable `v` with endpoints\n', '        `a` and `b`.\n', '\n', '        INPUT:\n', '\n', '        -  ``v`` - a variable or variable name\n', '\n', '        -  ``a`` - lower endpoint of the sum\n', '\n', '        -  ``b`` - upper endpoint of the sum\n', '\n', "        - ``algorithm`` - (default: ``'maxima'``)  one of\n", '\n', "                - ``'maxima'`` - use Maxima (the default)\n", '\n', "                - ``'maple'`` - (optional) use Maple\n", '\n', "                - ``'mathematica'`` - (optional) use Mathematica\n", '\n', "                - ``'giac'`` - (optional) use Giac\n", '\n', "                - ``'sympy'`` - use SymPy\n", '\n', '        EXAMPLES::\n', '\n', "            sage: k, n = var('k,n')\n", '            sage: k.sum(k, 1, n).factor()\n', '            1/2*(n + 1)*n\n', '\n', '        ::\n', '\n', '            sage: (1/k^4).sum(k, 1, oo)\n', '            1/90*pi^4\n', '\n', '        ::\n', '\n', '            sage: (1/k^5).sum(k, 1, oo)\n', '            zeta(5)\n', '\n', '        A well known binomial identity::\n', '\n', '            sage: assume(n>=0)\n', '            sage: binomial(n,k).sum(k, 0, n)\n', '            2^n\n', '\n', '        And some truncations thereof::\n', '\n', '            sage: binomial(n,k).sum(k,1,n)\n', '            2^n - 1\n', '            sage: binomial(n,k).sum(k,2,n)\n', '            2^n - n - 1\n', '            sage: binomial(n,k).sum(k,0,n-1)\n', '            2^n - 1\n', '            sage: binomial(n,k).sum(k,1,n-1)\n', '            2^n - 2\n', '\n', '        The binomial theorem::\n', '\n', "            sage: x, y = var('x, y')\n", '            sage: (binomial(n,k) * x^k * y^(n-k)).sum(k, 0, n)\n', '            (x + y)^n\n', '\n', '        ::\n', '\n', '            sage: (k * binomial(n, k)).sum(k, 1, n)\n', '            2^(n - 1)*n\n', '\n', '        ::\n', '\n', '            sage: ((-1)^k*binomial(n,k)).sum(k, 0, n)\n', '            0\n', '\n', '        ::\n', '\n', '            sage: (2^(-k)/(k*(k+1))).sum(k, 1, oo)\n', '            -log(2) + 1\n', '\n', '        Summing a hypergeometric term::\n', '\n', '            sage: (binomial(n, k) * factorial(k) / factorial(n+1+k)).sum(k, 0, n)\n', '            1/2*sqrt(pi)/factorial(n + 1/2)\n', '\n', '        We check a well known identity::\n', '\n', '            sage: bool((k^3).sum(k, 1, n) == k.sum(k, 1, n)^2)\n', '            True\n', '\n', '        A geometric sum::\n', '\n', "            sage: a, q = var('a, q')\n", '            sage: (a*q^k).sum(k, 0, n)\n', '            (a*q^(n + 1) - a)/(q - 1)\n', '\n', '        The geometric series::\n', '\n', '            sage: assume(abs(q) < 1)\n', '            sage: (a*q^k).sum(k, 0, oo)\n', '            -a/(q - 1)\n', '\n', '        A divergent geometric series.  Do not forget\n', '        to `forget` your assumptions::\n', '\n', '            sage: forget()\n', '            sage: assume(q > 1)\n', '            sage: (a*q^k).sum(k, 0, oo)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Sum is divergent.\n', '\n', '        This summation only Mathematica can perform::\n', '\n', "            sage: (1/(1+k^2)).sum(k, -oo, oo, algorithm = 'mathematica')     # optional - mathematica\n", '            pi*coth(pi)\n', '\n', '        Use Giac to perform this summation::\n', '\n', "            sage: (sum(1/(1+k^2), k, -oo, oo, algorithm = 'giac')).factor()\n", '            pi*(e^(2*pi) + 1)/((e^pi + 1)*(e^pi - 1))\n', '\n', '        Use Maple as a backend for summation::\n', '\n', "            sage: (binomial(n,k)*x^k).sum(k, 0, n, algorithm = 'maple')      # optional - maple\n", '            (x + 1)^n\n', '\n', '        .. NOTE::\n', '\n', '           #. Sage can currently only understand a subset of the output of Maxima, Maple and\n', '              Mathematica, so even if the chosen backend can perform the summation the\n', '              result might not be convertible into a usable Sage expression.\n', '\n', '        TESTS:\n', '\n', '        Check that the sum in :trac:`10682` is done right::\n', '\n', '            sage: sum(binomial(n,k)*k^2, k, 2, n)\n', '            1/4*(n^2 + n)*2^n - n\n', '\n', '        This sum used to give a wrong result (:trac:`9635`) but\n', '        now gives correct results with all relevant assumptions::\n', '\n', "            sage: (n,k,j)=var('n,k,j')\n", '            sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)\n', '            -(-1)^j*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)\n', '            sage: assume(j>-1)\n', '            sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)\n', '            1\n', '            sage: forget()\n', '            sage: assume(n>=j)\n', '            sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)\n', '            -(-1)^j*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)\n', '            sage: forget()\n', '            sage: assume(j==-1)\n', '            sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)\n', '            1\n', '            sage: forget()\n', '            sage: assume(j<-1)\n', '            sage: sum(binomial(n,k)*binomial(k-1,j)*(-1)**(k-1-j),k,j+1,n)\n', '            -(-1)^j*sum((-1)^k*binomial(k - 1, j)*binomial(n, k), k, j + 1, n)\n', '            sage: forget()\n', '\n', '        Check that :trac:`16176` is fixed::\n', '\n', "            sage: n = var('n')\n", '            sage: sum(log(1-1/n^2),n,2,oo)\n', '            -log(2)\n', '\n', '        Check that :trac:`21801` is fixed::\n', '\n', "            sage: n = SR.var('n')\n", '            sage: sum(1/((n+1)*(2*n-1)), n, 0, oo)\n', '            2/3*log(2) - 2/3\n', '            sage: _.n()\n', '            -0.204568546293370\n', '            sage: f(n) = (-1)^(n+1)/(3*n+6*(-1)^n)\n', '            sage: sum(f(2*n)+f(2*n+1), n, 0, oo)\n', '            1/3*log(2) - 1/3\n', '        """\n', '        from sage.calculus.calculus import symbolic_sum\n', '        return symbolic_sum(self, *args, **kwds)\n', '\n', '    def prod(self, *args, **kwds):\n', '        r"""\n', '\n', '        Return the symbolic product `\\prod_{v = a}^b expression` with\n', '        respect to the variable `v` with endpoints `a` and `b`.\n', '\n', '        INPUT:\n', '\n', '        - ``expression`` - a symbolic expression\n', '\n', '        - ``v`` - a variable or variable name\n', '\n', '        - ``a`` - lower endpoint of the product\n', '\n', '        - ``b`` - upper endpoint of the product\n', '\n', "        - ``algorithm`` - (default: ``'maxima'``)  one of\n", '\n', "          - ``'maxima'`` - use Maxima (the default)\n", '\n', "          - ``'giac'`` - (optional) use Giac\n", '\n', "          - ``'sympy'`` - use SymPy\n", '\n', "        - ``hold`` - (default: ``False``) if ``True`` don't evaluate\n", '\n', '        TESTS:\n', '\n', "            sage: i, k, n = var('i,k,n')\n", '            sage: k.prod(k, 1, n)\n', '            factorial(n)\n', '            sage: (x + i*(i+1)/2).prod(i,1,4)\n', '            x^4 + 20*x^3 + 127*x^2 + 288*x + 180\n', '            sage: (i^2).prod(i,1,7)\n', '            25401600\n', "            sage: f=function('f')\n", '            sage: f(i).prod(i,1,7)\n', '            f(7)*f(6)*f(5)*f(4)*f(3)*f(2)*f(1)\n', '            sage: f(i).prod(i,1,n)\n', '            product(f(i), i, 1, n)\n', '            sage: assume(k>0)\n', '            sage: (x^k).integrate(x,0,1).prod(k,1,n)\n', '            1/factorial(n + 1)\n', '            sage: f(i).prod(i,1,n).log().log_expand()\n', '            sum(log(f(i)), i, 1, n)\n', '        """\n', '        from sage.calculus.calculus import symbolic_product\n', '        return symbolic_product(self, *args, **kwds)\n', '\n', '    def integral(self, *args, **kwds):\n', '        """\n', '        Compute the integral of self.  Please see\n', '        :func:`sage.symbolic.integration.integral.integrate` for more details.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: sin(x).integral(x,0,3)\n', '            -cos(3) + 1\n', '            sage: sin(x).integral(x)\n', '            -cos(x)\n', '\n', '        TESTS:\n', '\n', '        We check that :trac:`12438` is resolved::\n', '\n', '            sage: f(x) = x; f\n', '            x |--> x\n', '            sage: integral(f, x)\n', '            x |--> 1/2*x^2\n', '            sage: integral(f, x, 0, 1)\n', '            1/2\n', '\n', '            sage: f(x, y) = x + y\n', '            sage: f\n', '            (x, y) |--> x + y\n', '            sage: integral(f, y, 0, 1)\n', '            x |--> x + 1/2\n', '            sage: integral(f, x, 0, 1)\n', '            y |--> y + 1/2\n', '            sage: _(3)\n', '            7/2\n', '            sage: var("z")\n', '            z\n', '            sage: integral(f, z, 0, 2)\n', '            (x, y) |--> 2*x + 2*y\n', '            sage: integral(f, z)\n', '            (x, y) |--> (x + y)*z\n', '        """\n', '        from sage.symbolic.integration.integral import \\\n', '            integral, _normalize_integral_input\n', '        from sage.symbolic.callable import \\\n', '            CallableSymbolicExpressionRing, is_CallableSymbolicExpressionRing\n', '        R = self._parent\n', '        if is_CallableSymbolicExpressionRing(R):\n', '            f = ring.SR(self)\n', '            f, v, a, b = _normalize_integral_input(f, *args)\n', '            # Definite integral with respect to a positional variable.\n', '            if a is not None and v in R.arguments():\n', '                arguments = list(R.arguments())\n', '                arguments.remove(v)\n', '                if arguments:\n', '                    arguments = tuple(arguments)\n', '                    R = CallableSymbolicExpressionRing(arguments, check=False)\n', '                else:   # all arguments are gone\n', '                    R = ring.SR\n', '            return R(integral(f, v, a, b, **kwds))\n', '        return integral(self, *args, **kwds)\n', '\n', '    integrate = integral\n', '\n', '    def nintegral(self, *args, **kwds):\n', '        """\n', '        Compute the numerical integral of self.  Please see\n', '        :obj:`sage.calculus.calculus.nintegral` for more details.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: sin(x).nintegral(x,0,3)\n', '            (1.989992496600..., 2.209335488557...e-14, 21, 0)\n', '        """\n', '        from sage.calculus.calculus import nintegral\n', '        return nintegral(self, *args, **kwds)\n', '\n', '    nintegrate = nintegral\n', '\n', '    def minpoly(self, *args, **kwds):\n', '        """\n', '        Return the minimal polynomial of this symbolic expression.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: golden_ratio.minpoly()\n', '            x^2 - x - 1\n', '        """\n', '        try:\n', '            obj = self.pyobject()\n', '            return obj.minpoly()\n', '        except AttributeError:\n', '            pass\n', '        except TypeError:\n', '            pass\n', '        from sage.calculus.calculus import minpoly\n', '        return minpoly(self, *args, **kwds)\n', '\n', '    def limit(self, *args, **kwds):\n', '        """\n', '        Return a symbolic limit.  See\n', '        :obj:`sage.calculus.calculus.limit`\n', '\n', '        EXAMPLES::\n', '\n', '            sage: (sin(x)/x).limit(x=0)\n', '            1\n', '        """\n', '        from sage.calculus.calculus import limit\n', '        return limit(self, *args, **kwds)\n', '\n', '    def laplace(self, t, s):\n', '        """\n', '        Return Laplace transform of self.  See\n', '        :obj:`sage.calculus.calculus.laplace`\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,s,z')\n", '            (x, s, z)\n', '            sage: (z + exp(x)).laplace(x, s)\n', '            z/s + 1/(s - 1)\n', '        """\n', '        from sage.calculus.calculus import laplace\n', '        return laplace(self, t, s)\n', '\n', '    def inverse_laplace(self, t, s):\n', '        """\n', '        Return inverse Laplace transform of self.  See\n', '        :obj:`sage.calculus.calculus.inverse_laplace`\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('w, m')\n", '            (w, m)\n', '            sage: f = (1/(w^2+10)).inverse_laplace(w, m); f\n', '            1/10*sqrt(10)*sin(sqrt(10)*m)\n', '        """\n', '        from sage.calculus.calculus import inverse_laplace\n', '        return inverse_laplace(self, t, s)\n', '\n', '    def add_to_both_sides(self, x):\n', '        """\n', '        Return a relation obtained by adding *x* to both sides of\n', '        this relation.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x y z')\n", '            (x, y, z)\n', '            sage: eqn = x^2 + y^2 + z^2 <= 1\n', '            sage: eqn.add_to_both_sides(-z^2)\n', '            x^2 + y^2 <= -z^2 + 1\n', '            sage: eqn.add_to_both_sides(I)\n', '            x^2 + y^2 + z^2 + I <= (I + 1)\n', '        """\n', '        if not is_a_relational(self._gobj):\n', '            raise TypeError("this expression must be a relation")\n', '        return self + x\n', '\n', '    def subtract_from_both_sides(self, x):\n', '        """\n', '        Return a relation obtained by subtracting *x* from both sides\n', '        of this relation.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: eqn = x*sin(x)*sqrt(3) + sqrt(2) > cos(sin(x))\n', '            sage: eqn.subtract_from_both_sides(sqrt(2))\n', '            sqrt(3)*x*sin(x) > -sqrt(2) + cos(sin(x))\n', '            sage: eqn.subtract_from_both_sides(cos(sin(x)))\n', '            sqrt(3)*x*sin(x) + sqrt(2) - cos(sin(x)) > 0\n', '        """\n', '        if not is_a_relational(self._gobj):\n', '            raise TypeError("this expression must be a relation")\n', '        return self - x\n', '\n', '    def multiply_both_sides(self, x, checksign=None):\n', '        """\n', '        Return a relation obtained by multiplying both sides of this\n', '        relation by *x*.\n', '\n', '        .. NOTE::\n', '\n', '           The *checksign* keyword argument is currently ignored and\n', '           is included for backward compatibility reasons only.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x,y'); f = x + 3 < y - 2\n", '            (x, y)\n', '            sage: f.multiply_both_sides(7)\n', '            7*x + 21 < 7*y - 14\n', '            sage: f.multiply_both_sides(-1/2)\n', '            -1/2*x - 3/2 < -1/2*y + 1\n', '            sage: f*(-2/3)\n', '            -2/3*x - 2 < -2/3*y + 4/3\n', '            sage: f*(-pi)\n', '            -pi*(x + 3) < -pi*(y - 2)\n', '\n', '        Since the direction of the inequality never changes when doing\n', '        arithmetic with equations, you can multiply or divide the\n', '        equation by a quantity with unknown sign::\n', '\n', '            sage: f*(1+I)\n', '            (I + 1)*x + 3*I + 3 < (I + 1)*y - 2*I - 2\n', '            sage: f = sqrt(2) + x == y^3\n', '            sage: f.multiply_both_sides(I)\n', '            I*x + I*sqrt(2) == I*y^3\n', '            sage: f.multiply_both_sides(-1)\n', '            -x - sqrt(2) == -y^3\n', '\n', '        Note that the direction of the following inequalities is\n', '        not reversed::\n', '\n', '            sage: (x^3 + 1 > 2*sqrt(3)) * (-1)\n', '            -x^3 - 1 > -2*sqrt(3)\n', '            sage: (x^3 + 1 >= 2*sqrt(3)) * (-1)\n', '            -x^3 - 1 >= -2*sqrt(3)\n', '            sage: (x^3 + 1 <= 2*sqrt(3)) * (-1)\n', '            -x^3 - 1 <= -2*sqrt(3)\n', '        """\n', '        if not is_a_relational(self._gobj):\n', '            raise TypeError("this expression must be a relation")\n', '        return self * x\n', '\n', '    def divide_both_sides(self, x, checksign=None):\n', '        """\n', '        Return a relation obtained by dividing both sides of this\n', '        relation by *x*.\n', '\n', '        .. NOTE::\n', '\n', '           The *checksign* keyword argument is currently ignored and\n', '           is included for backward compatibility reasons only.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: theta = var('theta')\n", '            sage: eqn =   (x^3 + theta < sin(x*theta))\n', '            sage: eqn.divide_both_sides(theta, checksign=False)\n', '            (x^3 + theta)/theta < sin(theta*x)/theta\n', '            sage: eqn.divide_both_sides(theta)\n', '            (x^3 + theta)/theta < sin(theta*x)/theta\n', '            sage: eqn/theta\n', '            (x^3 + theta)/theta < sin(theta*x)/theta\n', '        """\n', '        if not is_a_relational(self._gobj):\n', '            raise TypeError("this expression must be a relation")\n', '        return self / x\n', '\n', '    def implicit_derivative(self, Y, X, n=1):\n', '        """\n', "        Return the n'th derivative of Y with respect to X given implicitly by this expression.\n", '\n', '        INPUT:\n', '\n', '        - ``Y`` - The dependent variable of the implicit expression.\n', '\n', '        - ``X`` - The independent variable with respect to which the derivative is taken.\n', '\n', '\n', '        - ``n`` - (default : 1) the order of the derivative.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: var('x, y')\n", '            (x, y)\n', '            sage: f = cos(x)*sin(y)\n', '            sage: f.implicit_derivative(y, x)\n', '            sin(x)*sin(y)/(cos(x)*cos(y))\n', '            sage: g = x*y^2\n', '            sage: g.implicit_derivative(y, x, 3)\n', '            -1/4*(y + 2*y/x)/x^2 + 1/4*(2*y^2/x - y^2/x^2)/(x*y) - 3/4*y/x^3\n', '\n', '        It is an error to not include an independent variable term\n', '        in the expression::\n', '\n', '            sage: (cos(x)*sin(x)).implicit_derivative(y, x)\n', '            Traceback (most recent call last):\n', '            ...\n', '            ValueError: Expression cos(x)*sin(x) contains no y terms\n', '\n', '\n', '        TESTS:\n', '\n', '        Check that the symbols registry is not polluted::\n', '\n', "            sage: var('x,y')\n", '            (x, y)\n', '            sage: psr = copy(SR.symbols)\n', '            sage: (x^6*y^5).implicit_derivative(y, x, 3)\n', '            -792/125*y/x^3 + 12/25*(15*x^4*y^5 + 28*x^3*y^5)/(x^6*y^4) - 36/125*(20*x^5*y^4 + 43*x^4*y^4)/(x^7*y^3)\n', '            sage: psr == SR.symbols\n', '            True\n', '        """\n', '        from sage.symbolic.ring import SR\n', '        from sage.symbolic.function_factory import SymbolicFunction\n', '\n', '        if not self.has(Y):\n', '            raise ValueError("Expression {} contains no {} terms".format(self, Y))\n', '        x = SR.symbol()\n', '        yy = SR.symbol()\n', "        y = SymbolicFunction('y', 1)(x)\n", "        f = SymbolicFunction('f', 2)(x, yy)\n", '        Fx = f.diff(x)\n', '        Fy = f.diff(yy)\n', '        G = -(Fx/Fy)\n', '        G = G.subs({yy: y})\n', '        di = {y.diff(x): -self.diff(X)/self.diff(Y)}\n', '        R = G\n', '        S = G.diff(x, n - 1)\n', '        for i in range(n + 1):\n', '            di[y.diff(x, i + 1).subs({x: x})] = R\n', '            S = S.subs(di)\n', '            R = G.diff(x, i)\n', '            for j in range(n + 1 - i):\n', '                di[f.diff(x, i, yy, j).subs({x: x, yy: y})] = self.diff(X, i, Y, j)\n', '                S = S.subs(di)\n', '        return S\n'], 372)
> sage: sage_getsourcelines(x)[0][-1]    # last line ## line 2319 ##
> '        return S\n'
> sage: from sage.misc.nested_class_test import TestNestedParent ## line 2326 ##
> sage: from sage.misc.sageinspect import sage_getsource ## line 2327 ##
> sage: P = TestNestedParent() ## line 2328 ##
> sage: E = P.element_class ## line 2329 ##
> sage: E.__bases__ ## line 2330 ##
> (<class 'sage.misc.nested_class_test.TestNestedParent.Element'>, <class 'sage.categories.sets_cat.Sets.element_class'>)
> sage: print(sage_getsource(E)) ## line 2333 ##
>     class Element(object):
>         "This is a dummy element class"
>         pass
> 
> sage: print(sage_getsource(P)) ## line 2337 ##
> class TestNestedParent(UniqueRepresentation, Parent):
>     """
>     This is a dummy for testing source inspection of nested classes.
> 
>     See the test in ``sage.misc.sageinspect.sage_getsourcelines``.
>     """
> 
>     class Element(object):
>         "This is a dummy element class"
>         pass
> 
> sage: C = AdditiveMagmas() ## line 2347 ##
> sage: HC = C.Homsets() ## line 2348 ##
> sage: sage_getsourcelines(HC) ## line 2349 ##
> (['    class Homsets(HomsetsCategory):\n', '        def extra_super_categories(self):\n', '            """\n', '            Implement the fact that a homset between two magmas is a magma.\n', '\n', '            EXAMPLES::\n', '\n', '                sage: AdditiveMagmas().Homsets().extra_super_categories()\n', '                [Category of additive magmas]\n', '                sage: AdditiveMagmas().Homsets().super_categories()\n', '                [Category of additive magmas, Category of homsets]\n', '            """\n', '            return [AdditiveMagmas()]\n'], 439)
> sage: P.<x,y> = QQ[] ## line 2354 ##
> sage: I = P*[x,y] ## line 2355 ##
> sage: sage_getsourcelines(I) ## line 2356 ##
> (['class MPolynomialIdeal( MPolynomialIdeal_singular_repr, \\\n', '                        MPolynomialIdeal_macaulay2_repr, \\\n', '                        MPolynomialIdeal_magma_repr, \\\n', '                        Ideal_generic ):\n', '    def __init__(self, ring, gens, coerce=True):\n', '        r"""\n', '        Create an ideal in a multivariate polynomial ring.\n', '\n', '        INPUT:\n', '\n', '        - ``ring`` - the ring the ideal is defined in\n', '\n', '        - ``gens`` - a list of generators for the ideal\n', '\n', '        - ``coerce`` - coerce elements to the ring ``ring``?\n', '\n', '        EXAMPLES::\n', '\n', "            sage: R.<x,y> = PolynomialRing(IntegerRing(), 2, order='lex')\n", '            sage: R.ideal([x, y])\n', '            Ideal (x, y) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '            sage: R.<x0,x1> = GF(3)[]\n', '            sage: R.ideal([x0^2, x1^3])\n', '            Ideal (x0^2, x1^3) of Multivariate Polynomial Ring in x0, x1 over Finite Field of size 3\n', '        """\n', '        Ideal_generic.__init__(self, ring, gens, coerce=coerce)\n', '        self._gb_by_ordering = dict()\n', '\n', '    def __hash__(self):\n', '        r"""\n', '        Stupid constant hash function!\n', '\n', '        TESTS::\n', '\n', "            sage: R.<x,y> = PolynomialRing(IntegerRing(), 2, order='lex')\n", '            sage: hash(R.ideal([x, y]))\n', '            0\n', '        """\n', '        return 0\n', '\n', '    @cached_method\n', '    def gens(self):\n', '        """\n', '        Return a set of generators / a basis of this ideal. This is usually the\n', '        set of generators provided during object creation.\n', '\n', '        EXAMPLES::\n', '\n', '           sage: P.<x,y> = PolynomialRing(QQ,2)\n', '           sage: I = Ideal([x,y+1]); I\n', '           Ideal (x, y + 1) of Multivariate Polynomial Ring in x, y over Rational Field\n', '           sage: I.gens()\n', '           [x, y + 1]\n', '         """\n', '        from sage.rings.polynomial.multi_polynomial_sequence import PolynomialSequence\n', '        return PolynomialSequence(self.ring(), Ideal_generic.gens(self), immutable=True)\n', '\n', '    @property\n', '    def basis(self):\n', '        """\n', '        Shortcut to ``gens()``.\n', '\n', '        EXAMPLES::\n', '\n', '           sage: P.<x,y> = PolynomialRing(QQ,2)\n', '           sage: I = Ideal([x,y+1])\n', '           sage: I.basis\n', '           [x, y + 1]\n', '\n', '        """\n', '        return self.gens()\n', '\n', '    def __richcmp__(self, other, op):\n', '        """\n', '        Compare ``self`` and ``other``.\n', '\n', '        INPUT:\n', '\n', '        - ``other`` -- a polynomial ideal\n', '\n', '        OUTPUT:\n', '\n', '        boolean\n', '\n', '        ALGORITHM:\n', '\n', '        Comparison for ``==`` and ``!=`` compares two Groebner bases.\n', '\n', '        Comparison for ``<=` and ``>=`` tests the inclusion of ideals\n', '        using the usual ideal membership test, namely all generators\n', "        of one ideal must reduce to zero in the other ideal's Groebner\n", '        basis.\n', '\n', '        Comparison for ``<`` and ``>`` tests for inclusion and different\n', '        Groebner bases.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = ZZ[]; I = R*[x^2 + y, 2*y]; J = R*[x^2 + y]\n', '            sage: I > J\n', '            True\n', '            sage: J < I\n', '            True\n', '            sage: I == I\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R.<x,y> = GF(32003)[]\n', '            sage: I = R*[x^2 + x, y]\n', '            sage: J = R*[x + 1, y]\n', '            sage: J < I\n', '            False\n', '            sage: I < J\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R.<x,y> = GF(32003)[]\n', '            sage: I = R*[x^2 + x, y]\n', '            sage: J = R*[x + 1, y]\n', '            sage: J > I\n', '            True\n', '            sage: I > J\n', '            False\n', '\n', '        ::\n', '\n', "            sage: R = PolynomialRing(QQ,'x,y,z')\n", '            sage: I = R.ideal()\n', '            sage: I == R.ideal()\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R = PolynomialRing(QQ, names=[])\n', '            sage: R.ideal(0) == R.ideal(0)\n', '            True\n', '\n', '        ::\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: I = (x^3 + y, y)*R\n', '            sage: J = (x^3 + y, y, y*x^3 + y^2)*R\n', '            sage: I == J\n', '            True\n', '\n', '        ::\n', '\n', "            sage: R = PolynomialRing(QQ, 'x,y,z', order='degrevlex')\n", "            sage: S = PolynomialRing(QQ, 'x,y,z', order='invlex')\n", '            sage: I = R.ideal([R.0,R.1])\n', '            sage: J = S.ideal([S.0,S.1])\n', '            sage: I == J\n', '            True\n', '\n', '        TESTS:\n', '\n', '        We test to make sure that pickling works with the cached\n', '        Groebner basis::\n', '\n', '            sage: R.<x,y> = GF(32003)[]\n', '            sage: I = R*[x^2 + x, y]\n', '            sage: J = R*[x + 1, y]\n', '            sage: J >= I\n', '            True\n', '            sage: I >= J\n', '            False\n', '\n', '            sage: loads(dumps(I)).__getstate__()\n', '            (Monoid of ideals of Multivariate Polynomial Ring in x, y over Finite Field of size 32003,\n', "             {'_Ideal_generic__ring': Multivariate Polynomial Ring in x, y over Finite Field of size 32003,\n", "              '_Ideal_generic__gens': (x^2 + x, y),\n", "              '_gb_by_ordering': {'degrevlex': [x^2 + x, y]},\n", '              \'gens\': Pickle of the cached method "gens",\n', "              '_cache__groebner_basis': {},\n", '              \'groebner_basis\': Pickle of the cached method "groebner_basis"})\n', '\n', '        This example checks :trac:`12802`::\n', '\n', '            sage: R.<x,y> = ZZ[]\n', '            sage: I = R * [ x^2 + y, 2*y ]\n', '            sage: J = R * [ x^2 - y, 2*y ]\n', '            sage: I == J\n', '            True\n', '\n', '        Another good test from the discussion in :trac:`12802`::\n', '\n', '            sage: Rx = PolynomialRing(QQ, 2, "x")\n', '            sage: Ix = Rx.ideal(Rx.0)\n', '            sage: Ry = PolynomialRing(QQ, 2, "y")\n', '            sage: Iy = Ry.ideal(Ry.0)\n', '            sage: Ix == Iy\n', '            False\n', '\n', '        However, this should work if only the orderings are different::\n', '\n', "            sage: R = PolynomialRing(QQ, 'x', 2, order='degrevlex')\n", "            sage: S = PolynomialRing(QQ, 'x', 2, order='lex')\n", '            sage: R == S\n', '            False\n', '            sage: I = R*[R.0^2 + R.1, R.1]\n', '            sage: J = S*[S.0^2 + S.1, S.1]\n', '            sage: I == J\n', '            True\n', '        """\n', '        # first check the type\n', '        if not isinstance(other, MPolynomialIdeal):\n', '            return NotImplemented\n', '\n', '        if self is other:\n', '            return rich_to_bool(op, 0)\n', '\n', '        # comparison for >= and > : swap the arguments\n', '        if op == op_GE:\n', '            return other.__richcmp__(self, op_LE)\n', '        elif op == op_GT:\n', '            return other.__richcmp__(self, op_LT)\n', '\n', '        # the ideals may be defined w.r.t. to different term orders\n', '        # but are still the same.\n', '        R = self.ring()\n', '        S = other.ring()\n', '\n', '        # separate next two tests to avoid unnecessary creation of\n', '        # Groebner basis\n', '        if S is not R:\n', '          if S.change_ring(order=R.term_order()) != R: # rings are unique\n', '            return NotImplemented\n', '          else:\n', '            # at this point, the rings are the same, but for the term order,\n', '            # and we can fix that easily\n', '            other_new = other.change_ring(R)\n', '        else:\n', '            other_new = other\n', '\n', '        s_gens = self.gens()\n', '        o_gens = other_new.gens()\n', '        try:\n', '            if (s_gens == o_gens) or (set(s_gens) == set(o_gens)):\n', '                # the first clause works in the non-hashable case\n', '                return rich_to_bool(op, 0)\n', '        except TypeError:\n', '            pass\n', '\n', '        # comparison for <=\n', '        # needs just the Groebner basis for other\n', '        if op == op_LE:\n', '            l = self.gens()\n', '            try:\n', '                # first check whether the GB is cached already\n', '                if other_new.groebner_basis.is_in_cache():\n', '                    r = other_new.groebner_basis()\n', '                elif len(other_new._gb_by_ordering):\n', '                    o, r = next(iteritems(other_new._gb_by_ordering))\n', '                    l = self.change_ring(R.change_ring(order=o)).gens()\n', '                else: # use easy GB otherwise\n', '                    newR = R.change_ring(order="degrevlex")\n', '                    l = self.change_ring(newR).gens()\n', '                    r = other_new.change_ring(newR).groebner_basis()\n', '                    # remember this Groebner basis for future reference\n', "                    other_new._gb_by_ordering['degrevlex'] = r\n", '            except AttributeError: # e.g. quotient rings\n', '                r = other_new.groebner_basis()\n', '            return all(f.reduce(r) == 0 for f in l)\n', '\n', '        # comparison for == and != and <\n', '        # needs both groebner bases for the same term order\n', '        # first check whether the GBs are cached already\n', '        if op in [op_EQ, op_NE, op_LT]:\n', '            try:\n', '                if (other_new.groebner_basis.is_in_cache()\n', '                    or self.groebner_basis().is_in_cache()):\n', '                    l = self.groebner_basis()\n', '                    r = other_new.groebner_basis()\n', '                else: # use easy GB otherwise\n', '                    newR = R.change_ring(order="degrevlex")\n', '                    l = self.change_ring(newR).groebner_basis()\n', '                    r = other_new.change_ring(newR).groebner_basis()\n', '            except AttributeError: # e.g. quotient rings\n', '                l = self.groebner_basis()\n', '                r = other_new.groebner_basis()\n', '            contained = all(f.reduce(r) == 0 for f in l)\n', '            contains = all(f.reduce(l) == 0 for f in r)\n', '            if op == op_EQ:\n', '                return contained and contains\n', '            elif op == op_NE:\n', '                return not (contained and contains)\n', '            else:  # remaining case <\n', '                return contained and not contains\n', '\n', '    def groebner_fan(self, is_groebner_basis=False, symmetry=None, verbose=False):\n', '        r"""\n', '        Return the Groebner fan of this ideal.\n', '\n', '        The base ring must be `\\QQ` or a finite field\n', '        `\\GF{p}` of with `p \\leq 32749`.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y> = PolynomialRing(QQ)\n', '            sage: i = ideal(x^2 - y^2 + 1)\n', '            sage: g = i.groebner_fan()\n', '            sage: g.reduced_groebner_bases()\n', '            [[x^2 - y^2 + 1], [-x^2 + y^2 - 1]]\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``is_groebner_basis`` - bool (default False). if\n', '           True, then I.gens() must be a Groebner basis with respect to the\n', '           standard degree lexicographic term order.\n', '\n', '        -  ``symmetry`` - default: None; if not None, describes\n', '           symmetries of the ideal\n', '\n', '        -  ``verbose`` - default: False; if True, printout\n', '           useful info during computations\n', '        """\n', '        import sage.rings.polynomial.groebner_fan as groebner_fan\n', '        return groebner_fan.GroebnerFan(self, is_groebner_basis=is_groebner_basis,\n', '                                        symmetry=symmetry, verbose=verbose)\n', '\n', '    @cached_method(do_pickle=True)\n', '    @handle_AA_and_QQbar\n', "    def groebner_basis(self, algorithm='', deg_bound=None, mult_bound=None, prot=False, *args, **kwds):\n", '        r"""\n', '        Return the reduced Groebner basis of this ideal.\n', '\n', '        A Groebner basis `g_1,...,g_n` for an ideal `I` is a\n', '        generating set such that `<LM(g_i)> = LM(I)`, i.e., the\n', '        leading monomial ideal of `I` is spanned by the leading terms\n', '        of `g_1,...,g_n`. Groebner bases are the key concept in\n', '        computational ideal theory in multivariate polynomial rings\n', '        which allows a variety of problems to be solved.\n', '\n', '        Additionally, a *reduced* Groebner basis `G` is a unique\n', '        representation for the ideal `<G>` with respect to the chosen\n', '        monomial ordering.\n', '\n', '        INPUT:\n', '\n', '        - ``algorithm`` - determines the algorithm to use, see below\n', '           for available algorithms.\n', '\n', '        - ``deg_bound`` - only compute to degree ``deg_bound``, that\n', '          is, ignore all S-polynomials of higher degree. (default:\n', '          ``None``)\n', '\n', '        - ``mult_bound`` - the computation is stopped if the ideal is\n', '          zero-dimensional in a ring with local ordering and its\n', '          multiplicity is lower than ``mult_bound``. Singular\n', '          only. (default: ``None``)\n', '\n', '        - ``prot`` - if set to ``True`` the computation protocol of\n', '          the underlying implementation is printed. If an algorithm\n', '          from the ``singular:`` or ``magma:`` family is used,\n', '          ``prot`` may also be ``sage`` in which case the output is\n', '          parsed and printed in a common format where the amount of\n', '          information printed can be controlled via calls to\n', '          :func:`set_verbose`.\n', '\n', '        - ``*args`` - additional parameters passed to the respective\n', '           implementations\n', '\n', '        - ``**kwds`` - additional keyword parameters passed to the\n', '           respective implementations\n', '\n', '        ALGORITHMS:\n', '\n', "        ''\n", '            autoselect (default)\n', '\n', "        'singular:groebner'\n", "            Singular's ``groebner`` command\n", '\n', "        'singular:std'\n", "            Singular's ``std`` command\n", '\n', "        'singular:stdhilb'\n", "            Singular's ``stdhib`` command\n", '\n', "        'singular:stdfglm'\n", "            Singular's ``stdfglm`` command\n", '\n', "        'singular:slimgb'\n", "            Singular's ``slimgb`` command\n", '\n', "        'libsingular:groebner'\n", "            libSingular's ``groebner`` command\n", '\n', "        'libsingular:std'\n", "            libSingular's ``std`` command\n", '\n', "        'libsingular:slimgb'\n", "            libSingular's ``slimgb`` command\n", '\n', "        'libsingular:stdhilb'\n", "            libSingular's ``stdhib`` command\n", '\n', "        'libsingular:stdfglm'\n", "            libSingular's ``stdfglm`` command\n", '\n', "        'toy:buchberger'\n", "            Sage's toy/educational buchberger without Buchberger criteria\n", '\n', "        'toy:buchberger2'\n", "            Sage's toy/educational buchberger with Buchberger criteria\n", '\n', "        'toy:d_basis'\n", "            Sage's toy/educational algorithm for computation over PIDs\n", '\n', "        'macaulay2:gb'\n", "            Macaulay2's ``gb`` command (if available)\n", '\n', "        'macaulay2:f4'\n", '            Macaulay2\'s ``GroebnerBasis`` command with the strategy "F4" (if available)\n', '\n', "        'macaulay2:mgb'\n", '            Macaulay2\'s ``GroebnerBasis`` command with the strategy "MGB" (if available)\n', '\n', "        'magma:GroebnerBasis'\n", "            Magma's ``Groebnerbasis`` command (if available)\n", '\n', "        'ginv:TQ', 'ginv:TQBlockHigh', 'ginv:TQBlockLow' and 'ginv:TQDegree'\n", "            One of GINV's implementations (if available)\n", '\n', "        'giac:gbasis'\n", "            Giac's ``gbasis`` command (if available)\n", '\n', "        If only a system is given - e.g. 'magma' - the default algorithm is\n", '        chosen for that system.\n', '\n', '        .. NOTE::\n', '\n', '            The Singular and libSingular versions of the respective\n', '            algorithms are identical, but the former calls an external\n', '            Singular process while the latter calls a C function,\n', '            i.e. the calling overhead is smaller. However, the\n', '            libSingular interface does not support pretty printing of\n', '            computation protocols.\n', '\n', '        EXAMPLES:\n', '\n', '        Consider Katsura-3 over `\\QQ` with lexicographical term\n', '        ordering. We compute the reduced Groebner basis using every\n', '        available implementation and check their equality.\n', '\n', '        ::\n', '\n', "            sage: P.<a,b,c> = PolynomialRing(QQ,3, order='lex')\n", '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', '            sage: I.groebner_basis()\n', '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:groebner')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:std')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdhilb')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdfglm')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:slimgb')\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        Although Giac does support lexicographical ordering, we use degree\n', '        reverse lexicographical ordering here, in order to test against\n', '        :trac:`21884`::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: J = I.change_ring(P.change_ring(order='degrevlex'))\n", "            sage: gb = J.groebner_basis('giac') # optional - giacpy_sage, random\n", '            sage: gb  # optional - giacpy_sage\n', '            [c^3 - 79/210*c^2 + 1/30*b + 1/70*c, b^2 - 3/5*c^2 - 1/5*b + 1/5*c, b*c + 6/5*c^2 - 1/10*b - 2/5*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: J.groebner_basis.set_cache(gb)  # optional - giacpy_sage\n', '            sage: ideal(J.transformed_basis()).change_ring(P).interreduced_basis()  # testing trac 21884\n', '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', "        Giac's gbasis over `\\QQ` can benefit from a probabilistic lifting and\n", '        multi threaded operations::\n', '\n', "            sage: A9=PolynomialRing(QQ,9,'x') # optional - giacpy_sage\n", '            sage: I9=sage.rings.ideal.Katsura(A9) # optional - giacpy_sage\n', '            sage: I9.groebner_basis("giac",proba_epsilon=1e-7) # optional - giacpy_sage, long time (3s)\n', '            ...Running a probabilistic check for the reconstructed Groebner basis...\n', '            Polynomial Sequence with 143 Polynomials in 9 Variables\n', '\n', '        The list of available Giac options is provided at :func:`sage.libs.giac.groebner_basis`.\n', '\n', '        Note that ``toy:buchberger`` does not return the reduced Groebner\n', '        basis, ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: gb = I.groebner_basis('toy:buchberger')\n", '            sage: gb.is_groebner()\n', '            True\n', '            sage: gb == gb.reduced()\n', '            False\n', '\n', '        but that ``toy:buchberger2`` does. ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: gb = I.groebner_basis('toy:buchberger2'); gb\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '            sage: gb == gb.reduced()\n', '            True\n', '\n', '        Here we use Macaulay2 with three different strategies over a finite\n', '        field. ::\n', '\n', '            sage: R.<a,b,c> = PolynomialRing(GF(101), 3)\n', '            sage: I = sage.rings.ideal.Katsura(R,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:gb')  # optional - macaulay2\n", '            [c^3 + 28*c^2 - 37*b + 13*c, b^2 - 41*c^2 + 20*b - 20*c, b*c - 19*c^2 + 10*b + 40*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(R,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:f4')  # optional - macaulay2\n", '            [c^3 + 28*c^2 - 37*b + 13*c, b^2 - 41*c^2 + 20*b - 20*c, b*c - 19*c^2 + 10*b + 40*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(R,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:mgb') # optional - macaulay2\n", '            [c^3 + 28*c^2 - 37*b + 13*c, b^2 - 41*c^2 + 20*b - 20*c, b*c - 19*c^2 + 10*b + 40*c, a + 2*b + 2*c - 1]\n', '\n', '        ::\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('magma:GroebnerBasis') # optional - magma\n", '            [a - 60*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 - 79/7*c^2 + 3/7*c, c^4 - 10/21*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '        Singular and libSingular can compute Groebner basis with degree\n', '        restrictions. ::\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: I = R*[x^3+y^2,x^2*y+1]\n', "            sage: I.groebner_basis(algorithm='singular')\n", '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', "            sage: I.groebner_basis(algorithm='singular',deg_bound=2)\n", '            [x^3 + y^2, x^2*y + 1]\n', '            sage: I.groebner_basis()\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '            sage: I.groebner_basis(deg_bound=2)\n', '            [x^3 + y^2, x^2*y + 1]\n', '\n', '        A protocol is printed, if the verbosity level is at least 2,\n', '        or if the argument ``prot`` is provided. Historically, the\n', '        protocol did not appear during doctests, so, we skip the\n', '        examples with protocol output.  ::\n', '\n', '            sage: set_verbose(2)\n', '            sage: I = R*[x^3+y^2,x^2*y+1]\n', '            sage: I.groebner_basis()  # not tested\n', '            std in (QQ),(x,y),(dp(2),C)\n', '            [...:2]3ss4s6\n', '            (S:2)--\n', '            product criterion:1 chain criterion:0\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '            sage: I.groebner_basis(prot=False)\n', '            std in (QQ),(x,y),(dp(2),C)\n', '            [...:2]3ss4s6\n', '            (S:2)--\n', '            product criterion:1 chain criterion:0\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '            sage: set_verbose(0)\n', '            sage: I.groebner_basis(prot=True)  # not tested\n', '            std in (QQ),(x,y),(dp(2),C)\n', '            [...:2]3ss4s6\n', '            (S:2)--\n', '            product criterion:1 chain criterion:0\n', '            [x^3 + y^2, x^2*y + 1, y^3 - x]\n', '\n', '        The list of available options is provided at\n', '        :class:`~sage.libs.singular.option.LibSingularOptions`.\n', '\n', '        Note that Groebner bases over `\\ZZ` can also be computed. ::\n', '\n', '            sage: P.<a,b,c> = PolynomialRing(ZZ,3)\n', '            sage: I = P * (a + 2*b + 2*c - 1, a^2 - a + 2*b^2 + 2*c^2, 2*a*b + 2*b*c - b)\n', '            sage: I.groebner_basis()\n', '            [b^3 - 181*b*c^2 + 222*c^3 - 26*b*c - 146*c^2 + 19*b + 24*c,\n', '             2*b*c^2 - 48*c^3 + 3*b*c + 22*c^2 - 2*b - 2*c,\n', '             42*c^3 + 45*b^2 + 54*b*c + 22*c^2 - 13*b - 12*c,\n', '             2*b^2 + 6*b*c + 6*c^2 - b - 2*c,\n', '             10*b*c + 12*c^2 - b - 4*c,\n', '             a + 2*b + 2*c - 1]\n', '\n', '        ::\n', '\n', "            sage: I.groebner_basis('macaulay2') # optional - macaulay2\n", '            [b^3 + b*c^2 + 12*c^3 + b^2 + b*c - 4*c^2,\n', '             2*b*c^2 - 6*c^3 + b^2 + 5*b*c + 8*c^2 - b - 2*c,\n', '             42*c^3 + b^2 + 2*b*c - 14*c^2 + b,\n', '             2*b^2 - 4*b*c - 6*c^2 + 2*c, 10*b*c + 12*c^2 - b - 4*c,\n', '             a + 2*b + 2*c - 1]\n', '\n', '        Groebner bases over `\\ZZ/n\\ZZ` are also supported::\n', '\n', '            sage: P.<a,b,c> = PolynomialRing(Zmod(1000),3)\n', '            sage: I = P * (a + 2*b + 2*c - 1, a^2 - a + 2*b^2 + 2*c^2, 2*a*b + 2*b*c - b)\n', '            sage: I.groebner_basis()\n', '            [b*c^2 + 732*b*c + 808*b,\n', '             2*c^3 + 884*b*c + 666*c^2 + 320*b,\n', '             b^2 + 438*b*c + 281*b,\n', '             5*b*c + 156*c^2 + 112*b + 948*c,\n', '             50*c^2 + 600*b + 650*c,\n', '             a + 2*b + 2*c + 999,\n', '             125*b]\n', '\n', '        ::\n', '\n', '            sage: R.<x,y,z> = PolynomialRing(Zmod(2233497349584))\n', '            sage: I = R.ideal([z*(x-3*y), 3^2*x^2-y*z, z^2+y^2])\n', '            sage: I.groebner_basis()\n', '            [2*z^4, y*z^2 + 81*z^3, 248166372176*z^3, 9*x^2 - y*z, y^2 + z^2, x*z +\n', '            2233497349581*y*z, 248166372176*y*z]\n', '\n', '        Sage also supports local orderings::\n', '\n', "            sage: P.<x,y,z> = PolynomialRing(QQ,3,order='negdegrevlex')\n", '            sage: I = P * (  x*y*z + z^5, 2*x^2 + y^3 + z^7, 3*z^5 +y ^5 )\n', '            sage: I.groebner_basis()\n', '            [x^2 + 1/2*y^3, x*y*z + z^5, y^5 + 3*z^5, y^4*z - 2*x*z^5, z^6]\n', '\n', '        We can represent every element in the ideal as a combination\n', '        of the generators using the :meth:`~sage.rings.polynomial.multi_polynomial_element.MPolynomial_polydict.lift` method::\n', '\n', '            sage: P.<x,y,z> = PolynomialRing(QQ,3)\n', '            sage: I = P * ( x*y*z + z^5, 2*x^2 + y^3 + z^7, 3*z^5 +y ^5 )\n', '            sage: J = Ideal(I.groebner_basis())\n', '            sage: f = sum(P.random_element(terms=2)*f for f in I.gens())\n', '            sage: f\n', '            1/2*y^2*z^7 - 1/4*y*z^8 + 2*x*z^5 + 95*z^6 + 1/2*y^5 - 1/4*y^4*z + x^2*y^2 + 3/2*x^2*y*z + 95*x*y*z^2\n', '            sage: f.lift(I.gens())\n', '            [2*x + 95*z, 1/2*y^2 - 1/4*y*z, 0]\n', '            sage: l = f.lift(J.gens()); l\n', '            [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1/2*y^2 + 1/4*y*z, 1/2*y^2*z^2 - 1/4*y*z^3 + 2*x + 95*z]\n', '            sage: sum(map(mul, zip(l,J.gens()))) == f\n', '            True\n', '\n', '        Groebner bases over fraction fields of polynomial rings are also supported::\n', '\n', '            sage: P.<t> = QQ[]\n', '            sage: F = Frac(P)\n', '            sage: R.<X,Y,Z> = F[]\n', '            sage: I = Ideal([f + P.random_element() for f in sage.rings.ideal.Katsura(R).gens()])\n', '            sage: I.groebner_basis()\n', '            [Z^3 + (-79/105*t - 79/70)*Z^2 + (2/15*t^2 - 74/315*t + 94/105)*Y + (2/35*t^2 + 194/315*t + 1/105)*Z - 4/105*t^2 - 17/210*t - 1/28, Y^2 + (-3/5)*Z^2 + (-2/5*t - 3/5)*Y + (2/5*t + 3/5)*Z - 4/15*t + 1/2, Y*Z + 6/5*Z^2 + (-1/5*t - 3/10)*Y + (-4/5*t - 6/5)*Z + 8/15*t - 1/2, X + 2*Y + 2*Z - t - 2]\n', '\n', "        In cases where a characteristic cannot be determined, we use a toy implementation of Buchberger's algorithm\n", '        (see :trac:`6581`)::\n', '\n', '            sage: R.<a,b> = QQ[]; I = R.ideal(a^2+b^2-1)\n', '            sage: Q = QuotientRing(R,I); K = Frac(Q)\n', '            sage: R2.<x,y> = K[]; J = R2.ideal([(a^2+b^2)*x + y, x+y])\n', '            sage: J.groebner_basis()\n', '            verbose 0 (...: multi_polynomial_ideal.py, groebner_basis) Warning: falling back to very slow toy implementation.\n', '            [x + y]\n', '\n', '        ALGORITHM:\n', '\n', '        Uses Singular, Magma (if available), Macaulay2 (if available),\n', '        Giac (if available), or a toy implementation.\n', '\n', '        TESTS:\n', '\n', '        Check :trac:`27445`::\n', '\n', "            sage: P = PolynomialRing(QQ, 't', 0)\n", '            sage: P.ideal([P(2)]).groebner_basis()\n', '            [1]\n', '            sage: P.ideal([]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([0]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([3, 4, 0, 5]).groebner_basis()\n', '            [1]\n', '\n', "            sage: P = PolynomialRing(ZZ, 't', 0)\n", '            sage: P.ideal([P(2)]).groebner_basis()\n', '            [2]\n', '            sage: P.ideal([]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([0]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([2, 4, 6]).groebner_basis()\n', '            [2]\n', '\n', "            sage: P = PolynomialRing(Zmod(8), 't', 0)\n", '            sage: P.ideal([P(2)]).groebner_basis()\n', '            [2]\n', '            sage: P.ideal([]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([0]).groebner_basis()\n', '            [0]\n', '            sage: P.ideal([P(3)]).groebner_basis()\n', '            [1]\n', '\n', '        Check that this method works over QQbar (:trac:`25351`)::\n', '\n', "            sage: P.<a,b,c> = PolynomialRing(QQbar,3, order='lex')\n", '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', '            sage: I.groebner_basis()\n', '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:groebner')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:std')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdhilb')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:stdfglm')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('libsingular:slimgb')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: J = I.change_ring(P.change_ring(order='degrevlex'))\n", "            sage: gb = J.groebner_basis('giac') # optional - giacpy_sage, random\n", '            sage: gb  # optional - giacpy_sage\n', '            [c^3 + (-79/210)*c^2 + 1/30*b + 1/70*c, b^2 + (-3/5)*c^2 + (-1/5)*b + 1/5*c, b*c + 6/5*c^2 + (-1/10)*b + (-2/5)*c, a + 2*b + 2*c - 1]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('toy:buchberger2')\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('macaulay2:gb') # optional - macaulay2\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '\n', '            sage: I = sage.rings.ideal.Katsura(P,3) # regenerate to prevent caching\n', "            sage: I.groebner_basis('magma:GroebnerBasis') # optional - magma\n", '            [a + (-60)*c^3 + 158/7*c^2 + 8/7*c - 1, b + 30*c^3 + (-79/7)*c^2 + 3/7*c, c^4 + (-10/21)*c^3 + 1/84*c^2 + 1/84*c]\n', '        """\n', '        from sage.rings.finite_rings.integer_mod_ring import is_IntegerModRing\n', '        from sage.rings.polynomial.multi_polynomial_sequence import PolynomialSequence\n', '        from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing\n', '\n', '        if algorithm.lower() == "magma":\n', '            algorithm = "magma:GroebnerBasis"\n', '        elif algorithm.lower() == "singular":\n', '            algorithm = "singular:groebner"\n', '        elif algorithm.lower() == "libsingular":\n', '            algorithm = "libsingular:groebner"\n', '        elif algorithm.lower() == "macaulay2":\n', '            algorithm = "macaulay2:gb"\n', '        elif algorithm.lower() == "toy":\n', '            algorithm = "toy:buchberger2"\n', '        elif algorithm.lower() == "giac":\n', '            algorithm = "giac:gbasis"\n', '\n', '        if not algorithm:\n', '            try:\n', '                gb = self._groebner_basis_libsingular("groebner", deg_bound=deg_bound, mult_bound=mult_bound, *args, **kwds)\n', '            except (TypeError, NameError): # conversion to Singular not supported\n', '                try:\n', '                    gb = self._groebner_basis_singular("groebner", deg_bound=deg_bound, mult_bound=mult_bound, *args, **kwds)\n', '                except (TypeError, NameError, NotImplementedError): # conversion to Singular not supported\n', '                    R = self.ring()\n', '                    B = R.base_ring()\n', '                    if R.ngens() == 0:\n', '                        if R.base_ring().is_field():\n', '                            if any(g != 0 for g in self.gens()):\n', '                                gb = [R.one()]\n', '                            else:\n', '                                gb = [R.zero()]\n', '                        else:\n', '                            # To deal with this degenerated case,\n', '                            # we take a detour to a polynomial ring\n', '                            # with one variable and then go back.\n', "                            Rt = PolynomialRing(B, 't', 1)\n", '                            It = Rt.ideal([Rt(g) for g in self.gens()])\n', '                            gb = [R(g) for g in It.groebner_basis(\n', '                                algorithm=algorithm,\n', '                                deg_bound=deg_bound, mult_bound=mult_bound,\n', '                                prot=prot, *args, **kwds)]\n', '                    elif (R.term_order().is_global()\n', '                          and is_IntegerModRing(B)\n', '                          and not B.is_field()):\n', '                        verbose("Warning: falling back to very slow toy implementation.", level=0)\n', '\n', '                        ch = B.characteristic()\n', '                        R_ZZ = R.change_ring(ZZ)\n', '                        I = R_ZZ.ideal([R_ZZ(f) for f in self.gens()] + [R_ZZ(ch)])\n', '                        gb_ZZ = toy_d_basis.d_basis(I, *args, **kwds)\n', '                        gb = [r for r in (R(f) for f in gb_ZZ) if r]\n', '                    elif R.term_order().is_global():\n', '                        verbose("Warning: falling back to very slow toy implementation.", level=0)\n', '                        gb = toy_buchberger.buchberger_improved(self, *args, **kwds)\n', '                    else:\n', '                        raise TypeError("Local/unknown orderings not supported by \'toy_buchberger\' implementation.")\n', '\n', "        elif algorithm.startswith('singular:'):\n", '            gb = self._groebner_basis_singular(algorithm[9:], deg_bound=deg_bound, mult_bound=mult_bound, prot=prot, *args, **kwds)\n', "        elif algorithm.startswith('libsingular:'):\n", '            if prot == "sage":\n', '                warn("The libsingular interface does not support prot=\'sage\', reverting to \'prot=True\'.")\n', "            gb = self._groebner_basis_libsingular(algorithm[len('libsingular:'):], deg_bound=deg_bound, mult_bound=mult_bound, prot=prot, *args, **kwds)\n", '        elif algorithm.startswith("macaulay2:"):\n', '            gb = self._groebner_basis_macaulay2(strategy=algorithm.split(":")[1], *args, **kwds)\n', "        elif algorithm == 'magma:GroebnerBasis':\n", '            gb = self._groebner_basis_magma(prot=prot, deg_bound=deg_bound, *args, **kwds)\n', "        elif algorithm == 'toy:buchberger':\n", '            gb = toy_buchberger.buchberger(self, *args, **kwds)\n', "        elif algorithm == 'toy:buchberger2':\n", '            gb = toy_buchberger.buchberger_improved(self, *args, **kwds)\n', "        elif algorithm == 'toy:d_basis':\n", '            gb = toy_d_basis.d_basis(self, *args, **kwds)\n', "        elif algorithm.startswith('ginv'):\n", "            if algorithm == 'ginv':\n", '                gb = self._groebner_basis_ginv(*args, **kwds)\n', '            elif ":" in algorithm:\n', '                ginv,alg = algorithm.split(":")\n', '                gb = self._groebner_basis_ginv(algorithm=alg,*args, **kwds)\n', '            else:\n', '                raise NameError("Algorithm \'%s\' unknown."%algorithm)\n', "        elif algorithm == 'giac:gbasis':\n", '            from sage.libs.giac import groebner_basis as groebner_basis_libgiac\n', '            gb = groebner_basis_libgiac(self, prot=prot, *args, **kwds)\n', '\n', '        else:\n', '            raise NameError("Algorithm \'%s\' unknown."%algorithm)\n', '\n', '        gb = sorted(gb, reverse=True)\n', '        if self.ring().base_ring().is_field():\n', '            _gb = []\n', '            for f in gb:\n', '                if f.lc():\n', '                    _gb.append(f*f.lc()**(-1))\n', '                else:\n', '                    _gb.append(f)\n', '            gb = _gb\n', '        elif self.ring().base_ring() is ZZ:\n', '            if gb[-1].degree() == 0:\n', '                gb = [f % gb[-1] for f in gb[:-1]] + [gb[-1]]\n', '\n', '        gb = PolynomialSequence(self.ring(), gb, immutable=True)\n', '        return gb\n', '\n', '    def change_ring(self, P):\n', '        r"""\n', '        Return the ideal ``I`` in ``P`` spanned by\n', '        the generators `g_1, ..., g_n` of self as returned by\n', '        ``self.gens()``.\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``P`` - a multivariate polynomial ring\n', '\n', '\n', '        EXAMPLES::\n', '\n', "            sage: P.<x,y,z> = PolynomialRing(QQ,3,order='lex')\n", '            sage: I = sage.rings.ideal.Cyclic(P)\n', '            sage: I\n', '            Ideal (x + y + z, x*y + x*z + y*z, x*y*z - 1) of\n', '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '\n', '        ::\n', '\n', '            sage: I.groebner_basis()\n', '            [x + y + z, y^2 + y*z + z^2, z^3 - 1]\n', '\n', '        ::\n', '\n', "            sage: Q.<x,y,z> = P.change_ring(order='degrevlex'); Q\n", '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '            sage: Q.term_order()\n', '            Degree reverse lexicographic term order\n', '\n', '        ::\n', '\n', '            sage: J = I.change_ring(Q); J\n', '            Ideal (x + y + z, x*y + x*z + y*z, x*y*z - 1) of\n', '            Multivariate Polynomial Ring in x, y, z over Rational Field\n', '\n', '        ::\n', '\n', '            sage: J.groebner_basis()\n', '            [z^3 - 1, y^2 + y*z + z^2, x + y + z]\n', '        """\n', '        return P.ideal([P(f) for f in self.gens()])\n', '\n', '    def subs(self, in_dict=None, **kwds):\n', '        """\n', '        Substitute variables.\n', '\n', '        This method substitutes some variables in the polynomials that\n', '        generate the ideal with given values. Variables that are not\n', '        specified in the input remain unchanged.\n', '\n', '        INPUT:\n', '\n', '        - ``in_dict`` -- (optional) dictionary of inputs\n', '\n', '        - ``**kwds`` -- named parameters\n', '\n', '        OUTPUT:\n', '\n', '        A new ideal with modified generators. If possible, in the same\n', '        polynomial ring. Raises a ``TypeError`` if no common\n', '        polynomial ring of the substituted generators can be found.\n', '\n', '        EXAMPLES::\n', '\n', "            sage: R.<x,y> = PolynomialRing(ZZ,2,'xy')\n", '            sage: I = R.ideal(x^5+y^5, x^2 + y + x^2*y^2 + 5); I\n', '            Ideal (x^5 + y^5, x^2*y^2 + x^2 + y + 5) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '            sage: I.subs(x=y)\n', '            Ideal (2*y^5, y^4 + y^2 + y + 5) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '            sage: I.subs({x:y})    # same substitution but with dictionary\n', '            Ideal (2*y^5, y^4 + y^2 + y + 5) of Multivariate Polynomial Ring in x, y over Integer Ring\n', '\n', '        The new ideal can be in a different ring::\n', '\n', '            sage: R.<a,b> = PolynomialRing(QQ,2)\n', '            sage: S.<x,y> = PolynomialRing(QQ,2)\n', '            sage: I = R.ideal(a^2+b^2+a-b+2); I\n', '            Ideal (a^2 + b^2 + a - b + 2) of Multivariate Polynomial Ring in a, b over Rational Field\n', '            sage: I.subs(a=x, b=y)\n', '            Ideal (x^2 + y^2 + x - y + 2) of Multivariate Polynomial Ring in x, y over Rational Field\n', '\n', '        The resulting ring need not be a multivariate polynomial ring::\n', '\n', '            sage: T.<t> = PolynomialRing(QQ)\n', '            sage: I.subs(a=t, b=t)\n', '            Principal ideal (t^2 + 1) of Univariate Polynomial Ring in t over Rational Field\n', '            sage: var("z")\n', '            z\n', '            sage: I.subs(a=z, b=z)\n', '            Principal ideal (2*z^2 + 2) of Symbolic Ring\n', '\n', '        Variables that are not substituted remain unchanged::\n', '\n', '            sage: R.<x,y> = PolynomialRing(QQ,2)\n', '            sage: I = R.ideal(x^2+y^2+x-y+2); I\n', '            Ideal (x^2 + y^2 + x - y + 2) of Multivariate Polynomial Ring in x, y over Rational Field\n', '            sage: I.subs(x=1)\n', '            Ideal (y^2 - y + 4) of Multivariate Polynomial Ring in x, y over Rational Field\n', '        """\n', '        ring = self.ring()\n', '        generators = [f.subs(in_dict, **kwds) for f in self.gens()]\n', '        if not all(gen in ring for gen in generators):\n', '            ring = Sequence(generators).universe()\n', '        try:\n', '            return ring.ideal(generators)\n', '        except AttributeError:\n', "            raise TypeError('Cannot construct an ideal from the substituted generators!')\n", '\n', '    def reduce(self, f):\n', '        """\n', '        Reduce an element modulo the reduced Groebner basis for this ideal.\n', '        This returns 0 if and only if the element is in this ideal. In any\n', '        case, this reduction is unique up to monomial orders.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = PolynomialRing(QQ, 2)\n', '            sage: I = (x^3 + y, y)*R\n', '            sage: I.reduce(y)\n', '            0\n', '            sage: I.reduce(x^3)\n', '            0\n', '            sage: I.reduce(x - y)\n', '            x\n', '\n', '            sage: I = (y^2 - (x^3 + x))*R\n', '            sage: I.reduce(x^3)\n', '            y^2 - x\n', '            sage: I.reduce(x^6)\n', '            y^4 - 2*x*y^2 + x^2\n', '            sage: (y^2 - x)^2\n', '            y^4 - 2*x*y^2 + x^2\n', '\n', '        .. NOTE::\n', '\n', '            Requires computation of a Groebner basis, which can be a\n', '            very expensive operation.\n', '        """\n', '        try:\n', '            strat = self._groebner_strategy()\n', '            return strat.normal_form(f)\n', '        except (TypeError, NotImplementedError, ValueError):\n', '            pass\n', '\n', '        gb = self.groebner_basis()\n', '        return f.reduce(gb)\n', '\n', '    def _contains_(self, f):\n', '        r"""\n', '        Returns ``True`` if ``f`` is in this ideal,\n', '        ``False`` otherwise.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: R.<x,y> = QQ[]\n', '            sage: I = (x^3 + y, y)*R\n', '            sage: x in I # indirect doctest\n', '            False\n', '            sage: y in I\n', '            True\n', '            sage: x^3 + 2*y in I\n', '            True\n', '\n', '        .. NOTE::\n', '\n', '            Requires computation of a Groebner basis, which can be a very\n', '            expensive operation.\n', '        """\n', '        g = f.reduce(self.groebner_basis())\n', '        return self.ring()(g).is_zero()\n', '\n', "    def homogenize(self, var='h'):\n", '        """\n', '        Return homogeneous ideal spanned by the homogeneous polynomials\n', '        generated by homogenizing the generators of this ideal.\n', '\n', '        INPUT:\n', '\n', '\n', '        -  ``h`` - variable name or variable in cover ring\n', "           (default: 'h')\n", '\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = PolynomialRing(GF(2))\n', '            sage: I = Ideal([x^2*y + z + 1, x + y^2 + 1]); I\n', '            Ideal (x^2*y + z + 1, y^2 + x + 1) of Multivariate\n', '            Polynomial Ring in x, y, z over Finite Field of size 2\n', '\n', '        ::\n', '\n', '            sage: I.homogenize()\n', '            Ideal (x^2*y + z*h^2 + h^3, y^2 + x*h + h^2) of\n', '            Multivariate Polynomial Ring in x, y, z, h over Finite\n', '            Field of size 2\n', '\n', '        ::\n', '\n', '            sage: I.homogenize(y)\n', '            Ideal (x^2*y + y^3 + y^2*z, x*y) of Multivariate\n', '            Polynomial Ring in x, y, z over Finite Field of size 2\n', '\n', '        ::\n', '\n', '                   sage: I = Ideal([x^2*y + z^3 + y^2*x, x + y^2 + 1])\n', '            sage: I.homogenize()\n', '            Ideal (x^2*y + x*y^2 + z^3, y^2 + x*h + h^2) of\n', '            Multivariate Polynomial Ring in x, y, z, h over Finite\n', '            Field of size 2\n', '        """\n', '        I = [f.homogenize(var) for f in self.gens()]\n', '        P = max(I, key=lambda x: x.parent().ngens()).parent()\n', '        return P.ideal([P(f) for f in I])\n', '\n', '    def is_homogeneous(self):\n', '        r"""\n', '        Return ``True`` if this ideal is spanned by homogeneous\n', '        polynomials, i.e. if it is a homogeneous ideal.\n', '\n', '        EXAMPLES::\n', '\n', '            sage: P.<x,y,z> = PolynomialRing(QQ,3)\n', '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: I\n', '            Ideal (x + 2*y + 2*z - 1, x^2 + 2*y^2 + 2*z^2 - x, 2*x*y +\n', '            2*y*z - y) of Multivariate Polynomial Ring in x, y, z over\n', '            Rational Field\n', '\n', '        ::\n', '\n', '            sage: I.is_homogeneous()\n', '            False\n', '\n', '        ::\n', '\n', '            sage: J = I.homogenize()\n', '            sage: J\n', '            Ideal (x + 2*y + 2*z - h, x^2 + 2*y^2 + 2*z^2 - x*h, 2*x*y\n', '            + 2*y*z - y*h) of Multivariate Polynomial Ring in x, y, z,\n', '            h over Rational Field\n', '\n', '        ::\n', '\n', '            sage: J.is_homogeneous()\n', '            True\n', '        """\n', '        for f in self.gens():\n', '            if not f.is_homogeneous():\n', '                return False\n', '        return True\n', '\n', '    def degree_of_semi_regularity(self):\n', '        r"""\n', '        Return the degree of semi-regularity of this ideal under the\n', '        assumption that it is semi-regular.\n', '\n', '        Let `\\{f_1, ... , f_m\\} \\subset K[x_1 , ... , x_n]` be\n', '        homogeneous polynomials of degrees `d_1,... ,d_m`\n', '        respectively. This sequence is semi-regular if:\n', '\n', '         * `\\{f_1, ... , f_m\\} \\neq K[x_1 , ... , x_n]`\n', '\n', '         * for all `1 \\leq i \\leq m` and `g \\in K[x_1,\\dots,x_n]`:\n', '           `deg(g \\cdot pi ) < D` and\n', '           `g \\cdot f_i \\in <f_1 , \\dots , f_{i-1}>` implies that\n', '           `g \\in <f_1, ..., f_{i-1}>` where `D` is the degree of regularity.\n', '\n', '        This notion can be extended to affine polynomials by\n', '        considering their homogeneous components of highest degree.\n', '\n', '        The degree of regularity of a semi-regular sequence\n', '        `f_1, ...,f_m` of respective degrees `d_1,...,d_m` is given by the\n', '        index of the first non-positive coefficient of:\n', '\n', '            `\\sum c_k z^k = \\frac{\\prod (1 - z^{d_i})}{(1-z)^n}`\n', '\n', '        EXAMPLES:\n', '\n', '        We consider a homogeneous example::\n', '\n', '            sage: n = 8\n', '            sage: K = GF(127)\n', "            sage: P = PolynomialRing(K,n,'x')\n", '            sage: s = [K.random_element() for _ in range(n)]\n', '            sage: L = []\n', '            sage: for i in range(2*n):\n', '            ....:     f = P.random_element(degree=2, terms=binomial(n,2))\n', '            ....:     f -= f(*s)\n', '            ....:     L.append(f.homogenize())\n', '            sage: I = Ideal(L)\n', '            sage: I.degree_of_semi_regularity()\n', '            4\n', '\n', '        From this, we expect a Groebner basis computation to reach at\n', '        most degree 4. For homogeneous systems this is equivalent to\n', '        the largest degree in the Groebner basis::\n', '\n', '            sage: max(f.degree() for f in I.groebner_basis())\n', '            4\n', '\n', '        We increase the number of polynomials and observe a decrease\n', '        the degree of regularity::\n', '\n', '            sage: for i in range(2*n):\n', '            ....:     f = P.random_element(degree=2, terms=binomial(n,2))\n', '            ....:     f -= f(*s)\n', '            ....:     L.append(f.homogenize())\n', '            sage: I = Ideal(L)\n', '            sage: I.degree_of_semi_regularity()\n', '            3\n', '\n', '            sage: max(f.degree() for f in I.groebner_basis())\n', '            3\n', '\n', '        The degree of regularity approaches 2 for quadratic systems as\n', '        the number of polynomials approaches `n^2`::\n', '\n', '            sage: for i in range((n-4)*n):\n', '            ....:     f = P.random_element(degree=2, terms=binomial(n,2))\n', '            ....:     f -= f(*s)\n', '            ....:     L.append(f.homogenize())\n', '            sage: I = Ideal(L)\n', '            sage: I.degree_of_semi_regularity()\n', '            2\n', '\n', '            sage: max(f.degree() for f in I.groebner_basis())\n', '            2\n', '\n', '        .. NOTE::\n', '\n', '            It is unknown whether semi-regular sequences\n', '            exist. However, it is expected that random systems are\n', '            semi-regular sequences. For more details about\n', '            semi-regular sequences see [BFS2004]_.\n', '        """\n', '        degs = [f.degree() for f in self.gens() if f!=0] # we ignore zeroes\n', '        m, n = self.ngens(), len(set(sum([f.variables() for f in self.gens()],())))\n', '        if m <= n:\n', '            raise ValueError("This function requires an overdefined system of polynomials.")\n', '\n', '        from sage.rings.all import QQ\n', '        from sage.misc.misc_c import prod\n', '        from sage.rings.power_series_ring import PowerSeriesRing\n', '\n', "        R = PowerSeriesRing(QQ,'z', default_prec=sum(degs))\n", '        z = R.gen()\n', '        dreg = 0\n', '        s = prod([1-z**d for d in degs]) / (1-z)**n\n', '        for dreg in range(sum(degs)):\n', '            if s[dreg] <= 0:\n', '                return ZZ(dreg)\n', '        else:\n', '            raise ValueError("BUG: Could not compute the degree of semi-regularity")\n', '\n', '    def plot(self, *args, **kwds):\n', '        """\n', '        Plot the real zero locus of this principal ideal.\n', '\n', '        INPUT:\n', '\n', '        - ``self`` - a principal ideal in 2 variables\n', '\n', "        - ``algorithm`` - set this to 'surf' if you want 'surf' to\n", '           plot the ideal (default: None)\n', '\n', '        - ``*args`` - optional tuples ``(variable, minimum, maximum)``\n', '           for plotting dimensions\n', '\n', '        - ``**kwds`` - optional keyword arguments passed on to\n', '           ``implicit_plot``\n', '\n', '        EXAMPLES:\n', '\n', '        Implicit plotting in 2-d::\n', '\n', '            sage: R.<x,y> = PolynomialRing(QQ,2)\n', '            sage: I = R.ideal([y^3 - x^2])\n', '            sage: I.plot()                         # cusp\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: I = R.ideal([y^2 - x^2 - 1])\n', '            sage: I.plot((x,-3, 3), (y, -2, 2))  # hyperbola\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: I = R.ideal([y^2 + x^2*(1/4) - 1])\n', '            sage: I.plot()                         # ellipse\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: I = R.ideal([y^2-(x^2-1)*(x-2)])\n', '            sage: I.plot()                         # elliptic curve\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        ::\n', '\n', '            sage: f = ((x+3)^3 + 2*(x+3)^2 - y^2)*(x^3 - y^2)*((x-3)^3-2*(x-3)^2-y^2)\n', '            sage: I = R.ideal(f)\n', '            sage: I.plot()                         # the Singular logo\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        This used to be :trac:`5267`::\n', '\n', '            sage: I = R.ideal([-x^2*y+1])\n', '            sage: I.plot()\n', '            Graphics object consisting of 1 graphics primitive\n', '\n', '        AUTHORS:\n', '\n', '        - Martin Albrecht (2008-09)\n', '        """\n', '        from sage.rings.real_mpfr import RR\n', '        from sage.plot.all import implicit_plot\n', '\n', '        K = self.base_ring()\n', '        if not RR.has_coerce_map_from(K):\n', '            raise NotImplementedError("plotting of curves over %s is not implemented yet" % K)\n', '\n', '        if not self.is_principal():\n', '            raise TypeError("ideal must be principal")\n', '\n', '        f = self.gens()[0]\n', '\n', '        variables = sorted(f.variables(), reverse=True)\n', '\n', "        if len(variables) == 2 and kwds.get('algorithm','') != 'surf':\n", '            V = [(variables[0], None, None), (variables[1], None, None)]\n', '\n', '            if len(args) > 2:\n', '                raise TypeError("Expected up to 2 optional parameters but got %d."%len(args))\n', '\n', '            # first check whether user supplied boundaries\n', '            for e in args:\n', '                if not isinstance(e, (tuple, list)) or len(e) != 3:\n', '                    raise TypeError("Optional parameter must be list or tuple or length 3.")\n', '                v,mi,ma = e\n', '\n', '                if v not in variables:\n', '                    raise TypeError("Optional parameter must contain variable of ideal generator.")\n', '\n', '                vi = variables.index(v)\n', '                V[vi] = v,mi,ma\n', '\n', '            # now check whether we should find boundaries\n', '            for var_index in range(2):\n', '                if V[var_index][1] is None:\n', '                    v, mi, ma = variables[var_index], -10, 10\n', '                    for i in range(mi, ma):\n', '                        roots = f.subs({v:i}).univariate_polynomial().change_ring(RR).roots()\n', '                        if len(roots) > 0:\n', '                            mi = i - 1\n', '                            break\n', '\n', '                    for i in range(ma, mi, -1):\n', '                        roots = f.subs({v:i}).univariate_polynomial().change_ring(RR).roots()\n', '                        if len(roots) > 0:\n', '                            ma = i + 1\n', '                            break\n', '                    V[var_index] = variables[var_index], mi, ma\n', '\n', '            kwds.setdefault("plot_points",200)\n', "            kwds.pop('algorithm', '')\n", '            return implicit_plot(f, V[0], V[1], **kwds)\n', '\n', "        elif len(variables) == 3 or kwds.get('algorithm','') == 'surf':\n", '            MPolynomialIdeal_singular_repr.plot(self, kwds.get("singular",singular_default))\n', '        else:\n', '            raise TypeError("Ideal generator may not have either 2 or 3 variables.")\n', '\n', '    def random_element(self, degree, compute_gb=False, *args, **kwds):\n', '        r"""\n', '        Return a random element in this ideal as `r = \\sum h_i·f_i`.\n', '\n', '        INPUT:\n', '\n', '        - ``compute_gb`` - if ``True`` then a Gröbner basis is computed first\n', '          and `f_i` are the elements in the Gröbner basis. Otherwise whatever\n', '          basis is returned by ``self.gens()`` is used.\n', '\n', '        - ``*args`` and ``**kwds`` are passed to ``R.random_element()`` with\n', '          ``R = self.ring()``.\n', '\n', '        EXAMPLES:\n', '\n', '        We compute a uniformly random element up to the provided degree. ::\n', '\n', '            sage: P.<x,y,z> = GF(127)[]\n', '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: I.random_element(degree=4, compute_gb=True, terms=infinity)\n', '            34*x^4 - 33*x^3*y + 45*x^2*y^2 - 51*x*y^3 - 55*y^4 + 43*x^3*z ... - 28*y - 33*z + 45\n', '\n', '        Note that sampling uniformly at random from the ideal at some large enough degree is\n', '        equivalent to computing a Gröbner basis. We give an example showing how to compute a Gröbner\n', '        basis if we can sample uniformly at random from an ideal::\n', '\n', '            sage: n = 3; d = 4\n', "            sage: P = PolynomialRing(GF(127), n, 'x')\n", '            sage: I = sage.rings.ideal.Cyclic(P)\n', '\n', '        1. We sample `n^d` uniformly random elements in the ideal::\n', '\n', '            sage: F = Sequence(I.random_element(degree=d, compute_gb=True, terms=infinity) for _ in range(n^d))\n', '\n', '        2. We linearize and compute the echelon form::\n', '\n', '            sage: A,v = F.coefficient_matrix()\n', '            sage: A.echelonize()\n', '\n', '        3. The result is the desired Gröbner basis::\n', '\n', '            sage: G = Sequence((A*v).list())\n', '            sage: G.is_groebner()\n', '            True\n', '            sage: Ideal(G) == I\n', '            True\n', '\n', '        We return some element in the ideal with no guarantee on the distribution::\n', '\n', "            sage: P = PolynomialRing(GF(127), 10, 'x')\n", '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: f = I.random_element(degree=3)\n', '            sage: f  # random\n', '            -25*x0^2*x1 + 14*x1^3 + 57*x0*x1*x2 + ... + 19*x7*x9 + 40*x8*x9 + 49*x1\n', '            sage: f.degree()\n', '            3\n', '\n', '        We show that the default method does not sample uniformly at random from the ideal::\n', '\n', '            sage: P.<x,y,z> = GF(127)[]\n', '            sage: G = Sequence([x+7, y-2, z+110])\n', '            sage: I = Ideal([sum(P.random_element() * g for g in G) for _ in range(4)])\n', '            sage: all(I.random_element(degree=1) == 0 for _ in range(100))\n', '            True\n', '\n', '        If degree equals the degree of the generators a random linear\n', '        combination of the generators is returned::\n', '\n', '            sage: P.<x,y> = QQ[]\n', '            sage: I = P.ideal([x^2,y^2])\n', '            sage: set_random_seed(5)\n', '            sage: I.random_element(degree=2)\n', '            -2*x^2 + 2*y^2\n', '\n', '        """\n', '        if compute_gb:\n', '            gens = self.groebner_basis()\n', '        else:\n', '            gens = self.basis\n', '\n', '        R = self.ring()\n', '\n', '        r = R.zero()\n', '\n', '        for f in gens:\n', '            d = degree - f.degree()\n', '            if d >= 0:\n', '                h = R.random_element(degree=d, *args, **kwds)\n', '                r += h*f\n', '        return r\n', '\n', '    @require_field\n', '    def weil_restriction(self):\n', '        r"""\n', '        Compute the Weil restriction of this ideal over some extension\n', '        field. If the field is a finite field, then this computes\n', '        the Weil restriction to the prime subfield.\n', '\n', '        A Weil restriction of scalars - denoted `Res_{L/k}` - is a\n', '        functor which, for any finite extension of fields `L/k` and\n', '        any algebraic variety `X` over `L`, produces another\n', '        corresponding variety `Res_{L/k}(X)`, defined over `k`. It is\n', '        useful for reducing questions about varieties over large\n', '        fields to questions about more complicated varieties over\n', '        smaller fields.\n', '\n', '        This function does not compute this Weil restriction directly\n', '        but computes on generating sets of polynomial ideals:\n', '\n', '        Let `d` be the degree of the field extension `L/k`, let `a` a\n', '        generator of `L/k` and `p` the minimal polynomial of\n', '        `L/k`. Denote this ideal by `I`.\n', '\n', '        Specifically, this function first maps each variable `x` to\n', '        its representation over `k`: `\\sum_{i=0}^{d-1} a^i x_i`. Then\n', '        each generator of `I` is evaluated over these representations\n', '        and reduced modulo the minimal polynomial `p`. The result is\n', '        interpreted as a univariate polynomial in `a` and its\n', '        coefficients are the new generators of the returned ideal.\n', '\n', '        If the input and the output ideals are radical, this is\n', '        equivalent to the statement about algebraic varieties above.\n', '\n', '        OUTPUT: MPolynomial Ideal\n', '\n', '        EXAMPLES::\n', '\n', '            sage: k.<a> = GF(2^2)\n', '            sage: P.<x,y> = PolynomialRing(k,2)\n', '            sage: I = Ideal([x*y + 1, a*x + 1])\n', '            sage: I.variety()\n', '            [{y: a, x: a + 1}]\n', '            sage: J = I.weil_restriction()\n', '            sage: J\n', '            Ideal (x0*y0 + x1*y1 + 1, x1*y0 + x0*y1 + x1*y1, x1 + 1, x0 + x1) of\n', '            Multivariate Polynomial Ring in x0, x1, y0, y1 over Finite Field of size\n', '            2\n', '            sage: J += sage.rings.ideal.FieldIdeal(J.ring()) # ensure radical ideal\n', '            sage: J.variety() # py2\n', '            [{y1: 1, x1: 1, x0: 1, y0: 0}]\n', '            sage: J.variety() # py3\n', '            [{y1: 1, y0: 0, x1: 1, x0: 1}]\n', '\n', '            sage: J.weil_restriction() # returns J\n', '            Ideal (x0*y0 + x1*y1 + 1, x1*y0 + x0*y1 + x1*y1, x1 + 1, x0 + x1, x0^2 +\n', '            x0, x1^2 + x1, y0^2 + y0, y1^2 + y1) of Multivariate Polynomial Ring in\n', '            x0, x1, y0, y1 over Finite Field of size 2\n', '\n', '            sage: k.<a> = GF(3^5)\n', '            sage: P.<x,y,z> = PolynomialRing(k)\n', '            sage: I = sage.rings.ideal.Katsura(P)\n', '            sage: I.dimension()\n', '            0\n', '            sage: I.variety() # py2\n', '            [{y: 0, z: 0, x: 1}]\n', '            sage: I.variety() # py3\n', '             [{z: 0, y: 0, x: 1}]\n', '\n', '            sage: J = I.weil_restriction(); J\n', '            Ideal (x0 - y0 - z0 - 1, x1 - y1 - z1, x2 - y2 - z2, x3 - y3 - z3, x4 -\n', '            y4 - z4, x0^2 + x2*x3 + x1*x4 - y0^2 - y2*y3 - y1*y4 - z0^2 - z2*z3 -\n', '            z1*z4 - x0, -x0*x1 - x2*x3 - x3^2 - x1*x4 + x2*x4 + y0*y1 + y2*y3 + y3^2\n', '            + y1*y4 - y2*y4 + z0*z1 + z2*z3 + z3^2 + z1*z4 - z2*z4 - x1, x1^2 -\n', '            x0*x2 + x3^2 - x2*x4 + x3*x4 - y1^2 + y0*y2 - y3^2 + y2*y4 - y3*y4 -\n', '            z1^2 + z0*z2 - z3^2 + z2*z4 - z3*z4 - x2, -x1*x2 - x0*x3 - x3*x4 - x4^2\n', '            + y1*y2 + y0*y3 + y3*y4 + y4^2 + z1*z2 + z0*z3 + z3*z4 + z4^2 - x3, x2^2\n', '            - x1*x3 - x0*x4 + x4^2 - y2^2 + y1*y3 + y0*y4 - y4^2 - z2^2 + z1*z3 +\n', '            z0*z4 - z4^2 - x4, -x0*y0 + x4*y1 + x3*y2 + x2*y3 + x1*y4 - y0*z0 +\n', '            y4*z1 + y3*z2 + y2*z3 + y1*z4 - y0, -x1*y0 - x0*y1 - x4*y1 - x3*y2 +\n', '            x4*y2 - x2*y3 + x3*y3 - x1*y4 + x2*y4 - y1*z0 - y0*z1 - y4*z1 - y3*z2 +\n', '            y4*z2 - y2*z3 + y3*z3 - y1*z4 + y2*z4 - y1, -x2*y0 - x1*y1 - x0*y2 -\n', '            x4*y2 - x3*y3 + x4*y3 - x2*y4 + x3*y4 - y2*z0 - y1*z1 - y0*z2 - y4*z2 -\n', '            y3*z3 + y4*z3 - y2*z4 + y3*z4 - y2, -x3*y0 - x2*y1 - x1*y2 - x0*y3 -\n', '            x4*y3 - x3*y4 + x4*y4 - y3*z0 - y2*z1 - y1*z2 - y0*z3 - y4*z3 - y3*z4 +\n', '            y4*z4 - y3, -x4*y0 - x3*y1 - x2*y2 - x1*y3 - x0*y4 - x4*y4 - y4*z0 -\n', '            y3*z1 - y2*z2 - y1*z3 - y0*z4 - y4*z4 - y4) of Multivariate Polynomial\n', '            Ring in x0, x1, x2, x3, x4, y0, y1, y2, y3, y4, z0, z1, z2, z3, z4 over\n', '            Finite Field of size 3\n', '            sage: J += sage.rings.ideal.FieldIdeal(J.ring()) # ensure radical ideal\n', '            sage: from sage.doctest.fixtures import reproducible_repr\n', '            sage: print(reproducible_repr(J.variety()))\n', '            [{x0: 1, x1: 0, x2: 0, x3: 0, x4: 0, y0: 0, y1: 0, y2: 0, y3: 0, y4: 0, z0: 0, z1: 0, z2: 0, z3: 0, z4: 0}]\n', '\n', '\n', '        Weil restrictions are often used to study elliptic curves over\n', '        extension fields so we give a simple example involving those::\n', '\n', '            sage: K.<a> = QuadraticField(1/3)\n', '            sage: E = EllipticCurve(K,[1,2,3,4,5])\n', '\n', '        We pick a point on ``E``::\n', '\n', '            sage: p = E.lift_x(1); p\n', '            (1 : 2 : 1)\n', '\n', '            sage: I = E.defining_ideal(); I\n', '            Ideal (-x^3 - 2*x^2*z + x*y*z + y^2*z - 4*x*z^2 + 3*y*z^2 - 5*z^3) of Multivariate Polynomial Ring in x, y, z over Number Field in a with defining polynomial x^2 - 1/3 with a = 0.5773502691896258?\n', '\n', '        Of course, the point ``p`` is a root of all generators of ``I``::\n', '\n', '            sage: I.subs(x=1,y=2,z=1)\n', '            Ideal (0) of Multivariate Polynomial Ring in x, y, z over Number Field in a with defining polynomial x^2 - 1/3 with a = 0.5773502691896258?\n', '\n', '        ``I`` is also radical::\n', '\n', '            sage: I.radical() == I\n', '            True\n', '\n', '        So we compute its Weil restriction::\n', '\n', '            sage: J = I.weil_restriction()\n', '            sage: J\n', '            Ideal (-x0^3 - x0*x1^2 - 2*x0^2*z0 - 2/3*x1^2*z0 + x0*y0*z0 + y0^2*z0 +\n', '            1/3*x1*y1*z0 + 1/3*y1^2*z0 - 4*x0*z0^2 + 3*y0*z0^2 - 5*z0^3 -\n', '            4/3*x0*x1*z1 + 1/3*x1*y0*z1 + 1/3*x0*y1*z1 + 2/3*y0*y1*z1 - 8/3*x1*z0*z1\n', '            + 2*y1*z0*z1 - 4/3*x0*z1^2 + y0*z1^2 - 5*z0*z1^2, -3*x0^2*x1 - 1/3*x1^3\n', '            - 4*x0*x1*z0 + x1*y0*z0 + x0*y1*z0 + 2*y0*y1*z0 - 4*x1*z0^2 + 3*y1*z0^2\n', '            - 2*x0^2*z1 - 2/3*x1^2*z1 + x0*y0*z1 + y0^2*z1 + 1/3*x1*y1*z1 +\n', '            1/3*y1^2*z1 - 8*x0*z0*z1 + 6*y0*z0*z1 - 15*z0^2*z1 - 4/3*x1*z1^2 +\n', '            y1*z1^2 - 5/3*z1^3) of Multivariate Polynomial Ring in x0, x1, y0, y1,\n', '            z0, z1 over Rational Field\n', '\n', '        We can check that the point ``p`` is still a root of all generators of ``J``::\n', '\n', '            sage: J.subs(x0=1,y0=2,z0=1,x1=0,y1=0,z1=0)\n', '            Ideal (0, 0) of Multivariate Polynomial Ring in x0, x1, y0, y1, z0, z1 over Rational Field\n', '\n', '        Example for relative number fields::\n', '\n', '            sage: R.<x> = QQ[]\n', '            sage: K.<w> = NumberField(x^5-2)\n', '            sage: R.<x> = K[]\n', '            sage: L.<v> = K.extension(x^2+1)\n', '            sage: S.<x,y> = L[]\n', '            sage: I = S.ideal([y^2-x^3-1])\n', '            sage: I.weil_restriction()\n', '            Ideal (-x0^3 + 3*x0*x1^2 + y0^2 - y1^2 - 1, -3*x0^2*x1 + x1^3 + 2*y0*y1)\n', '            of Multivariate Polynomial Ring in x0, x1, y0, y1 over Number Field in w\n', '            with defining polynomial x^5 - 2\n', '\n', '        .. NOTE::\n', '\n', '            Based on a Singular implementation by Michael Brickenstein\n', '        """\n', '        from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing\n', '\n', '        R = self.ring()\n', '        nvars = R.ngens()\n', '        L = R.base_ring()\n', '        if L.is_finite():\n', '            k = L.prime_subfield()\n', '            d = L.degree()\n', '            poly = L.polynomial()\n', '        else:\n', '            k = L.base_field()\n', '            d = L.relative_degree()\n', '            poly = L.relative_polynomial()\n', '\n', '        if d == 1:\n', '            return self\n', '\n', "        helper = PolynomialRing(k, nvars + 1, (L.variable_name(),) + R.variable_names(), order='lex')\n", '        myminpoly = poly.subs(helper.gen(0))\n', '\n', '        l = [helper(str(f))  for f in self.gens()]\n', '        r = myminpoly.degree()\n', "        intermediate_ring = PolynomialRing(k, nvars*r+1, 'x')\n", '        a = intermediate_ring.gen(0)\n', '\n', '        # map e.g. x -> a^2*x_2 + a*x_1 + x_0, where x_0,..,x_2\n', '        # represent the components of x if viewed as a vector in k^r\n', '        map_ideal = [a]\n', '\n', '        variables = iter(intermediate_ring.gens()[1:])\n', '        for _ in range(nvars):\n', '           map_ideal.append(sum([a**i * next(variables) for i in range(r)]))\n', '\n', '        myminpoly = myminpoly(*map_ideal)\n', '        l = [f(*map_ideal).reduce([myminpoly]) for f in l]\n', '\n', '        result = []\n', '        # split e.g. a^2*x2+a*x1+x0 to x0,x1,x2\n', '        for f in l:\n', '            t = []\n', '            for i in reversed(range(r)):\n', '               g = f.coefficient(a**i)\n', '               f =  f - a**i * g\n', '               t.append(g)\n', '            result += reversed(t)\n', '\n', '        # eliminate parameter\n', '        new_var_names = [str(var) + "%d"%i for var in R.gens() for i in range(r)]\n', '\n', '        result_ring = PolynomialRing(k, nvars*r, new_var_names)\n', '\n', '        map_ideal = (0,) + result_ring.gens()\n', '        result = [h(*map_ideal) for h in result]\n', '\n', '        return result_ring.ideal(result)\n'], 3399)
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 2372 ##
> 0
> sage: from sage.misc.sageinspect import sage_getvariablename ## line 2505 ##
> sage: A = random_matrix(ZZ, 100) ## line 2506 ##
> sage: sage_getvariablename(A) ## line 2507 ##
> 'A'
> sage: B = A ## line 2509 ##
> sage: sage_getvariablename(A) ## line 2510 ##
> ['A', 'B']
> sage: sage_getvariablename(random_matrix(ZZ, 60)) ## line 2515 ##
> []
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 2517 ##
> 0
> sage: from sage.misc.sageinspect import * ## line 2550 ##
> sage: from sage.misc.sageinspect import _extract_source, _extract_embedded_position, _sage_getargspec_cython, __internal_teststring ## line 2551 ##
> sage: sage_getdoc(None) ## line 2555 ##
> ''
> sage: sage_getsource(sage) ## line 2558 ##
> '__all__ = [\'all\']\n\n# Set sage.__version__ to the current version number. This is analogous\n# to many other Python packages.\nfrom sage.version import version as __version__\n\n# Make sure that the correct zlib library is loaded. This is needed\n# to prevent the system zlib to be loaded instead of the Sage one.\n# See https://trac.sagemath.org/ticket/23122\nimport zlib\n\n# IPython calls this when starting up\ndef load_ipython_extension(*args):\n    import sage.repl.ipython_extension\n    sage.repl.ipython_extension.load_ipython_extension(*args)\n\n\n# Monkey-patch inspect.isfunction() to support Cython functions.\ndef isfunction(obj):\n    """\n    Check whether something is a function.\n\n    We assume that anything which has a genuine ``__code__``\n    attribute (not using ``__getattr__`` overrides) is a function.\n    This is meant to support Cython functions.\n\n    EXAMPLES::\n\n        sage: from inspect import isfunction\n        sage: def f(): pass\n        sage: isfunction(f)\n        True\n        sage: isfunction(lambda x:x)\n        True\n        sage: from sage.categories.coercion_methods import _mul_parent\n        sage: isfunction(_mul_parent)\n        True\n        sage: isfunction(Integer.digits)     # unbound method\n        False\n        sage: isfunction(Integer(1).digits)  # bound method\n        False\n\n    Verify that ipywidgets can correctly determine signatures of Cython\n    functions::\n\n        sage: from ipywidgets.widgets.interaction import signature\n        sage: from sage.dynamics.complex_dynamics.mandel_julia_helper import fast_mandelbrot_plot\n        sage: signature(fast_mandelbrot_plot)  # random\n        <IPython.utils._signatures.Signature object at 0x7f3ec8274e10>\n    """\n    # We use type(obj) instead of just obj to avoid __getattr__().\n    # Some types, like methods, will return the __code__ of the\n    # underlying function in __getattr__() but we don\'t want to\n    # detect those as functions.\n    return hasattr(type(obj), "__code__")\n\nimport inspect\ninspect.isfunction = isfunction\n\n\n# Monkey-patch ExtensionFileLoader to allow IPython to find the sources\n# of Cython files. See https://trac.sagemath.org/ticket/24681\ntry:\n    from importlib.machinery import ExtensionFileLoader\nexcept ImportError:\n    pass  # Python 2\nelse:\n    del ExtensionFileLoader.get_source\n'
> sage: sage_getdef(sage.rings.integer.Integer.factor, obj_name='factor') ## line 2563 ##
> "factor(algorithm='pari', proof=None, limit=None, int_=False, verbose=0)"
> sage: sage_getsource(sage.rings.integer.Integer.__init__) ## line 2568 ##
> '    def __init__(self, x=None, base=0):\n        """\n        EXAMPLES::\n\n            sage: a = long(-901824309821093821093812093810928309183091832091)\n            sage: b = ZZ(a); b\n            -901824309821093821093812093810928309183091832091\n            sage: ZZ(b)\n            -901824309821093821093812093810928309183091832091\n            sage: ZZ(\'-901824309821093821093812093810928309183091832091\')\n            -901824309821093821093812093810928309183091832091\n            sage: ZZ(int(-93820984323))\n            -93820984323\n            sage: ZZ(ZZ(-901824309821093821093812093810928309183091832091))\n            -901824309821093821093812093810928309183091832091\n            sage: ZZ(QQ(-901824309821093821093812093810928309183091832091))\n            -901824309821093821093812093810928309183091832091\n            sage: ZZ(RR(2.0)^80)\n            1208925819614629174706176\n            sage: ZZ(QQbar(sqrt(28-10*sqrt(3)) + sqrt(3)))\n            5\n            sage: ZZ(AA(32).nth_root(5))\n            2\n            sage: ZZ(pari(\'Mod(-3,7)\'))\n            4\n            sage: ZZ(\'sage\')\n            Traceback (most recent call last):\n            ...\n            TypeError: unable to convert \'sage\' to an integer\n            sage: Integer(\'zz\',36).str(36)\n            \'zz\'\n            sage: ZZ(\'0x3b\').str(16)\n            \'3b\'\n            sage: ZZ( ZZ(5).digits(3) , 3)\n            5\n            sage: import numpy\n            sage: ZZ(numpy.int64(7^7))\n            823543\n            sage: ZZ(numpy.ubyte(-7))\n            249\n            sage: ZZ(True)\n            1\n            sage: ZZ(False)\n            0\n            sage: ZZ(1==0)\n            0\n            sage: ZZ(\'+10\')\n            10\n            sage: from gmpy2 import mpz\n            sage: ZZ(mpz(42))\n            42\n\n        ::\n\n            sage: k = GF(2)\n            sage: ZZ( (k(0),k(1)), 2)\n            2\n\n        ::\n\n            sage: ZZ(float(2.0))\n            2\n            sage: ZZ(float(1.0/0.0))\n            Traceback (most recent call last):\n            ...\n            OverflowError: cannot convert float infinity to integer\n            sage: ZZ(float(0.0/0.0))\n            Traceback (most recent call last):\n            ...\n            ValueError: cannot convert float NaN to integer\n\n        ::\n\n            sage: class MyInt(int):\n            ....:     pass\n            sage: class MyLong(long):\n            ....:     pass\n            sage: class MyFloat(float):\n            ....:     pass\n            sage: ZZ(MyInt(3))\n            3\n            sage: ZZ(MyLong(4))\n            4\n            sage: ZZ(MyFloat(5))\n            5\n\n        ::\n\n            sage: Integer(u\'0\')\n            0\n            sage: Integer(u\'0X2AEEF\')\n            175855\n\n        Test conversion from PARI (:trac:`11685`)::\n\n            sage: ZZ(pari(-3))\n            -3\n            sage: ZZ(pari("-3.0"))\n            -3\n            sage: ZZ(pari("-3.5"))\n            Traceback (most recent call last):\n            ...\n            TypeError: Attempt to coerce non-integral real number to an Integer\n            sage: ZZ(pari("1e100"))\n            Traceback (most recent call last):\n            ...\n            PariError: precision too low in truncr (precision loss in truncation)\n            sage: ZZ(pari("10^50"))\n            100000000000000000000000000000000000000000000000000\n            sage: ZZ(pari("Pol(3)"))\n            3\n            sage: ZZ(GF(3^20,\'t\')(1))\n            1\n            sage: ZZ(pari(GF(3^20,\'t\')(1)))\n            1\n            sage: x = polygen(QQ)\n            sage: K.<a> = NumberField(x^2+3)\n            sage: ZZ(a^2)\n            -3\n            sage: ZZ(pari(a)^2)\n            -3\n            sage: ZZ(pari("Mod(x, x^3+x+1)"))   # Note error message refers to lifted element\n            Traceback (most recent call last):\n            ...\n            TypeError: Unable to coerce PARI x to an Integer\n\n        Test coercion of p-adic with negative valuation::\n\n            sage: ZZ(pari(Qp(11)(11^-7)))\n            Traceback (most recent call last):\n            ...\n            TypeError: Cannot convert p-adic with negative valuation to an integer\n\n        Test converting a list with a very large base::\n\n            sage: a=ZZ(randint(0,2^128-1))\n            sage: L = a.digits(2^64)\n            sage: a == sum([x * 2^(64*i) for i,x in enumerate(L)])\n            True\n            sage: a == ZZ(L,base=2^64)\n            True\n\n        Test comparisons with numpy types (see :trac:`13386` and :trac:`18076`)::\n\n            sage: import numpy\n            sage: numpy.int8(\'12\') == 12\n            True\n            sage: 12 == numpy.int8(\'12\')\n            True\n\n            sage: numpy.float(\'15\') == 15\n            True\n            sage: 15 == numpy.float(\'15\')\n            True\n        """\n        # TODO: All the code below should somehow be in an external\n        # cdef\'d function.  Then e.g., if a matrix or vector or\n        # polynomial is getting filled by mpz_t\'s, it can use the\n        # rules below to do the fill construction of mpz_t\'s, but\n        # without the overhead of creating any Python objects at all.\n        # The cdef\'s function should be of the form\n        #     mpz_init_set_sage(mpz_t y, object x)\n        # Then this function becomes the one liner:\n        #     mpz_init_set_sage(self.value, x)\n\n        cdef Integer tmp\n        cdef char* xs\n        cdef int paritype\n        cdef Py_ssize_t j\n        cdef object otmp\n\n        cdef Element lift\n\n        if x is None:\n            if mpz_sgn(self.value) != 0:\n                mpz_set_si(self.value, 0)\n\n        else:\n            # First do all the type-check versions (these are fast to test),\n            # except those for which the conversion itself will be slow.\n\n            if isinstance(x, Integer):\n                set_from_Integer(self, <Integer>x)\n\n            elif isinstance(x, long):\n                mpz_set_pylong(self.value, x)\n\n            elif isinstance(x, int):\n                mpz_set_si(self.value, PyInt_AS_LONG(x))\n\n            elif isinstance(x, float):\n                n = long(x)\n                if n == x:\n                    mpz_set_pylong(self.value, n)\n                else:\n                    raise TypeError("Cannot convert non-integral float to integer")\n\n            elif isinstance(x, pari_gen):\n                set_from_pari_gen(self, x)\n\n            else:\n\n                otmp = getattr(x, "_integer_", None)\n                if otmp is not None:\n                    set_from_Integer(self, otmp(the_integer_ring))\n                    return\n\n                if isinstance(x, Element):\n                    try:\n                        lift = x.lift()\n                        if lift._parent is the_integer_ring:\n                            set_from_Integer(self, lift)\n                            return\n                    except AttributeError:\n                        pass\n\n                elif isinstance(x, bytes):\n                    mpz_set_str_python(self.value, x, base)\n                    return\n                elif isinstance(x, unicode):\n                    mpz_set_str_python(self.value, str_to_bytes(x), base)\n                    return\n\n                elif (isinstance(x, list) or isinstance(x, tuple)) and base > 1:\n                    b = the_integer_ring(base)\n                    if b == 2: # we use a faster method\n                        for j from 0 <= j < len(x):\n                            otmp = x[j]\n                            if not isinstance(otmp, Integer):\n                                # should probably also have fast code for Python ints...\n                                otmp = Integer(otmp)\n                            if mpz_cmp_si((<Integer>otmp).value, 1) == 0:\n                                mpz_setbit(self.value, j)\n                            elif mpz_sgn((<Integer>otmp).value) != 0:\n                                # one of the entries was something other than 0 or 1.\n                                break\n                        else:\n                            return\n                    tmp = the_integer_ring(0)\n                    for i in range(len(x)):\n                        tmp += the_integer_ring(x[i])*b**i\n                    mpz_set(self.value, tmp.value)\n                    return\n\n                elif is_numpy_type(type(x)):\n                    import numpy\n                    if isinstance(x, numpy.integer):\n                        mpz_set_pylong(self.value, long(x))\n                        return\n\n                elif type(x) is gmpy2.mpz:\n                    mpz_set(self.value, (<gmpy2.mpz>x).z)\n                    return\n\n                raise TypeError("unable to coerce %s to an integer" % type(x))\n'
> sage: sage_getdef(sage.rings.integer.Integer.__init__, obj_name='__init__') ## line 2570 ##
> '__init__(x=None, base=0)'
> sage: s = __internal_teststring.strip() ## line 2576 ##
> sage: es = lambda ls, l: ''.join(_extract_source(ls, l)).rstrip() ## line 2577 ##
> sage: print(es(s, 3)) ## line 2579 ##
> def test1(a, b=2):                         # 3
>     if a:                                  # 4
>         return 1                           # 5
>     return b                               # 6
> sage: print(es(s, 8)) ## line 2585 ##
> class test2():                             # 8
>     pass                                   # 9
> sage: print(es(s, 12)) ## line 2589 ##
> def test3(b,                               # 12
>           a=2):                            # 13
>     pass # EOF                             # 14
> sage: _sage_getargspec_cython("def init(self, x=None, base=0):") ## line 2596 ##
> ArgSpec(args=['self', 'x', 'base'], varargs=None, keywords=None, defaults=(None, 0))
> sage: _sage_getargspec_cython("def __init__(self, x=None, base=0):") ## line 2598 ##
> ArgSpec(args=['self', 'x', 'base'], varargs=None, keywords=None, defaults=(None, 0))
> sage: _sage_getargspec_cython("def __init__(self, x=None, unsigned int base=0, **keys):") ## line 2600 ##
> ArgSpec(args=['self', 'x', 'base'], varargs=None, keywords='keys', defaults=(None, 0))
> sage: _extract_embedded_position('File: sage/rings/rational.pyx (starting at line 1080)') ## line 2609 ##
> ('', '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/rational.pyx', 1080)
> sage: s = 'File: sage/rings/rational.pyx (starting at line 1080)\n' ## line 2614 ##
> sage: _extract_embedded_position(s) ## line 2615 ##
> ('', '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/rational.pyx', 1080)
> sage: s = 'File: sage/rings/rational.pyx (starting at line 1080)\noriginal' ## line 2620 ##
> sage: _extract_embedded_position(s) ## line 2621 ##
> ('original', '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/rational.pyx', 1080)
> sage: s = 'File: sage/rings/rational.pyx (starting at line 1080)\n\n\noriginal test\noriginal' ## line 2626 ##
> sage: _extract_embedded_position(s) ## line 2627 ##
> ('\n\noriginal test\noriginal', '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/rational.pyx', 1080)
> sage: s = 'no embedded position' ## line 2630 ##
> sage: _extract_embedded_position(s) is None ## line 2631 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 2633 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/modular/abvar/homology.py
>     [95 tests, 1.14 s]
> sage -t --long src/sage/modular/abvar/finite_subgroup.py
>     [151 tests, 2.78 s]
> sage -t --long src/sage/modular/abvar/abvar.py
>     [640 tests, 21.15 s]
> sage -t --long src/sage/modular/abvar/morphism.py
>     [167 tests, 2.21 s]
> sage -t --long src/sage/modular/abvar/torsion_point.py
>     [46 tests, 1.28 s]
> sage -t --long src/sage/modular/abvar/homspace.py
>     [122 tests, 9.26 s]
> sage -t --long src/sage/modular/all.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/modular/arithgroup/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/arithgroup/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/arithgroup/arithgroup_element.pyx
>     [68 tests, 0.07 s]
> sage -t --long src/sage/modular/arithgroup/arithgroup_generic.py
>     [160 tests, 1.32 s]
> sage -t --long src/sage/modular/abvar/torsion_subgroup.py
>     [86 tests, 5.10 s]
> sage -t --long src/sage/modular/arithgroup/congroup.pyx
>     [9 tests, 0.02 s]
> sage -t --long src/sage/modular/arithgroup/congroup_gamma.py
>     [44 tests, 0.47 s]
> sage -t --long src/sage/modular/arithgroup/congroup_gamma0.py
>     [95 tests, 0.81 s]
> sage -t --long src/sage/modular/arithgroup/congroup_gamma1.py
>     [94 tests, 3.43 s]
> sage -t --long src/sage/modular/abvar/lseries.py
>     [64 tests, 17.56 s]
> sage -t --long src/sage/modular/arithgroup/congroup_generic.py
>     [75 tests, 0.87 s]
> sage -t --long src/sage/modular/arithgroup/congroup_sl2z.py
>     [29 tests, 0.04 s]
> sage -t --long src/sage/modular/arithgroup/arithgroup_perm.py
>     [362 tests, 10.22 s]
> sage -t --long src/sage/modular/arithgroup/congroup_gammaH.py
>     [158 tests, 3.88 s]
> sage -t --long src/sage/modular/btquotients/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/btquotients/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/arithgroup/farey_symbol.pyx
>     [96 tests, 2.40 s]
> sage -t --long src/sage/misc/sagedoc.py
> **********************************************************************
> File "src/sage/misc/sagedoc.py", line 1384, in sage.misc.sagedoc._sage_doc.__call__
> Failed example:
>     browse_sage_doc(identity_matrix, 'html', False)
> Expected:
>     '...div...File:...Type:...Definition:...identity_matrix...'
> Got:
>     doctest:warning
>       File "/<<PKGBUILDDIR>>/sage/src/bin/sage-runtests", line 179, in <module>
>         err = DC.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 1239, in run
>         self.run_doctests()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/control.py", line 940, in run_doctests
>         self.dispatcher.dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2024, in dispatch
>         self.parallel_dispatch()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1916, in parallel_dispatch
>         w.start()  # This might take some time
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2191, in start
>         super(DocTestWorker, self).start()
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 121, in start
>         self._popen = self._Popen(self)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 224, in _Popen
>         return _default_context.get_context().Process._Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/context.py", line 276, in _Popen
>         return Popen(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 19, in __init__
>         self._launch(process_obj)
>       File "/usr/lib/python3.8/multiprocessing/popen_fork.py", line 75, in _launch
>         code = process_obj._bootstrap(parent_sentinel=child_r)
>       File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
>         self.run()
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2163, in run
>         task(self.options, self.outtmpfile, msgpipe, self.result_queue)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2495, in __call__
>         doctests, extras = self._run(runner, options, results)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 2544, in _run
>         result = runner.run(test)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 888, in run
>         return self._run(test, compileflags, out)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.misc.sagedoc._sage_doc.__call__[2]>", line 1, in <module>
>         browse_sage_doc(identity_matrix, 'html', False)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sagedoc.py", line 1424, in __call__
>         html = sphinxify(s)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/sphinxify.py", line 123, in sphinxify
>         sphinx_app.build(None, [rst_name])
>       File "/usr/lib/python3/dist-packages/sphinx/application.py", line 340, in build
>         self.builder.build_specific(filenames)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 287, in build_specific
>         self.build(to_write, method='specific',
>       File "/usr/lib/python3/dist-packages/sphinx/builders/__init__.py", line 364, in build
>         self.finish()
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 630, in finish
>         self.finish_tasks.add_task(self.gen_additional_pages)
>       File "/usr/lib/python3/dist-packages/sphinx/util/parallel.py", line 49, in add_task
>         res = task_func()
>       File "/usr/lib/python3/dist-packages/sphinx/util/__init__.py", line 686, in wrapper
>         return f(*args, **kwargs)
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 665, in gen_additional_pages
>         self.handle_page('search', {}, 'search.html')
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 1023, in handle_page
>         output = self.templates.render(templatename, ctx)
>       File "/usr/lib/python3/dist-packages/sphinx/jinja2glue.py", line 192, in render
>         return self.environment.get_template(template).render(context)
>       File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1088, in render
>         return concat(self.root_render_func(self.new_context(vars)))
>       File "/<<PKGBUILDDIR>>/sage/src/doc/common/themes/sage/search.html", line 23, in root
>         <p>
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 131, in __add__
>         ret += other
>       File "/usr/lib/python3/dist-packages/sphinx/builders/html.py", line 122, in __iadd__
>         warnings.warn('To modify script_files in the theme is deprecated. '
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>     :
>     sphinx.deprecation.RemovedInSphinx30Warning: To modify script_files in the theme is deprecated. Please insert a <script> tag directly in your theme instead.
>     '<div class="docstring">\n    \n  <p><strong>File:</strong> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/matrix/special.py</p>\n<p><strong>Type:</strong> <class ‘function’></p>\n<p><strong>Definition:</strong> identity_matrix(ring, n=0, sparse=False)</p>\n<p><strong>Docstring:</strong></p>\n<blockquote>\n<div><p>This function is available as identity_matrix(…) and matrix.identity(…).</p>\n<p>Return the <span class="math notranslate nohighlight">n \\times n</span> identity matrix over the given\nring.</p>\n<p>The default ring is the integers.</p>\n<p>EXAMPLES:</p>\n<div class="highlight-ipycon notranslate"><div class="highlight"><pre class="literal-block"><span></span><span class="gp">sage: </span><span class="n">M</span> <span class="o">=</span> <span class="n">identity_matrix</span><span class="p">(</span><span class="n">QQ</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span> <span class="n">M</span>\n<span class="go">[1 0]</span>\n<span class="go">[0 1]</span>\n<span class="gp">sage: </span><span class="n">M</span><span class="o">.</span><span class="n">parent</span><span class="p">()</span>\n<span class="go">Full MatrixSpace of 2 by 2 dense matrices over Rational Field</span>\n<span class="gp">sage: </span><span class="n">M</span> <span class="o">=</span> <span class="n">identity_matrix</span><span class="p">(</span><span class="mi">2</span><span class="p">);</span> <span class="n">M</span>\n<span class="go">[1 0]</span>\n<span class="go">[0 1]</span>\n<span class="gp">sage: </span><span class="n">M</span><span class="o">.</span><span class="n">parent</span><span class="p">()</span>\n<span class="go">Full MatrixSpace of 2 by 2 dense matrices over Integer Ring</span>\n<span class="gp">sage: </span><span class="n">M</span><span class="o">.</span><span class="n">is_mutable</span><span class="p">()</span>\n<span class="go">True</span>\n<span class="gp">sage: </span><span class="n">M</span> <span class="o">=</span> <span class="n">identity_matrix</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="n">sparse</span><span class="o">=</span><span class="bp">True</span><span class="p">);</span> <span class="n">M</span>\n<span class="go">[1 0 0]</span>\n<span class="go">[0 1 0]</span>\n<span class="go">[0 0 1]</span>\n<span class="gp">sage: </span><span class="n">M</span><span class="o">.</span><span class="n">parent</span><span class="p">()</span>\n<span class="go">Full MatrixSpace of 3 by 3 sparse matrices over Integer Ring</span>\n<span class="gp">sage: </span><span class="n">M</span><span class="o">.</span><span class="n">is_mutable</span><span class="p">()</span>\n<span class="go">True</span>\n</pre></div>\n</div>\n</div></blockquote>\n\n\n</div>'
> **********************************************************************
> 1 item had failures:
>    1 of   6 in sage.misc.sagedoc._sage_doc.__call__
>     [102 tests, 1 failure, 62.68 s]
> sage -t --long src/sage/modular/buzzard.py
>     [9 tests, 0.40 s]
> sage -t --long src/sage/modular/congroup.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/congroup_element.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/cusps.py
>     [145 tests, 0.32 s]
> sage -t --long src/sage/modular/arithgroup/tests.py
>     [32 tests, 5.85 s]
> sage -t --long src/sage/modular/dims.py
>     [90 tests, 0.41 s]
> sage -t --long src/sage/modular/cusps_nf.py
>     [226 tests, 3.13 s]
> sage -t --long src/sage/modular/btquotients/btquotient.py
>     [396 tests, 6.58 s]
> sage -t --long src/sage/modular/hecke/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/dirichlet.py
>     [492 tests, 1.91 s]
> sage -t --long src/sage/modular/hecke/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/hecke/algebra.py
>     [85 tests, 1.34 s]
> sage -t --long src/sage/modular/etaproducts.py
>     [93 tests, 1.74 s]
> sage -t --long src/sage/modular/hecke/degenmap.py
>     [15 tests, 0.33 s]
> sage -t --long src/sage/modular/hecke/hecke_operator.py
>     [125 tests, 1.39 s]
> sage -t --long src/sage/modular/hecke/element.py
>     [52 tests, 1.76 s]
> sage -t --long src/sage/modular/hecke/homspace.py
>     [24 tests, 0.43 s]
> sage -t --long src/sage/modular/hecke/morphism.py
>     [19 tests, 0.24 s]
> sage -t --long src/sage/modular/hecke/ambient_module.py
>     [96 tests, 3.82 s]
> sage -t --long src/sage/modular/hecke/module.py
>     [193 tests, 4.75 s]
> sage -t --long src/sage/modular/local_comp/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/local_comp/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/local_comp/liftings.py
>     [48 tests, 1.34 s]
> sage -t --long src/sage/modular/hecke/submodule.py
>     [141 tests, 7.10 s]
> sage -t --long src/sage/modular/hypergeometric_motive.py
>     [218 tests, 9.44 s]
> sage -t --long src/sage/modular/local_comp/smoothchar.py
>     [303 tests, 4.14 s]
> sage -t --long src/sage/modular/modform/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform/ambient.py
>     [118 tests, 3.03 s]
> sage -t --long src/sage/modular/local_comp/local_comp.py
>     [85 tests, 12.52 s]
> sage -t --long src/sage/modular/modform/ambient_eps.py
>     [45 tests, 0.44 s]
> sage -t --long src/sage/modular/modform/ambient_g0.py
>     [10 tests, 0.06 s]
> sage -t --long src/sage/modular/modform/ambient_g1.py
>     [25 tests, 1.15 s]
> sage -t --long src/sage/modular/btquotients/pautomorphicform.py
>     [381 tests, 38.63 s]
> sage -t --long src/sage/modular/modform/ambient_R.py
>     [26 tests, 15.14 s]
> sage -t --long src/sage/modular/modform/defaults.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform/constructor.py
>     [63 tests, 10.20 s]
> sage -t --long src/sage/modular/modform/eis_series_cython.pyx
>     [6 tests, 0.03 s]
> sage -t --long src/sage/modular/modform/eisenstein_submodule.py
>     [86 tests, 2.71 s]
> sage -t --long src/sage/modular/modform/eis_series.py
>     [41 tests, 0.59 s]
> sage -t --long src/sage/modular/local_comp/type_space.py
>     [96 tests, 32.74 s]
> sage -t --long src/sage/modular/modform/half_integral.py
>     [7 tests, 0.78 s]
> sage -t --long src/sage/modular/modform/hecke_operator_on_qexp.py
>     [33 tests, 0.80 s]
> sage -t --long src/sage/modular/modform/j_invariant.py
>     [3 tests, 0.04 s]
> sage -t --long src/sage/modular/modform/cuspidal_submodule.py
>     [69 tests, 16.79 s]
> sage -t --long src/sage/modular/modform/l_series_gross_zagier_coeffs.pyx
>     [20 tests, 0.29 s]
> sage -t --long src/sage/modular/modform/notes.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform/numerical.py
>     [46 tests, 0.45 s]
> sage -t --long src/sage/modular/modform/periods.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform/space.py
>     [241 tests, 6.11 s]
> sage -t --long src/sage/modular/modform/l_series_gross_zagier.py
>     [25 tests, 2.72 s]
> sage -t --long src/sage/modular/modform/test.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform/submodule.py
>     [12 tests, 0.30 s]
> sage -t --long src/sage/modular/modform/theta.py
>     [15 tests, 0.04 s]
> sage -t --long src/sage/modular/modform/vm_basis.py
>     [27 tests, 0.56 s]
> sage -t --long src/sage/modular/modform/tests.py
>     [4 tests, 1.09 s]
> sage -t --long src/sage/modular/modform_hecketriangle/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform/weight1.py
>     [10 tests, 0.46 s]
> sage -t --long src/sage/modular/modform_hecketriangle/abstract_ring.py
>     [523 tests, 4.87 s]
> sage -t --long src/sage/modular/modform_hecketriangle/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform_hecketriangle/analytic_type.py
>     [119 tests, 0.34 s]
> sage -t --long src/sage/modular/modform_hecketriangle/constructor.py
>     [36 tests, 0.65 s]
> sage -t --long src/sage/modular/modform_hecketriangle/element.py
>     [83 tests, 5.11 s]
> sage -t --long src/sage/modular/modform_hecketriangle/functors.py
>     [126 tests, 0.79 s]
> sage -t --long src/sage/modular/modform_hecketriangle/graded_ring.py
>     [76 tests, 0.48 s]
> sage -t --long src/sage/modular/modform_hecketriangle/abstract_space.py
>     [566 tests, 15.15 s]
> sage -t --long src/sage/modular/modform/find_generators.py
>     [75 tests, 39.78 s]
> sage -t --long src/sage/modular/modform_hecketriangle/hecke_triangle_groups.py
>     [228 tests, 5.75 s]
> sage -t --long src/sage/modular/modform/element.py
>     [438 tests, 48.00 s]
> sage -t --long src/sage/modular/modform_hecketriangle/series_constructor.py
>     [85 tests, 0.45 s]
> sage -t --long src/sage/modular/modform_hecketriangle/graded_ring_element.py
>     [672 tests, 30.10 s]
> sage -t --long src/sage/modular/modform_hecketriangle/space.py
>     [229 tests, 10.42 s]
> sage -t --long src/sage/modular/modsym/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modsym/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modform_hecketriangle/readme.py
>     [382 tests, 20.27 s]
> sage -t --long src/sage/modular/modsym/apply.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modsym/apply.pyx
>     [6 tests, 0.01 s]
> sage -t --long src/sage/modular/modform_hecketriangle/hecke_triangle_group_element.py
>     [738 tests, 33.06 s]
> sage -t --long src/sage/modular/modsym/element.py
>     [48 tests, 0.42 s]
> sage -t --long src/sage/modular/modform_hecketriangle/subspace.py
>     [104 tests, 6.21 s]
> sage -t --long src/sage/modular/modsym/g1list.py
>     [21 tests, 0.02 s]
> sage -t --long src/sage/modular/modsym/ghlist.py
>     [23 tests, 0.03 s]
> sage -t --long src/sage/modular/modsym/hecke_operator.py
>     [6 tests, 0.26 s]
> sage -t --long src/sage/modular/modsym/manin_symbol.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modsym/manin_symbol.pyx
>     [111 tests, 0.05 s]
> sage -t --long src/sage/modular/modsym/heilbronn.pyx
>     [63 tests, 0.61 s]
> sage -t --long src/sage/modular/modsym/manin_symbol_list.py
>     [188 tests, 0.52 s]
> sage -t --long src/sage/modular/modsym/modular_symbols.py
>     [65 tests, 0.31 s]
> sage -t --long src/sage/modular/modsym/boundary.py
>     [200 tests, 2.33 s]
> sage -t --long src/sage/modular/modsym/p1list.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modsym/p1list.pyx
>     [121 tests, 0.14 s]
> sage -t --long src/sage/modular/modsym/relation_matrix.py
>     [29 tests, 0.27 s]
> sage -t --long src/sage/modular/modsym/relation_matrix_pyx.pyx
>     [4 tests, 0.01 s]
> sage -t --long src/sage/modular/modsym/modsym.py
>     [80 tests, 1.66 s]
> sage -t --long src/sage/modular/modsym/p1list_nf.py
>     [237 tests, 2.24 s]
> sage -t --long src/sage/modular/modsym/subspace.py
>     [57 tests, 2.21 s]
> sage -t --long src/sage/modular/overconvergent/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/overconvergent/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/modsym/tests.py
>     [39 tests, 3.87 s]
> sage -t --long src/sage/modular/overconvergent/genus0.py
>     [202 tests, 6.07 s]
> sage -t --long src/sage/modular/overconvergent/weightspace.py
>     [108 tests, 0.34 s]
> sage -t --long src/sage/modular/pollack_stevens/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/pollack_stevens/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/pollack_stevens/dist.pyx
>     [168 tests, 0.39 s]
> sage -t --long src/sage/modular/pollack_stevens/dist.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/pollack_stevens/distributions.py
>     [164 tests, 0.43 s]
> sage -t --long src/sage/modular/overconvergent/hecke_series.py
>     [71 tests, 4.99 s]
> sage -t --long src/sage/modular/modsym/ambient.py
>     [431 tests, 18.91 s]
> sage -t --long src/sage/modular/pollack_stevens/manin_map.py
>     [180 tests, 1.88 s]
> sage -t --long src/sage/modular/pollack_stevens/fund_domain.py
>     [174 tests, 3.11 s]
> sage -t --long src/sage/modular/pollack_stevens/sigma0.py
>     [101 tests, 0.08 s]
> sage -t --long src/sage/modular/modsym/space.py
>     [313 tests, 15.54 s]
> sage -t --long src/sage/modular/quatalg/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/quatalg/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/quatalg/brandt.py
>     [165 tests, 4.06 s]
> sage -t --long src/sage/modular/ssmod/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/ssmod/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/pollack_stevens/space.py
>     [182 tests, 6.14 s]
> sage -t --long src/sage/modules/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/complex_double_vector.py
>     [3 tests, 0.02 s]
> sage -t --long src/sage/modules/diamond_cutting.py
>     [19 tests, 0.25 s]
> sage -t --long src/sage/modules/fg_pid/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/fg_pid/fgp_element.py
>     [119 tests, 0.39 s]
> sage -t --long src/sage/modular/ssmod/ssmod.py
>     [79 tests, 3.51 s]
> sage -t --long src/sage/modules/fg_pid/fgp_morphism.py
>     [117 tests, 0.63 s]
> sage -t --long src/sage/modules/fg_pid/fgp_module.py
>     [396 tests, 3.44 s]
> sage -t --long src/sage/modules/filtered_vector_space.py
>     [175 tests, 0.73 s]
> sage -t --long src/sage/modules/finite_submodule_iter.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/free_module.py
>     [1309 tests, 5.31 s]
> sage -t --long src/sage/modules/free_module_element.pyx
>     [1029 tests, 7.74 s]
> sage -t --long src/sage/modules/free_module_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/free_module_homspace.py
>     [52 tests, 0.08 s]
> sage -t --long src/sage/modules/finite_submodule_iter.pyx
>     [99 tests, 28.83 s]
> sage -t --long src/sage/modules/free_module_morphism.py
>     [154 tests, 0.61 s]
> sage -t --long src/sage/modules/free_quadratic_module.py
>     [306 tests, 0.47 s]
> sage -t --long src/sage/modules/free_quadratic_module_integer_symmetric.py
>     [195 tests, 1.71 s]
> sage -t --long src/sage/modules/matrix_morphism.py
>     [335 tests, 0.57 s]
> sage -t --long src/sage/modules/misc.py
>     [15 tests, 0.05 s]
> sage -t --long src/sage/modules/module.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/module.pyx
>     [50 tests, 0.29 s]
> sage -t --long src/sage/modules/module_functors.py
>     [57 tests, 0.26 s]
> sage -t --long src/sage/modules/multi_filtered_vector_space.py
>     [119 tests, 0.41 s]
> sage -t --long src/sage/modules/quotient_module.py
>     [72 tests, 0.34 s]
> sage -t --long src/sage/modules/real_double_vector.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/modules/tensor_operations.py
>     [91 tests, 0.24 s]
> sage -t --long src/sage/modular/pollack_stevens/padic_lseries.py
>     [84 tests, 59.46 s]
> sage -t --long src/sage/modules/tutorial_free_modules.py
>     [43 tests, 0.04 s]
> sage -t --long src/sage/modules/vector_callable_symbolic_dense.py
>     [20 tests, 0.05 s]
> sage -t --long src/sage/modules/vector_complex_double_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_complex_double_dense.pyx
>     [21 tests, 0.03 s]
> sage -t --long src/sage/modules/vector_double_dense.pyx
>     [146 tests, 0.63 s]
> sage -t --long src/sage/modules/vector_double_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_integer_dense.pyx
>     [45 tests, 0.12 s]
> sage -t --long src/sage/modules/vector_integer_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_integer_sparse.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_integer_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_mod2_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_mod2_dense.pyx
>     [119 tests, 1.77 s]
> sage -t --long src/sage/modules/vector_modn_dense.pyx
>     [69 tests, 0.24 s]
> sage -t --long src/sage/modules/vector_modn_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_modn_sparse.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_modn_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_rational_dense.pyx
>     [45 tests, 0.07 s]
> sage -t --long src/sage/modules/vector_rational_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_rational_sparse.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_rational_sparse.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_real_double_dense.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/vector_real_double_dense.pyx
>     [19 tests, 0.43 s]
> sage -t --long src/sage/modules/vector_space_homspace.py
>     [78 tests, 0.28 s]
> sage -t --long src/sage/modules/vector_space_morphism.py
>     [212 tests, 1.94 s]
> sage -t --long src/sage/modules/vector_symbolic_dense.py
>     [28 tests, 1.52 s]
> sage -t --long src/sage/modules/with_basis/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/with_basis/cell_module.py
>     [74 tests, 0.53 s]
> sage -t --long src/sage/modules/with_basis/indexed_element.pyx
>     [205 tests, 0.49 s]
> sage -t --long src/sage/modules/with_basis/indexed_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/free_module_integer.py
>     [97 tests, 42.72 s]
> sage -t --long src/sage/modules/with_basis/morphism.py
>     [352 tests, 0.39 s]
> sage -t --long src/sage/modules/with_basis/subquotient.py
>     [67 tests, 0.26 s]
> sage -t --long src/sage/monoids/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/monoids/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modules/with_basis/representation.py
>     [129 tests, 1.03 s]
> sage -t --long src/sage/monoids/free_abelian_monoid.py
>     [44 tests, 0.04 s]
> sage -t --long src/sage/monoids/free_abelian_monoid_element.py
>     [43 tests, 0.02 s]
> sage -t --long src/sage/monoids/automatic_semigroup.py
>     [268 tests, 1.05 s]
> sage -t --long src/sage/monoids/free_monoid_element.py
>     [56 tests, 0.05 s]
> sage -t --long src/sage/modules/torsion_quadratic_module.py
>     [172 tests, 24.73 s]
> sage -t --long src/sage/monoids/free_monoid.py
>     [49 tests, 0.84 s]
> sage -t --long src/sage/monoids/hecke_monoid.py
>     [9 tests, 0.24 s]
> sage -t --long src/sage/monoids/string_monoid.py
>     [111 tests, 0.06 s]
> sage -t --long src/sage/monoids/string_monoid_element.py
>     [76 tests, 0.04 s]
> sage -t --long src/sage/monoids/string_ops.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/numerical/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/coin_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/monoids/monoid.py
>     [14 tests, 0.49 s]
> sage -t --long src/sage/numerical/backends/cplex_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/monoids/indexed_free_monoid.py
>     [220 tests, 0.58 s]
> sage -t --long src/sage/numerical/backends/coin_backend.pyx
>     [39 tests, 0.02 s]
> sage -t --long src/sage/numerical/backends/cplex_backend.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/generic_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/cvxopt_backend.pyx
>     [219 tests, 0.14 s]
> sage -t --long src/sage/numerical/backends/generic_sdp_backend.pyx
>     [29 tests, 0.02 s]
> sage -t --long src/sage/numerical/backends/generic_sdp_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/glpk_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/cvxopt_sdp_backend.pyx
>     [201 tests, 0.38 s]
> sage -t --long src/sage/numerical/backends/glpk_exact_backend.pyx
>     [26 tests, 0.03 s]
> sage -t --long src/sage/numerical/backends/glpk_exact_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/glpk_graph_backend.pyx
>     [193 tests, 0.09 s]
> sage -t --long src/sage/numerical/backends/glpk_graph_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/generic_backend.pyx
>     [91 tests, 0.62 s]
> sage -t --long src/sage/numerical/backends/gurobi_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/gurobi_backend.pyx
>     [10 tests, 0.26 s]
> sage -t --long src/sage/numerical/backends/interactivelp_backend.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/logging_backend.py
>     [45 tests, 0.02 s]
> sage -t --long src/sage/numerical/backends/ppl_backend.pyx
>     [225 tests, 0.87 s]
> sage -t --long src/sage/numerical/gauss_legendre.pyx
>     [32 tests, 0.21 s]
> sage -t --long src/sage/numerical/backends/glpk_backend.pyx
>     [554 tests, 4.17 s]
> sage -t --long src/sage/numerical/knapsack.py
>     [82 tests, 0.06 s]
> sage -t --long src/sage/numerical/linear_functions.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/linear_functions.pyx
>     [303 tests, 0.42 s]
> sage -t --long src/sage/numerical/linear_tensor.py
>     [78 tests, 0.27 s]
> sage -t --long src/sage/numerical/interactive_simplex_method.py
>     [1048 tests, 3.24 s]
> sage -t --long src/sage/numerical/linear_tensor_constraints.py
>     [66 tests, 0.27 s]
> sage -t --long src/sage/numerical/linear_tensor_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/backends/interactivelp_backend.pyx
>     [268 tests, 5.24 s]
> sage -t --long src/sage/numerical/linear_tensor_element.pyx
>     [80 tests, 0.26 s]
> sage -t --long src/sage/numerical/mip.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/sdp.pyx
>     [283 tests, 0.51 s]
> sage -t --long src/sage/numerical/sdp.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/parallel/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/parallel/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/numerical/optimize.py
>     [97 tests, 1.24 s]
> sage -t --long src/sage/numerical/mip.pyx
>     [626 tests, 2.58 s]
> sage -t --long src/sage/parallel/multiprocessing_sage.py
>     [9 tests, 0.21 s]
> sage -t --long src/sage/parallel/ncpus.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/parallel/parallelism.py
>     [53 tests, 0.02 s]
> sage -t --long src/sage/parallel/reference.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/parallel/use_fork.py
>     [28 tests, 0.16 s]
> sage -t --long src/sage/plot/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/modular/pollack_stevens/modsym.py
>     [265 tests, 88.93 s]
> sage -t --long src/sage/plot/arc.py
>     [47 tests, 4.27 s]
> sage -t --long src/sage/parallel/map_reduce.py
>     [294 tests, 13.43 s]
> sage -t --long src/sage/plot/bar_chart.py
>     [22 tests, 2.33 s]
> sage -t --long src/sage/plot/arrow.py
>     [61 tests, 5.84 s]
> sage -t --long src/sage/plot/bezier_path.py
>     [37 tests, 3.52 s]
> sage -t --long src/sage/plot/colors.py
> **********************************************************************
> File "src/sage/plot/colors.py", line 22, in sage.plot.colors
> Failed example:
>     sorted(colormaps)
> Expected:
>     [u'Accent', u'Accent_r', u'Blues', u'Blues_r', u'BrBG', u'BrBG_r', ...]
> Got:
>     ['Accent',
>      'Blues',
>      'BrBG',
>      'BuGn',
>      'BuPu',
>      'CMRmap',
>      'Dark2',
>      'GnBu',
>      'Greens',
>      'Greys',
>      'OrRd',
>      'Oranges',
>      'PRGn',
>      'Paired',
>      'Pastel1',
>      'Pastel2',
>      'PiYG',
>      'PuBu',
>      'PuBuGn',
>      'PuOr',
>      'PuRd',
>      'Purples',
>      'RdBu',
>      'RdGy',
>      'RdPu',
>      'RdYlBu',
>      'RdYlGn',
>      'Reds',
>      'Set1',
>      'Set2',
>      'Set3',
>      'Spectral',
>      'Wistia',
>      'YlGn',
>      'YlGnBu',
>      'YlOrBr',
>      'YlOrRd',
>      'afmhot',
>      'autumn',
>      'binary',
>      'bone',
>      'brg',
>      'bwr',
>      'cool',
>      'coolwarm',
>      'copper',
>      'cubehelix',
>      'flag',
>      'gist_earth',
>      'gist_gray',
>      'gist_heat',
>      'gist_ncar',
>      'gist_rainbow',
>      'gist_stern',
>      'gist_yarg',
>      'gnuplot',
>      'gnuplot2',
>      'gray',
>      'hot',
>      'hsv',
>      'jet',
>      'nipy_spectral',
>      'ocean',
>      'pink',
>      'prism',
>      'rainbow',
>      'seismic',
>      'spring',
>      'summer',
>      'tab10',
>      'tab20',
>      'tab20b',
>      'tab20c',
>      'terrain',
>      'winter']
> **********************************************************************
> File "src/sage/plot/colors.py", line 1376, in sage.plot.colors.get_cmap
> Failed example:
>     sorted(colormaps)
> Expected:
>     [u'Accent', u'Accent_r', u'Blues', u'Blues_r', ...]
> Got:
>     ['Accent',
>      'Blues',
>      'BrBG',
>      'BuGn',
>      'BuPu',
>      'CMRmap',
>      'Dark2',
>      'GnBu',
>      'Greens',
>      'Greys',
>      'OrRd',
>      'Oranges',
>      'PRGn',
>      'Paired',
>      'Pastel1',
>      'Pastel2',
>      'PiYG',
>      'PuBu',
>      'PuBuGn',
>      'PuOr',
>      'PuRd',
>      'Purples',
>      'RdBu',
>      'RdGy',
>      'RdPu',
>      'RdYlBu',
>      'RdYlGn',
>      'Reds',
>      'Set1',
>      'Set2',
>      'Set3',
>      'Spectral',
>      'Wistia',
>      'YlGn',
>      'YlGnBu',
>      'YlOrBr',
>      'YlOrRd',
>      'afmhot',
>      'autumn',
>      'binary',
>      'bone',
>      'brg',
>      'bwr',
>      'cool',
>      'coolwarm',
>      'copper',
>      'cubehelix',
>      'flag',
>      'gist_earth',
>      'gist_gray',
>      'gist_heat',
>      'gist_ncar',
>      'gist_rainbow',
>      'gist_stern',
>      'gist_yarg',
>      'gnuplot',
>      'gnuplot2',
>      'gray',
>      'hot',
>      'hsv',
>      'jet',
>      'nipy_spectral',
>      'ocean',
>      'pink',
>      'prism',
>      'rainbow',
>      'seismic',
>      'spring',
>      'summer',
>      'tab10',
>      'tab20',
>      'tab20b',
>      'tab20c',
>      'terrain',
>      'winter']
> **********************************************************************
> File "src/sage/plot/colors.py", line 1470, in sage.plot.colors.Colormaps
> Failed example:
>     sorted(colormaps)
> Expected:
>     [u'Accent', u'Accent_r', u'Blues', u'Blues_r', ...]
> Got:
>     ['Accent',
>      'Blues',
>      'BrBG',
>      'BuGn',
>      'BuPu',
>      'CMRmap',
>      'Dark2',
>      'GnBu',
>      'Greens',
>      'Greys',
>      'OrRd',
>      'Oranges',
>      'PRGn',
>      'Paired',
>      'Pastel1',
>      'Pastel2',
>      'PiYG',
>      'PuBu',
>      'PuBuGn',
>      'PuOr',
>      'PuRd',
>      'Purples',
>      'RdBu',
>      'RdGy',
>      'RdPu',
>      'RdYlBu',
>      'RdYlGn',
>      'Reds',
>      'Set1',
>      'Set2',
>      'Set3',
>      'Spectral',
>      'Wistia',
>      'YlGn',
>      'YlGnBu',
>      'YlOrBr',
>      'YlOrRd',
>      'afmhot',
>      'autumn',
>      'binary',
>      'bone',
>      'brg',
>      'bwr',
>      'cool',
>      'coolwarm',
>      'copper',
>      'cubehelix',
>      'flag',
>      'gist_earth',
>      'gist_gray',
>      'gist_heat',
>      'gist_ncar',
>      'gist_rainbow',
>      'gist_stern',
>      'gist_yarg',
>      'gnuplot',
>      'gnuplot2',
>      'gray',
>      'hot',
>      'hsv',
>      'jet',
>      'nipy_spectral',
>      'ocean',
>      'pink',
>      'prism',
>      'rainbow',
>      'seismic',
>      'spring',
>      'summer',
>      'tab10',
>      'tab20',
>      'tab20b',
>      'tab20c',
>      'terrain',
>      'winter']
> **********************************************************************
> File "src/sage/plot/colors.py", line 1498, in sage.plot.colors.Colormaps.load_maps
> Failed example:
>     len(maps.maps)>130
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> File "src/sage/plot/colors.py", line 1542, in sage.plot.colors.Colormaps.__len__
> Failed example:
>     len(maps)>130
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> 5 items had failures:
>    1 of   3 in sage.plot.colors
>    1 of   2 in sage.plot.colors.Colormaps
>    1 of   4 in sage.plot.colors.Colormaps.__len__
>    1 of   6 in sage.plot.colors.Colormaps.load_maps
>    1 of  10 in sage.plot.colors.get_cmap
>     [254 tests, 5 failures, 2.13 s]
> sage -t --long src/sage/parallel/decorate.py
>     [90 tests, 24.03 s]
> sage -t --long src/sage/plot/circle.py
>     [54 tests, 6.50 s]
> sage -t --long src/sage/plot/animate.py
>     [171 tests, 23.39 s]
> sage -t --long src/sage/plot/disk.py
>     [55 tests, 5.51 s]
> sage -t --long src/sage/plot/density_plot.py
>     [37 tests, 7.00 s]
> sage -t --long src/sage/plot/complex_plot.pyx
>     [33 tests, 11.16 s]
> sage -t --long src/sage/plot/ellipse.py
>     [35 tests, 3.26 s]
> sage -t --long src/sage/plot/hyperbolic_arc.py
>     [8 tests, 1.27 s]
> sage -t --long src/sage/plot/histogram.py
>     [41 tests, 3.75 s]
> sage -t --long src/sage/plot/hyperbolic_polygon.py
>     [10 tests, 1.48 s]
> sage -t --long src/sage/plot/hyperbolic_regular_polygon.py
>     [26 tests, 0.90 s]
> sage -t --long src/sage/plot/line.py
>     [79 tests, 12.94 s]
> sage -t --long src/sage/plot/matrix_plot.py
>     [64 tests, 13.84 s]
> sage -t --long src/sage/plot/misc.py
>     [42 tests, 2.66 s]
> sage -t --long src/sage/plot/contour_plot.py
>     [137 tests, 38.86 s]
> sage -t --long src/sage/plot/plot3d/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/base.pyx
> **********************************************************************
> File "src/sage/plot/plot3d/base.pyx", line 124, in sage.plot.plot3d.base.Graphics3d._rich_repr_
> Failed example:
>     g._rich_repr_(dm)  # OutputSceneThreejs container outside doctest mode
> Expected:
>     OutputSceneJmol container
> Got:
>     OutputImagePng container
> **********************************************************************
> 1 item had failures:
>    1 of   5 in sage.plot.plot3d.base.Graphics3d._rich_repr_
>     [337 tests, 1 failure, 42.60 s]
> sage -t --long src/sage/plot/multigraphics.py
> **********************************************************************
> File "src/sage/plot/multigraphics.py", line 1297, in sage.plot.multigraphics.GraphicsArray.position
> Failed example:
>     G.position(0)  # tol 1.0e-13
> Expected:
>     (0.028906249999999998,
>      0.038541666666666696,
>      0.45390624999999996,
>      0.9229166666666667)
> Got:
>     (0.023437500000000003,
>      0.03415488992713045,
>      0.4627803348994754,
>      0.9345951100728696)
> Tolerance exceeded in 4 of 4:
>     0.028906249999999998 vs 0.023437500000000003, tolerance 2e-1 > 1e-13
>     0.038541666666666696 vs 0.03415488992713045, tolerance 2e-1 > 1e-13
>     0.45390624999999996 vs 0.4627803348994754, tolerance 2e-2 > 1e-13
>     0.9229166666666667 vs 0.9345951100728696, tolerance 2e-2 > 1e-13
> **********************************************************************
> File "src/sage/plot/multigraphics.py", line 1302, in sage.plot.multigraphics.GraphicsArray.position
> Failed example:
>     G.position(1)  # tol 1.0e-13
> Expected:
>     (0.5171874999999999,
>      0.038541666666666696,
>      0.45390624999999996,
>      0.9229166666666667)
> Got:
>     (0.5136230468749999,
>      0.19293222169724827,
>      0.46278033489947534,
>      0.617040446532634)
> Tolerance exceeded in 4 of 4:
>     0.5171874999999999 vs 0.5136230468749999, tolerance 7e-3 > 1e-13
>     0.038541666666666696 vs 0.19293222169724827, tolerance 5e0 > 1e-13
>     0.45390624999999996 vs 0.46278033489947534, tolerance 2e-2 > 1e-13
>     0.9229166666666667 vs 0.617040446532634, tolerance 4e-1 > 1e-13
> **********************************************************************
> 1 item had failures:
>    2 of   6 in sage.plot.multigraphics.GraphicsArray.position
>     [192 tests, 2 failures, 31.81 s]
> sage -t --long src/sage/plot/plot3d/base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/graphics.py
>     [385 tests, 60.56 s]
> sage -t --long src/sage/plot/plot3d/implicit_surface.pyx
>     [97 tests, 7.86 s]
> sage -t --long src/sage/plot/plot3d/index_face_set.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/introduction.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/index_face_set.pyx
>     [158 tests, 12.61 s]
> sage -t --long src/sage/plot/plot3d/list_plot3d.py
>     [48 tests, 23.60 s]
> sage -t --long src/sage/plot/plot3d/parametric_surface.pyx
>     [106 tests, 29.56 s]
> sage -t --long src/sage/plot/plot3d/parametric_surface.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/implicit_plot3d.py
>     [95 tests, 79.49 s]
> sage -t --long src/sage/plot/plot3d/platonic.py
>     [52 tests, 27.44 s]
> sage -t --long src/sage/plot/plot3d/parametric_plot3d.py
>     [222 tests, 74.16 s]
> sage -t --long src/sage/plot/plot3d/point_c.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot.py
>     [446 tests, 142.52 s]
> sage -t --long src/sage/plot/plot3d/plot_field3d.py
>     [8 tests, 9.62 s]
> sage -t --long src/sage/plot/plot3d/shapes.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/revolution_plot3d.py
>     [29 tests, 21.81 s]
> sage -t --long src/sage/plot/plot3d/shapes.pyx
>     [162 tests, 48.70 s]
> sage -t --long src/sage/plot/plot3d/texture.py
>     [66 tests, 2.43 s]
> sage -t --long src/sage/plot/plot3d/transform.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/tachyon.py
>     [394 tests, 42.82 s]
> sage -t --long src/sage/plot/plot3d/tri_plot.py
>     [70 tests, 0.95 s]
> sage -t --long src/sage/plot/plot3d/plot3d.py
>     [237 tests, 95.76 s]
> sage -t --long src/sage/plot/plot_field.py
>     [53 tests, 6.63 s]
> sage -t --long src/sage/plot/plot3d/shapes2.py
>     [118 tests, 69.10 s]
> sage -t --long src/sage/plot/primitive.py
>     [44 tests, 1.35 s]
> sage -t --long src/sage/plot/scatter_plot.py
>     [19 tests, 2.29 s]
> sage -t --long src/sage/plot/step.py
>     [4 tests, 0.94 s]
> sage -t --long src/sage/plot/polygon.py
>     [73 tests, 11.95 s]
> sage -t --long src/sage/plot/point.py
>     [86 tests, 14.89 s]
> sage -t --long src/sage/probability/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/probability/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/text.py
>     [46 tests, 2.95 s]
> sage -t --long src/sage/probability/random_variable.py
>     [19 tests, 0.01 s]
> sage -t --long src/sage/quadratic_forms/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/quadratic_forms/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/quadratic_forms/binary_qf.py
>     [245 tests, 0.51 s]
> sage -t --long src/sage/quadratic_forms/constructions.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/quadratic_forms/count_local_2.pyx
>     [16 tests, 0.03 s]
> sage -t --long src/sage/quadratic_forms/extras.py
>     [18 tests, 0.06 s]
> sage -t --long src/sage/quadratic_forms/genera/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/quadratic_forms/genera/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/probability/probability_distribution.pyx
>     [210 tests, 2.20 s]
> sage -t --long src/sage/quadratic_forms/genera/normal_form.py
>     [275 tests, 0.77 s]
> sage -t --long src/sage/quadratic_forms/genera/genus.py
>     [371 tests, 0.76 s]
> sage -t --long src/sage/quadratic_forms/qfsolve.py
>     [38 tests, 0.07 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form.py
>     [194 tests, 0.51 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__count_local_2.py
>     [19 tests, 0.03 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__equivalence_testing.py
>     [65 tests, 0.70 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__evaluate.pyx
>     [9 tests, 0.01 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__genus.py
>     [10 tests, 0.26 s]
> sage -t --long src/sage/plot/streamline_plot.py
>     [39 tests, 10.68 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__local_density_congruence.py
>     [134 tests, 2.05 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__local_density_interfaces.py
>     [18 tests, 0.71 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__local_field_invariants.py
>     [141 tests, 0.31 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__local_normal_form.py
>     [18 tests, 0.03 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__mass.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__mass__Conway_Sloane_masses.py
>     [59 tests, 2.11 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__mass__Siegel_densities.py
>     [14 tests, 0.23 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__neighbors.py
>     [15 tests, 0.05 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__reduction_theory.py
>     [16 tests, 0.05 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__automorphisms.py
>     [56 tests, 11.99 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__split_local_covering.py
>     [18 tests, 0.62 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__ternary_Tornaria.py
>     [99 tests, 0.35 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__theta.py
>     [23 tests, 0.07 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__variable_substitutions.py
>     [26 tests, 0.03 s]
> sage -t --long src/sage/quadratic_forms/random_quadraticform.py
>     [10 tests, 0.05 s]
> sage -t --long src/sage/quadratic_forms/special_values.py
>     [30 tests, 1.32 s]
> sage -t --long src/sage/quadratic_forms/ternary.pyx
>     [106 tests, 0.09 s]
> sage -t --long src/sage/quadratic_forms/quadratic_form__siegel_product.py
>     [16 tests, 9.00 s]
> sage -t --long src/sage/quivers/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/plot/plot3d/transform.pyx
>     [24 tests, 46.47 s]
> sage -t --long src/sage/quivers/algebra.py
>     [119 tests, 0.56 s]
> sage -t --long src/sage/quadratic_forms/ternary_qf.py
>     [328 tests, 1.87 s]
> sage -t --long src/sage/quivers/algebra_elements.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/quivers/homspace.py
>     [97 tests, 0.53 s]
> sage -t --long src/sage/quivers/morphism.py
>     [346 tests, 1.15 s]
> sage -t --long src/sage/quivers/algebra_elements.pyx
>     [211 tests, 2.60 s]
> sage -t --long src/sage/quivers/paths.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/quivers/paths.pyx
>     [154 tests, 0.06 s]
> sage -t --long src/sage/quivers/path_semigroup.py
>     [195 tests, 0.67 s]
> sage -t --long src/sage/repl/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/quivers/representation.py
>     [495 tests, 1.77 s]
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fada09c50a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 6706.
> sage -t --long src/sage/quivers/algebra_elements.pxi
>     [5 tests, 1.75 s]
> sage -t --long src/sage/repl/display/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/display/fancy_repr.py
>     [32 tests, 0.02 s]
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9c8480a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 6740.
> sage -t --long src/sage/repl/configuration.py
>     [22 tests, 16.28 s]
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fada09c50a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_v_self=0x7fad9f4f0430, 
>     __pyx_v_exc=0x7fad9f2cd940) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_args=0x7fad9f2cd940, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9f2cd940
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fada09c50a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fada09c50a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 6706) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_jouohuuj.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> sage -t --long src/sage/repl/attach.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=6706) failed:
> sage: attach('http://wstein.org/loadtest.py') ## line 6 ##
> sage: dir = tmp_dir() ## line 13 ##
> sage: src = os.path.join(dir, 'foobar.sage') ## line 14 ##
> sage: with open(src, 'w') as f:
>     _ = f.write('print("<output from attached file>")\n') ## line 15 ##
> sage: attach(src) ## line 17 ##
> <output from attached file>
> sage: os.listdir(dir) ## line 19 ##
> ['foobar.sage']
> sage: detach(src) ## line 21 ##
> sage: import traceback ## line 28 ##
> sage: with open(src, 'w') as f:
>     _ = f.write('# first line\n')
>     _ = f.write('# second line\n')
>     _ = f.write('raise ValueError("third")   # this should appear in the source snippet\n')
>     _ = f.write('# fourth line\n') ## line 29 ##
> sage: load_attach_mode(attach_debug=False) ## line 35 ##
> sage: try:
>     attach(src)
> except Exception:
>     traceback.print_exc(file=sys.stdout) ## line 36 ##
> Traceback (most recent call last):
>   File "<doctest sage.repl.attach[10]>", line 2, in <module>
>     attach(src)
>   File "sage/misc/lazy_import.pyx", line 353, in sage.misc.lazy_import.LazyImport.__call__ (build/cythonized/sage/misc/lazy_import.c:3685)
>     return self.get_object()(*args, **kwds)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/attach.py", line 357, in attach
>     load(filename, globals(), attach=True)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/load.py", line 272, in load
>     exec(preparse_file(f.read()) + "\n", globals)
>   File "<string>", line 3, in <module>
> ValueError: third
> sage: detach(src) ## line 45 ##
> sage: load_attach_mode(attach_debug=True) ## line 47 ##
> sage: try:
>     attach(src)
> except Exception:
>     traceback.print_exc(file=sys.stdout) ## line 48 ##
> Traceback (most recent call last):
>   File "<doctest sage.repl.attach[13]>", line 2, in <module>
>     attach(src)
>   File "sage/misc/lazy_import.pyx", line 353, in sage.misc.lazy_import.LazyImport.__call__ (build/cythonized/sage/misc/lazy_import.c:3685)
>     return self.get_object()(*args, **kwds)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/attach.py", line 357, in attach
>     load(filename, globals(), attach=True)
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/load.py", line 266, in load
>     exec(code, globals)
>   File "/<<PKGBUILDDIR>>/debian/test/temp/ip-172-31-7-91/6706/foobar.sage_48blsmr.py", line 7, in <module>
>     raise ValueError("third")   # this should appear in the source snippet
> ValueError: third
> sage: detach(src) ## line 58 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 59 ##
> 0
> sage: load_attach_mode() ## line 122 ##
> (False, True)
> sage: load_attach_mode(attach_debug=False) ## line 124 ##
> sage: load_attach_mode() ## line 125 ##
> (False, False)
> sage: load_attach_mode(load_debug=True) ## line 127 ##
> sage: load_attach_mode() ## line 128 ##
> (True, False)
> sage: load_attach_mode(load_debug=False, attach_debug=True) ## line 130 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 131 ##
> 0
> sage: sage.repl.attach.reset(); reset_load_attach_path() ## line 165 ##
> sage: load_attach_path() ## line 166 ##
> ['.']
> sage: t_dir = tmp_dir() ## line 168 ##
> sage: fullpath = os.path.join(t_dir, 'test.py') ## line 169 ##
> sage: with open(fullpath, 'w') as f:
>     _ = f.write("print(37 * 3)") ## line 170 ##
> sage: load_attach_path(SAGE_TMP, replace=True) ## line 177 ##
> sage: attach('test.py') ## line 178 ##
> sage: load_attach_path(t_dir) ## line 182 ##
> sage: attach('test.py') ## line 183 ##
> 111
> sage: attached_files() == [fullpath] ## line 185 ##
> True
> sage: sage.repl.attach.reset(); reset_load_attach_path() ## line 187 ##
> sage: load_attach_path() == ['.'] ## line 188 ##
> True
> sage: load_attach_path(SAGE_TMP, replace=True) ## line 190 ##
> sage: load('test.py') ## line 191 ##
> sage: reset_load_attach_path(); load_attach_path() ## line 198 ##
> ['.']
> sage: load_attach_path('/path/to/my/sage/scripts'); load_attach_path() ## line 200 ##
> ['.', '/path/to/my/sage/scripts']
> sage: load_attach_path(['good', 'bad', 'ugly'], replace=True) ## line 202 ##
> sage: load_attach_path() ## line 203 ##
> ['good', 'bad', 'ugly']
> sage: p = load_attach_path(); p.pop() ## line 205 ##
> 'ugly'
> sage: p[0] = 'weird'; load_attach_path() ## line 207 ##
> ['weird', 'bad']
> sage: reset_load_attach_path(); load_attach_path() ## line 209 ##
> ['.']
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 211 ##
> 0
> sage: load_attach_path() ## line 238 ##
> ['.']
> sage: t_dir = tmp_dir() ## line 240 ##
> sage: load_attach_path(t_dir) ## line 241 ##
> sage: t_dir in load_attach_path() ## line 242 ##
> True
> sage: reset_load_attach_path(); load_attach_path() ## line 244 ##
> ['.']
> sage: reset_load_attach_path(); load_attach_path() ## line 250 ##
> ['.']
> sage: os.environ['SAGE_LOAD_ATTACH_PATH'] = '/veni/vidi:vici:' ## line 252 ##
> sage: import importlib ## line 253 ##
> sage: importlib.reload(sage.repl.attach)    # Simulate startup ## line 254 ##
> <module 'sage.repl.attach' from '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/attach.py'>
> sage: load_attach_path() ## line 256 ##
> ['.', '/veni/vidi', 'vici']
> sage: del os.environ['SAGE_LOAD_ATTACH_PATH'] ## line 258 ##
> sage: importlib.reload(sage.repl.preparse)    # Simulate startup ## line 259 ##
> <module 'sage.repl.preparse' from '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/preparse.py'>
> sage: reset_load_attach_path(); load_attach_path() ## line 261 ##
> ['.']
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 263 ##
> 0
> sage: sage.repl.attach.reset() ## line 324 ##
> sage: t1 = tmp_filename(ext='.py') ## line 325 ##
> sage: with open(t1,'w') as f: _ = f.write("print('hello world')") ## line 326 ##
> sage: t2 = tmp_filename(ext='.py') ## line 327 ##
> sage: with open(t2,'w') as f: _ = f.write("print('hi there xxx')") ## line 328 ##
> sage: attach(t1, t2) ## line 329 ##
> hello world
> hi there xxx
> sage: set(attached_files()) == set([t1,t2]) ## line 332 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 346 ##
> 0
> sage: import sage.repl.attach as af ## line 374 ##
> sage: af.reset() ## line 375 ##
> sage: t = tmp_filename(ext='.py') ## line 376 ##
> sage: af.add_attached_file(t) ## line 377 ##
> sage: af.attached_files() ## line 378 ##
> ['/<<PKGBUILDDIR>>/debian/test/temp/ip-172-31-7-91/6706/tmp_5hwyd7b4.py']
> sage: af.detach(t) ## line 380 ##
> sage: af.attached_files() ## line 381 ##
> []
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 383 ##
> 0
> sage: sage.repl.attach.reset() ## line 400 ##
> sage: t = tmp_filename(ext='.py') ## line 401 ##
> sage: with open(t,'w') as f: _ = f.write("print('hello world')") ## line 402 ##
> sage: attach(t) ## line 403 ##
> hello world
> sage: attached_files() ## line 405 ##
> ['/<<PKGBUILDDIR>>/debian/test/temp/ip-172-31-7-91/6706/tmp_qlww5tbi.py']
> sage: attached_files() == [t] ## line 407 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 409 ##
> 0
> sage: sage.repl.attach.reset() ## line 426 ##
> sage: t = tmp_filename(ext='.py') ## line 427 ##
> sage: with open(t,'w') as f: _ = f.write("print('hello world')") ## line 428 ##
> sage: attach(t) ## line 429 ##
> hello world
> sage: attached_files() == [t] ## line 431 ##
> True
> sage: detach(t) ## line 433 ##
> sage: attached_files() ## line 434 ##
> []
> sage: sage.repl.attach.reset(); reset_load_attach_path() ## line 437 ##
> sage: load_attach_path() ## line 438 ##
> ['.']
> sage: t_dir = tmp_dir() ## line 440 ##
> sage: fullpath = os.path.join(t_dir, 'test.py') ## line 441 ##
> sage: with open(fullpath, 'w') as f: _ = f.write("print(37 * 3)") ## line 442 ##
> sage: load_attach_path(t_dir, replace=True) ## line 443 ##
> sage: attach('test.py') ## line 444 ##
> 111
> sage: attached_files() == [os.path.normpath(fullpath)] ## line 446 ##
> True
> sage: detach('test.py') ## line 448 ##
> sage: attached_files() ## line 449 ##
> []
> sage: attach('test.py') ## line 451 ##
> 111
> sage: fullpath = os.path.join(t_dir, 'test2.py') ## line 453 ##
> sage: with open(fullpath, 'w') as f: _ = f.write("print(3)") ## line 454 ##
> sage: attach('test2.py') ## line 455 ##
> 3
> sage: detach(attached_files()) ## line 457 ##
> sage: attached_files() ## line 458 ##
> []
> sage: detach('/dev/null/foobar.sage') ## line 463 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 467 ##
> 0
> sage: sage.repl.attach.reset() ## line 496 ##
> sage: t = tmp_filename(ext='.py') ## line 497 ##
> sage: with open(t,'w') as f: _ = f.write("print('hello world')") ## line 498 ##
> sage: attach(t) ## line 499 ##
> hello world
> sage: attached_files() == [t] ## line 501 ##
> True
> sage: sage.repl.attach.reset() ## line 503 ##
> sage: attached_files() ## line 504 ##
> []
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 506 ##
> 0
> sage: sage.repl.attach.reset() ## line 524 ##
> sage: t = tmp_filename(ext='.py') ## line 525 ##
> sage: attach(t) ## line 526 ##
> sage: from sage.repl.attach import modified_file_iterator ## line 527 ##
> sage: list(modified_file_iterator()) ## line 528 ##
> []
> sage: sleep(1)   # filesystem mtime granularity ## line 530 ##
> sage: with open(t, 'w') as f: _ = f.write('1') ## line 531 ##
> sage: list(modified_file_iterator()) ## line 532 ##
> [('/<<PKGBUILDDIR>>/debian/test/temp/ip-172-31-7-91/6706/tmp_89jbgc2f.py',
>   time.struct_time(tm_year=2020, tm_mon=6, tm_mday=21, tm_hour=8, tm_min=36, tm_sec=23, tm_wday=6, tm_yday=173, tm_isdst=0))]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 534 ##
> 0
> sage: sage.repl.attach.reset() ## line 568 ##
> sage: from sage.repl.interpreter import get_test_shell ## line 569 ##
> sage: shell = get_test_shell() ## line 570 ##
> sage: tmp = tmp_filename(ext='.py') ## line 571 ##
> sage: with open(tmp, 'w') as f: _ = f.write('a = 2\n') ## line 572 ##
> sage: shell.run_cell('attach({0})'.format(repr(tmp))) ## line 573 ##
> sage: shell.run_cell('a') ## line 574 ##
> 2
> sage: sleep(1)   # filesystem mtime granularity ## line 576 ##
> sage: with open(tmp, 'w') as f: _ = f.write('a = 3\n') ## line 577 ##
> sage: shell.run_cell('from sage.repl.attach import reload_attached_files_if_modified') ## line 583 ##
> sage: shell.run_cell('reload_attached_files_if_modified()') ## line 584 ##
> ### reloading attached file tmp_45q7uag2.py modified at 08:36:24 ###
> sage: shell.run_cell('a') ## line 587 ##
> 3
> sage: shell.run_cell('detach({0})'.format(repr(tmp))) ## line 589 ##
> sage: shell.run_cell('attached_files()') ## line 590 ##
> []
> sage: shell.quit() ## line 592 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 593 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/repl/display/pretty_print.py
>     [21 tests, 0.02 s]
> sage -t --long src/sage/repl/display/util.py
>     [7 tests, 0.02 s]
> sage -t --long src/sage/repl/image.py
>     [42 tests, 0.30 s]
> sage -t --long src/sage/repl/inputhook.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/repl/display/jsmol_iframe.py
>     [25 tests, 1.29 s]
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9eb9a0a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 6772.
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> [New LWP 6741]
> [New LWP 6742]
> [New LWP 6743]
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9c8480a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_v_self=0x7fad9f4f0430, 
>     __pyx_v_exc=0x7fad9c8b8f80) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_args=0x7fad9c8b8f80, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9c8b8f80
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9c8480a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9c8480a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 6740) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_dfikz60q.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> sage -t --long src/sage/repl/display/formatter.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=6740) failed:
> sage: [identity_matrix(i) for i in range(2,5)] ## line 10 ##
> [
>                 [1 0 0 0]
>        [1 0 0]  [0 1 0 0]
> [1 0]  [0 1 0]  [0 0 1 0]
> [0 1], [0 0 1], [0 0 0 1]
> ]
> sage: from sage.repl.interpreter import get_test_shell ## line 24 ##
> sage: shell = get_test_shell() ## line 25 ##
> sage: shell.run_cell('%display ascii_art') ## line 26 ##
> sage: shell.run_cell('integral(x^2/pi^x, x)') ## line 27 ##
>    -x / 2    2                      \ 
> -pi  *\x *log (pi) + 2*x*log(pi) + 2/ 
> --------------------------------------
>                   3                   
>                log (pi)               
> sage: shell.run_cell("i = var('i')") ## line 33 ##
> sage: shell.run_cell('sum(i*x^i, i, 0, 10)') ## line 34 ##
>     10      9      8      7      6      5      4      3      2    
> 10*x   + 9*x  + 8*x  + 7*x  + 6*x  + 5*x  + 4*x  + 3*x  + 2*x  + x
> sage: shell.run_cell('StandardTableaux(4).list()') ## line 37 ##
> [                                                                               
> [                                                                  1  4    1  3 
> [                 1  3  4    1  2  4    1  2  3    1  3    1  2    2       2    
> [   1  2  3  4,   2      ,   3      ,   4      ,   2  4,   3  4,   3   ,   4   ,
> 
>            1 ]
>    1  2    2 ]
>    3       3 ]
>    4   ,   4 ]
> sage: shell.run_cell('%display default') ## line 47 ##
> sage: shell.quit() ## line 48 ##
> sage: from sage.repl.display.formatter import SageDisplayFormatter ## line 88 ##
> sage: fmt = SageDisplayFormatter() ## line 89 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 93 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 114 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPython ## line 115 ##
> sage: backend = BackendIPython() ## line 116 ##
> sage: shell = get_test_shell() ## line 117 ##
> sage: backend.install(shell=shell) ## line 118 ##
> sage: shell.run_cell('get_ipython().display_formatter.default_mime()') ## line 119 ##
> ['text/plain']
> sage: shell.run_cell('%display latex')   # indirect doctest ## line 121 ##
> sage: shell.run_cell('get_ipython().display_formatter.default_mime()') ## line 122 ##
> \newcommand{\Bold}[1]{\mathbf{#1}}\left[\verb|text/plain|, \verb|text/html|\right]
> sage: shell.run_cell('%display default') ## line 124 ##
> sage: shell.quit() ## line 125 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 126 ##
> 0
> sage: [identity_matrix(i) for i in range(3,7)] ## line 141 ##
> [
>                                  [1 0 0 0 0 0]
>                     [1 0 0 0 0]  [0 1 0 0 0 0]
>          [1 0 0 0]  [0 1 0 0 0]  [0 0 1 0 0 0]
> [1 0 0]  [0 1 0 0]  [0 0 1 0 0]  [0 0 0 1 0 0]
> [0 1 0]  [0 0 1 0]  [0 0 0 1 0]  [0 0 0 0 1 0]
> [0 0 1], [0 0 0 1], [0 0 0 0 1], [0 0 0 0 0 1]
> ]
> sage: from sage.repl.interpreter import get_test_shell ## line 150 ##
> sage: shell = get_test_shell() ## line 151 ##
> sage: shell.run_cell('%display ascii_art')   # indirect doctest ## line 152 ##
> sage: shell.run_cell("i = var('i')") ## line 153 ##
> sage: shell.run_cell('sum(i*x^i, i, 0, 10)') ## line 154 ##
>     10      9      8      7      6      5      4      3      2    
> 10*x   + 9*x  + 8*x  + 7*x  + 6*x  + 5*x  + 4*x  + 3*x  + 2*x  + x
> sage: shell.run_cell('%display default') ## line 157 ##
> sage: shell.quit() ## line 158 ##
> sage: import os ## line 162 ##
> sage: from sage.env import SAGE_EXTCODE ## line 163 ##
> sage: example_png = os.path.join(SAGE_EXTCODE, 'doctest', 'rich_output', 'example.png') ## line 164 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPython ## line 165 ##
> sage: backend = BackendIPython() ## line 166 ##
> sage: shell = get_test_shell() ## line 167 ##
> sage: backend.install(shell=shell) ## line 168 ##
> sage: shell.run_cell('get_ipython().display_formatter') ## line 169 ##
> <sage.repl.display.formatter.SageDisplayFormatter object at 0x7fad9f3780d0>
> sage: shell.run_cell('from IPython.display import Image') ## line 171 ##
> sage: shell.run_cell('ipython_image = Image("{0}")'.format(example_png)) ## line 172 ##
> sage: shell.run_cell('ipython_image') ## line 173 ##
> <IPython.core.display.Image object>
> sage: shell.run_cell('get_ipython().display_formatter.format(ipython_image)') ## line 175 ##
> ({'image/png': 'iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gwcDTENi+s6hQAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAABxElEQVRYw+2WT6sxYRjGn3nLNKys2EhNylL+xE4mS4WysVAiG/kEFr6ADcmChaWlz8BCIkU+grLQsJIYZsZcZ3M4nHHOcc5537yL56q7nqf7z/Wr5148DACQJ+oPebIoAAWgABTg/wFgGOYSHMcRp9NJSqUSkSSJXNcEAgGiaZpuEMMwN3dN00ir1SLBYJCYzWbCsiyx2WwkmUySbrf7VohXXR1xOBwwnU4hCAIKhQKua1KpFJrNJt7rul9RFESjUcRiMfT7fWy3W8iyjPl8jna7jVAo9NZ3b8BZi8UCVqv1xmS5XILneazX6w8BqtUqEokEHtGXABaLRWdSq9WQy+U+BHC73RiPxz8HOB6PmM1mCIfDyOfzOhNVVeHxeDAcDu8CGI1GSJL0fYBzsCwLh8OBYrGI3W5312QwGMDr9UJVVV2O4zjs9/u7e3KOh57gs0UDgGw2i3q9rsu5XC6MRqOH5vwKYLVaged5iKJ4kyuXy4jH4/8eAAAajQbS6bRuhwRBQCQSQa/Xw2azgaIoEEURnU7n7wKcTif4/X5dTpZlVCoV+Hw+mEwmGAwG2O12ZDIZTCaTSx1DP6UUgAJQAArwbIAXpa3KUOo/td8AAAAASUVORK5CYII=\n',
>   'text/plain': '<IPython.core.display.Image object>'},
>  {})
> sage: shell.run_cell('%display latex')   # indirect doctest ## line 182 ##
> sage: shell.run_cell('set(get_ipython().display_formatter.format(ipython_image)[0].keys())'
>                ' == set(["text/plain", "image/png"])') ## line 183 ##
> \newcommand{\Bold}[1]{\mathbf{#1}}\mathrm{True}
> sage: shell.run_cell('%display default') ## line 186 ##
> sage: shell.quit() ## line 187 ##
> sage: class Repper(object):
>    def __repr__(self):
>        print('__repr__ called')
>        return 'I am repper' ## line 191 ##
> sage: Repper() ## line 195 ##
> __repr__ called
> I am repper
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 198 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 245 ##
> sage: shell = get_test_shell() ## line 246 ##
> sage: shell.display_formatter.formatters['text/plain'] ## line 247 ##
> <IPython.core.formatters.PlainTextFormatter object at 0x7fad9f481b80>
> sage: shell.quit() ## line 249 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 250 ##
> 0
> sage: from sage.repl.display.formatter import SagePlainTextFormatter ## line 269 ##
> sage: fmt = SagePlainTextFormatter() ## line 270 ##
> sage: fmt ## line 271 ##
> <sage.repl.display.formatter.SagePlainTextFormatter object at 0x7fad9f481220>
> sage: fmt(2) ## line 273 ##
> ---- calling ipython formatter ----
> '2'
> sage: a = identity_matrix(ZZ, 2) ## line 276 ##
> sage: fmt([a, a]) ## line 277 ##
> ---- calling ipython formatter ----
> '[\n[1 0]  [1 0]\n[0 1], [0 1]\n]'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 280 ##
> 0
> 
> **********************************************************************
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9c1d10a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 6838.
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/markupsafe/_speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Stemmer.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstemmer.so.0d)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9eb9a0a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_v_self=0x7fad9f4f0430, 
>     __pyx_v_exc=0x7fad9e344040) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_args=0x7fad9e344040, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9e344040
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9eb9a0a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9eb9a0a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 6772) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_bfcofxtc.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> sage -t --long src/sage/repl/interface_magic.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=6772) failed:
> sage: from sage.repl.interface_magic import InterfaceMagic ## line 92 ##
> sage: next(InterfaceMagic.all_iter()) ## line 93 ##
> <sage.repl.interface_magic.InterfaceMagic object at 0x7fad9f481100>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 95 ##
> 0
> sage: class MockShell():
>     magics = set()
>     def register_magic_function(self, fn, magic_name, magic_kind):
>         self.magics.add(magic_name)
>         print(magic_name, magic_kind) ## line 108 ##
> sage: from sage.repl.interface_magic import InterfaceMagic ## line 113 ##
> sage: InterfaceMagic.register_all(MockShell())    # random output ## line 114 ##
> axiom line
> axiom cell
> fricas line
> fricas cell
> gap line
> gap cell
> gap3 line
> gap3 cell
> giac line
> giac cell
> gp line
> gp cell
> kash line
> kash cell
> lisp line
> lisp cell
> magma line
> magma cell
> macaulay2 line
> macaulay2 cell
> maple line
> maple cell
> maxima line
> maxima cell
> mathematica line
> mathematica cell
> matlab line
> matlab cell
> mupad line
> mupad cell
> mwrank line
> mwrank cell
> octave line
> octave cell
> polymake line
> polymake cell
> singular line
> singular cell
> sage0 line
> sage0 cell
> scilab line
> scilab cell
> lie line
> lie cell
> r line
> r cell
> sage: 'gap' in MockShell.magics ## line 122 ##
> True
> sage: 'maxima' in MockShell.magics ## line 124 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 126 ##
> 0
> sage: from sage.repl.interface_magic import InterfaceMagic ## line 159 ##
> sage: InterfaceMagic.find('gap') ## line 160 ##
> <sage.repl.interface_magic.InterfaceMagic object at 0x7fad9f481160>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 162 ##
> 0
> sage: from sage.repl.interface_magic import InterfaceMagic ## line 183 ##
> sage: InterfaceMagic.find('gap') ## line 184 ##
> <sage.repl.interface_magic.InterfaceMagic object at 0x7fad9f481c70>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 186 ##
> 0
> sage: from sage.repl.interface_magic import InterfaceMagic ## line 200 ##
> sage: line_magic = InterfaceMagic.find('gap').line_magic_factory() ## line 201 ##
> sage: output = line_magic('1+1') ## line 202 ##
> sage: output  ## line 203 ##
> 2
> sage: type(output) ## line 205 ##
> <class 'sage.interfaces.gap.GapElement'>
> sage: from sage.repl.interpreter import get_test_shell ## line 210 ##
> sage: shell = get_test_shell() ## line 211 ##
> sage: shell.run_cell('%gap 1+1') ## line 212 ##
> 2
> sage: shell.run_cell('%gap?') ## line 214 ##
> Docstring:
> Interact with gap
> 
> The line magic %gap sends a single line to the gap interface.
> 
> INPUT:
> 
> Single gap command
> 
> OUTPUT:
> 
> The result of the evaluated gap command as an interface wrapper
> object.
> 
> EXAMPLES:
> 
>    sage: %gap 1 + 2 + 3     # not tested
> File:      /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/interface_magic.py
> 
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 220 ##
> 0
> sage: from sage.repl.interface_magic import InterfaceMagic ## line 243 ##
> sage: cell_magic = InterfaceMagic.find('gap').cell_magic_factory() ## line 244 ##
> sage: output = cell_magic('', '1+1;') ## line 245 ##
> 2
> sage: output is None ## line 247 ##
> True
> sage: cell_magic('foo', '1+1;') ## line 249 ##
> sage: from sage.repl.interpreter import get_test_shell ## line 256 ##
> sage: shell = get_test_shell() ## line 257 ##
> sage: shell.run_cell('%%gap\nG:=SymmetricGroup(5);\n1+1;Order(G);') ## line 258 ##
> Sym( [ 1 .. 5 ] )
> 2
> 120
> sage: shell.run_cell('%%gap foo\n1+1;\n') ## line 262 ##
> Traceback (most recent call last):
> 
>   File "/usr/lib/python3/dist-packages/IPython/core/interactiveshell.py", line 3331, in run_code
>     exec(code_obj, self.user_global_ns, self.user_ns)
> 
>   File "<ipython-input-1-cf1f771515ad>", line 1, in <module>
>     get_ipython().run_cell_magic('gap', 'foo', '1+1;\n')
> 
>   File "/usr/lib/python3/dist-packages/IPython/core/interactiveshell.py", line 2362, in run_cell_magic
>     result = fn(*args, **kwargs)
> 
>   File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/interface_magic.py", line 295, in cell_magic
>     raise SyntaxError('Interface magics have no options, got "{0}"'.format(line))
> 
>   File "<string>", line unknown
> SyntaxError: Interface magics have no options, got "foo"
> 
> sage: shell.run_cell('%%gap?') ## line 266 ##
> Docstring:
> Interact with gap
> 
> The cell magic %%gap sends multiple lines to the gap interface.
> 
> INPUT:
> 
> Multiple lines of valid gap-commands
> 
> OUTPUT:
> 
> The result of the evaluated gap-commands is printed.
> 
> EXAMPLES:
> 
>    sage: %%gap                    # not tested
>    ....: 1 + 2 + 3;
>    ....: some_gap_command();
> File:      /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/interface_magic.py
> 
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 272 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/repl/ipython_kernel/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/ipython_kernel/__main__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/ipython_kernel/all_jupyter.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/ipython_kernel/install.py
> **********************************************************************
> File "src/sage/repl/ipython_kernel/install.py", line 152, in sage.repl.ipython_kernel.install.SageKernelSpec.use_local_jsmol
> Failed example:
>     os.path.isdir(jsmol)
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> File "src/sage/repl/ipython_kernel/install.py", line 154, in sage.repl.ipython_kernel.install.SageKernelSpec.use_local_jsmol
> Failed example:
>     os.path.isfile(os.path.join(jsmol, "JSmol.min.js"))
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> 1 item had failures:
>    2 of   7 in sage.repl.ipython_kernel.install.SageKernelSpec.use_local_jsmol
>     [49 tests, 2 failures, 0.40 s]
> sage -t --long src/sage/repl/ipython_kernel/interact.py
>     [40 tests, 0.09 s]
> sage -t --long src/sage/repl/ipython_kernel/kernel.py
>     [12 tests, 0.02 s]
> sage -t --long src/sage/repl/ipython_kernel/widgets.py
>     [99 tests, 0.10 s]
> sage -t --long src/sage/repl/ipython_kernel/widgets_sagenb.py
> **********************************************************************
> File "src/sage/repl/ipython_kernel/widgets_sagenb.py", line 472, in sage.repl.ipython_kernel.widgets_sagenb.selector
> Failed example:
>     selector([sin(x^2), GF(29), EllipticCurve('37a1')])
> Expected:
>     Dropdown(value=sin(x^2), options=(sin(x^2), Finite Field of size 29, Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field))
> Got:
>     Dropdown(value=sin(x^2), options=[sin(x^2), Finite Field of size 29, Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field])
> **********************************************************************
> 1 item had failures:
>    1 of  10 in sage.repl.ipython_kernel.widgets_sagenb.selector
>     [77 tests, 1 failure, 0.35 s]
> sage -t --long src/sage/repl/interpreter.py
> **********************************************************************
> File "src/sage/repl/interpreter.py", line 617, in sage.repl.interpreter.get_test_shell
> Failed example:
>     out + err
> Expected:
>     ''
> Got:
>     'free(): invalid pointer\n------------------------------------------------------------------------\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7f440e2f297b]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7f440e2f2b49]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7f440e2f551d]\n/lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7f440e674800]\n/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7f440e674781]\n/lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7f440e65e55b]\n/lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7f440e6b7038]\n/lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7f440e6be3da]\n/lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7f440e6bfdcc]\n/usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7f43cff89e70]\n/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7f43c56070a9]\npython3[0x5c02c2]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(PyObject_Call+0x1f7)[0x5f1847]\npython3[0x64b8e0]\npython3(Py_FinalizeEx+0x44)[0x677a94]\npython3(Py_RunMain+0x329)[0x6aea19]\npython3(Py_BytesMain+0x29)[0x6aec89]\n/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7f440e65fe0b]\npython3(_start+0x2a)[0x5f59da]\n------------------------------------------------------------------------\nAttaching gdb to process id 6830.\nGNU gdb (Debian 9.2-1) 9.2\nCopyright (C) 2020 Free Software Foundation, Inc.\nLicense GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.\nType "show copying" and "show warranty" for details.\nThis GDB was configured as "x86_64-linux-gnu".\nType "show configuration" for configuration details.\nFor bug reporting instructions, please see:\n<http://www.gnu.org/software/gdb/bugs/>.\nFind the GDB manual and other documentation resources online at:\n    <http://www.gnu.org/software/gdb/documentation/>.\n\nFor help, type "help".\nType "apropos word" to search for commands related to "word".\n[New LWP 6839]\n[Thread debugging using libthread_db enabled]\nUsing host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".\n0x00007f440e703c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6\n\nStack backtrace\n---------------\nNo symbol table info available.\n#1  0x00007f440e2f2a44 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#2  0x00007f440e2f2b86 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#3  0x00007f440e2f551d in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#4  <signal handler called>\nNo symbol table info available.\n#5  0x00007f440e674781 in raise () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#6  0x00007f440e65e55b in abort () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#7  0x00007f440e6b7038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#8  0x00007f440e6be3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#9  0x00007f440e6bfdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#10 0x00007f43cff89e70 in _fmpz_cleanup_mpz_content ()\n   from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so\nNo symbol table info available.\n#11 0x00007f43c56070a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack\n    (__pyx_self=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1202\n        __pyx_r = 0x0\n        __pyx_r = <optimized out>\n#12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (\n    __pyx_self=<optimized out>, unused=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1185\n        __pyx_r = 0x0\n#13 0x00000000005c02c2 in ?? ()\nNo symbol table info available.\n#14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#15 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#16 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#18 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#19 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#20 0x00000000005f1847 in PyObject_Call ()\nNo symbol table info available.\n#21 0x000000000064b8e0 in ?? ()\nNo symbol table info available.\n#22 0x0000000000677a94 in Py_FinalizeEx ()\nNo symbol table info available.\n#23 0x00000000006aea19 in Py_RunMain ()\nNo symbol table info available.\n#24 0x00000000006aec89 in Py_BytesMain ()\nNo symbol table info available.\n#25 0x00007f440e65fe0b in __libc_start_main ()\n   from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#26 0x00000000005f59da in _start ()\nNo symbol table info available.\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n\n\nCython backtrace\n----------------\n#0  0x00007f440e703bc0 in waitpid ()\n#1  0x0000000000000000 in ?? ()\n#2  0x0000000000000000 in ?? ()\n#3  0x0000000000000000 in ?? ()\n#4  0x0000000000000000 in ?? ()\n#5  0x00007f440e674640 in raise ()\n#6  0x00007f440e65e434 in abort ()\n#7  0x0000000000000000 in ?? ()\n#8  0x0000000000000000 in ?? ()\n#9  0x0000000000000000 in ?? ()\n#10 0x00007f440773cd00 in _fmpz_cleanup_mpz_content ()\n#11 0x00007f43c56070a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202\n#12 0x00007f43c56070a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38\n    33    cimport sage.libs.flint.padic\n    34    cimport sage.libs.flint.types\n    35    cimport sage.libs.flint.ulong_extras\n    36    \n    37    \n>   38    def free_flint_stack():\n    39        _fmpz_cleanup_mpz_content()\n#13 0x0000000000000000 in ?? ()\n#14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#16 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#19 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#20 0x00000000005f1650 in PyObject_Call ()\n#21 0x0000000000000000 in ?? ()\n#22 0x0000000000677a50 in Py_FinalizeEx ()\n#23 0x00000000006ae6f0 in Py_RunMain ()\n#24 0x00000000006aec60 in Py_BytesMain ()\n#25 0x00007f440e65fd20 in __libc_start_main ()\n#26 0x00000000005f59b0 in _start ()\n\n[Inferior 1 (process 6830) detached]\nSaved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_xk2cngk3.log\n------------------------------------------------------------------------\nUnhandled SIGABRT: An abort() occurred.\nThis probably occurred because a *compiled* module has a bug\nin it and is not properly wrapped with sig_on(), sig_off().\nPython will now terminate.\n------------------------------------------------------------------------\n/<<PKGBUILDDIR>>/sage/src/bin/sage-python: line 2:  6830 Aborted                 sage -python "$@"\n'
> **********************************************************************
> 1 item had failures:
>    1 of  10 in sage.repl.interpreter.get_test_shell
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9e72d0a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 6779.
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9ebda0a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 6940.
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> [New LWP 6846]
> [New LWP 6847]
> [New LWP 6848]
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9c1d10a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_v_self=0x7fad9f4f0430, 
>     __pyx_v_exc=0x7fad9c420d40) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_args=0x7fad9c420d40, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9c420d40
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9c1d10a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9c1d10a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 6838) detached]
> warning: Could not load shared library symbols for /<<PKGBUILDDIR>>/debian/test/temp/ip-172-31-7-91/6838/dir_hlfgjjzm/fortran_module.cpython-38-x86_64-linux-gnu.so.
> Do you need "set solib-search-path" or "set sysroot"?
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_fe7ruz2o.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fada09c50a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 7018.
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/markupsafe/_speedups.cpython-38-x86_64-linux-gnu.so)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9e72d0a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_v_self=0x7fad9f4f0430, 
>     __pyx_v_exc=0x7fad9f8d1400) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_args=0x7fad9f8d1400, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9f8d1400
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9e72d0a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9e72d0a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 6779) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_ha2817pb.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/markupsafe/_speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Stemmer.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstemmer.so.0d)
> (No debugging symbols found in /usr/lib/python3/dist-packages/_rinterface_cffi_api.abi3.so)
> (No debugging symbols found in /usr/lib/libR.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libicuuc.so.67)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libicui18n.so.67)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libicudata.so.67)
> (No debugging symbols found in /usr/lib/python3/dist-packages/_cffi_backend.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/R/library/methods/libs/methods.so)
> (No debugging symbols found in /usr/lib/R/library/utils/libs/utils.so)
> (No debugging symbols found in /usr/lib/R/library/grDevices/libs/grDevices.so)
> (No debugging symbols found in /usr/lib/R/library/graphics/libs/graphics.so)
> (No debugging symbols found in /usr/lib/R/library/stats/libs/stats.so)
> (No debugging symbols found in /usr/lib/R/library/tools/libs/tools.so)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9ebda0a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_v_self=0x7fad9f4f0430, 
>     __pyx_v_exc=0x7fad9f3aae40) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0430, __pyx_args=0x7fad9f3aae40, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9f3aae40
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9ebda0a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9ebda0a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 6940) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_w4bfb527.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=6779) failed:
> sage: from sage.repl.interpreter import get_test_shell ## line 75 ##
> sage: shell = get_test_shell() ## line 76 ##
> sage: print("dummy line"); shell.run_cell('1/0') # see #25320 for the reason of the `...` and the dummy line in this test ## line 77 ##
> dummy line
> ---------------------------------------------------------------------------
> ZeroDivisionError                         Traceback (most recent call last)
> <ipython-input-1-72ac74c5f414> in <module>
> ----> 1 Integer(1)/Integer(0)
> 
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/element.pyx in sage.structure.element.Element.__truediv__ (build/cythonized/sage/structure/element.c:12795)()
>    1714         cdef int cl = classify_elements(left, right)
>    1715         if HAVE_SAME_PARENT(cl):
> -> 1716             return (<Element>left)._div_(right)
>    1717         if BOTH_ARE_ELEMENT(cl):
>    1718             return coercion_model.bin_op(left, right, truediv)
> 
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/integer.pyx in sage.rings.integer.Integer._div_ (build/cythonized/sage/rings/integer.c:14328)()
>    2073         """
>    2074         if mpz_sgn((<Integer>right).value) == 0:
> -> 2075             raise ZeroDivisionError("rational division by zero")
>    2076         x = <Rational> Rational.__new__(Rational)
>    2077         mpq_div_zz(x.value, self.value, (<Integer>right).value)
> 
> ZeroDivisionError: rational division by zero
> sage: shell.quit() ## line 90 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 91 ##
> 0
> sage: from sage.repl.interpreter import embedded ## line 118 ##
> sage: embedded() ## line 119 ##
> False
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 121 ##
> 0
> sage: 2/3 ## line 138 ##
> 2/3
> sage: preparser(False) ## line 140 ##
> sage: preparser(True) ## line 143 ##
> sage: 2^3 ## line 144 ##
> 8
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 146 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 168 ##
> sage: shell = get_test_shell() ## line 169 ##
> sage: shell.run_cell('?') ## line 170 ##
> Welcome to Sage 9.0!
> 
> To view the Sage tutorial in your web browser, type "tutorial()", and
> to view the (very detailed) Sage reference manual, type "manual()".
> For help on any Sage function, for example "matrix_plot", type
> "matrix_plot?" to see a help message, type "help(matrix_plot)" to see
> a very similar message, type "browse_sage_doc(matrix_plot)" to view a
> help message in a web browser, and type "matrix_plot??" to look at the
> function's source code.
> 
> (When you type something like "matrix_plot?", "help(matrix_plot)", or
> "matrix_plot??", Sage may start a paging program to display the
> requested message. Type a space to scroll to the next page, type "h"
> to get help on the paging program, and type "q" to quit it and return
> to the "sage:" prompt.)
> 
> For license information for Sage and its components, read the file
> "COPYING.txt" in the top-level directory of the Sage installation,
> or type "license()".
> 
> To enter Python's interactive online help utility, type "python_help()".
> To get help on a Python function, module or package, type "help(MODULE)" or
> "python_help(MODULE)".
> sage: shell.quit() ## line 172 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 173 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 185 ##
> sage: shell = get_test_shell() ## line 186 ##
> sage: shell.system_raw('false') ## line 187 ##
> sage: shell.user_ns['_exit_code'] > 0 ## line 188 ##
> True
> sage: shell.system_raw('true') ## line 190 ##
> sage: shell.user_ns['_exit_code'] ## line 191 ##
> 0
> sage: shell.system_raw('R --version') ## line 193 ##
> R version 4.0.1 (2020-06-06) -- "See Things Now"
> Copyright (C) 2020 The R Foundation for Statistical Computing
> Platform: x86_64-pc-linux-gnu (64-bit)
> 
> R is free software and comes with ABSOLUTELY NO WARRANTY.
> You are welcome to redistribute it under the terms of the
> GNU General Public License versions 2 or 3.
> For more information about these matters see
> https://www.gnu.org/licenses/.
> 
> sage: shell.user_ns['_exit_code'] ## line 195 ##
> 0
> sage: shell.quit() ## line 197 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 198 ##
> 0
> sage: from sage.repl.interpreter import SageNotebookInteractiveShell ## line 215 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 218 ##
> 0
> sage: from sage.repl.interpreter import SageNotebookInteractiveShell ## line 226 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 228 ##
> 0
> sage: from sage.repl.interpreter import SageTerminalInteractiveShell ## line 243 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 246 ##
> 0
> sage: from sage.repl.interpreter import SageTerminalInteractiveShell ## line 254 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 256 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 272 ##
> sage: shell = get_test_shell();  shell ## line 273 ##
> <sage.repl.interpreter.SageTestShell object at 0x7fad9f49c190>
> sage: shell.quit() ## line 275 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 276 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 284 ##
> sage: shell = get_test_shell();  shell ## line 285 ##
> <sage.repl.interpreter.SageTestShell object at 0x7fad9f49c190>
> sage: shell.quit() ## line 287 ##
> sage: shell.init_display_formatter() ## line 288 ##
> sage: shell.quit() ## line 289 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 290 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 310 ##
> sage: from sage.repl.rich_output import get_display_manager ## line 311 ##
> sage: get_display_manager() ## line 312 ##
> The Sage display manager using the doctest backend
> sage: shell = get_test_shell() ## line 315 ##
> sage: get_display_manager() ## line 316 ##
> The Sage display manager using the IPython command line backend
> sage: shell.quit() ## line 319 ##
> sage: get_display_manager() ## line 320 ##
> The Sage display manager using the doctest backend
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 322 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 331 ##
> sage: shell = get_test_shell() ## line 332 ##
> sage: shell.quit() ## line 333 ##
> sage: shell._restart() ## line 334 ##
> sage: shell.quit() ## line 335 ##
> sage: from sage.repl.rich_output import get_display_manager ## line 336 ##
> sage: get_display_manager() ## line 337 ##
> The Sage display manager using the doctest backend
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 339 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 353 ##
> sage: shell = get_test_shell() ## line 354 ##
> sage: rc = shell.run_cell('2^50') ## line 355 ##
> 1125899906842624
> sage: rc is None ## line 357 ##
> True
> sage: shell.quit() ## line 359 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 360 ##
> 0
> sage: from sage.repl.interpreter import SagePreparseTransformer ## line 373 ##
> sage: spt = SagePreparseTransformer ## line 374 ##
> sage: spt(['1+1r+2.3^2.3r']) ## line 375 ##
> ["Integer(1)+1+RealNumber('2.3')**2.3"]
> sage: preparser(False) ## line 377 ##
> sage: spt(['2.3^2']) ## line 378 ##
> ['2.3^2']
> sage: preparser(True) ## line 386 ##
> sage: bad_syntax = "R.<t> = QQ{]" ## line 387 ##
> sage: preparse(bad_syntax) ## line 388 ##
> sage: from sage.repl.interpreter import get_test_shell ## line 392 ##
> sage: shell = get_test_shell() ## line 393 ##
> sage: shell.run_cell(bad_syntax) ## line 394 ##
>   File "<string>", line unknown
> SyntaxError: Mismatched ']'
> 
> sage: shell.quit() ## line 398 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 399 ##
> 0
> sage: from sage.repl.interpreter import interface_shell_embed ## line 432 ##
> sage: shell = interface_shell_embed(maxima) ## line 433 ##
> sage: ift = shell.prefilter_manager.transformers[0] ## line 434 ##
> sage: ift.temporary_objects ## line 435 ##
> set()
> sage: ift._sage_import_re.findall('sage(a) + maxima(b)') ## line 437 ##
> ['sage(', 'maxima(']
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 439 ##
> 0
> sage: from sage.repl.interpreter import interface_shell_embed, InterfaceShellTransformer ## line 459 ##
> sage: shell = interface_shell_embed(maxima) ## line 460 ##
> sage: ift = InterfaceShellTransformer(shell=shell, config=shell.config, prefilter_manager=shell.prefilter_manager) ## line 461 ##
> sage: ift.shell.ex('a = 3') ## line 462 ##
> sage: ift.preparse_imports_from_sage('2 + sage(a)') ## line 463 ##
> '2 +  sage0 '
> sage: maxima.eval('sage0') ## line 465 ##
> '3'
> sage: ift.preparse_imports_from_sage('2 + maxima(a)') # maxima calls set_seed on startup which is why 'sage0' will becomes 'sage4' and not just 'sage1' ## line 467 ##
> '2 +  sage4 '
> sage: ift.preparse_imports_from_sage('2 + gap(a)') ## line 469 ##
> '2 + gap(a)'
> sage: shell = interface_shell_embed(gap) ## line 475 ##
> sage: shell.user_ns = locals() ## line 476 ##
> sage: ift = InterfaceShellTransformer(shell=shell, config=shell.config, prefilter_manager=shell.prefilter_manager) ## line 477 ##
> sage: line = '2 + sage((1+2)*gap(-(5-3)^2).sage()) - gap(1+(2-1))' ## line 478 ##
> sage: line = ift.preparse_imports_from_sage(line) ## line 479 ##
> sage: gap.eval(line) ## line 480 ##
> '-12'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 482 ##
> 0
> sage: from sage.repl.interpreter import interface_shell_embed, InterfaceShellTransformer ## line 511 ##
> sage: shell = interface_shell_embed(maxima) ## line 512 ##
> sage: ift = InterfaceShellTransformer(shell=shell, config=shell.config, prefilter_manager=shell.prefilter_manager) ## line 513 ##
> sage: ift.transform('2+2', False)   # note: output contains triple quotation marks ## line 514 ##
> 'sage.misc.all.logstr(r"""4""")'
> sage: ift.shell.ex('a = 4') ## line 516 ##
> sage: ift.transform(r'sage(a)+4', False) ## line 517 ##
> 'sage.misc.all.logstr(r"""8""")'
> sage: ift.temporary_objects ## line 519 ##
> set()
> sage: shell = interface_shell_embed(gap) ## line 521 ##
> sage: ift = InterfaceShellTransformer(shell=shell, config=shell.config, prefilter_manager=shell.prefilter_manager) ## line 522 ##
> sage: ift.transform('2+2', False) ## line 523 ##
> 'sage.misc.all.logstr(r"""4""")'
> sage: shell = interface_shell_embed(gap) ## line 531 ##
> sage: ift = InterfaceShellTransformer(shell=shell, config=shell.config, prefilter_manager=shell.prefilter_manager) ## line 532 ##
> sage: ift.transform(r'Print("  -\n\\\\-  ");', False) ## line 533 ##
> 'sage.misc.all.logstr(r"""  -\n\\\\-""")'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 540 ##
> 0
> sage: from sage.repl.interpreter import interface_shell_embed ## line 566 ##
> sage: shell = interface_shell_embed(gap) ## line 567 ##
> sage: shell.run_cell('List( [1..10], IsPrime )') ## line 568 ##
> [ false, true, true, false, true, false, true, false, false, false ]
> <ExecutionResult object at 7fad9e7b4310, execution_count=None error_before_exec=None error_in_exec=None info=<ExecutionInfo object at 7fad9e7ed550, raw_cell="List( [1..10], IsPrime )" store_history=False silent=False shell_futures=True> result=[ false, true, true, false, true, false, true, false, false, false ]>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 571 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 601 ##
> sage: shell = get_test_shell(); shell ## line 602 ##
> <sage.repl.interpreter.SageTestShell object at 0x7fad9f49c190>
> sage: shell.parent.shell_class ## line 604 ##
> <class 'sage.repl.interpreter.SageTestShell'>
> sage: shell.parent.test_shell ## line 606 ##
> True
> sage: shell.quit() ## line 608 ##
> sage: from sage.tests.cmdline import test_executable ## line 614 ##
> sage: cmd = 'from sage.repl.interpreter import get_test_shell; shell = get_test_shell()' ## line 615 ##
> sage: (out, err, ret) = test_executable(["sage", "-c", cmd]) ## line 616 ##
> sage: out + err ## line 617 ##
> 'free(): invalid pointer\n------------------------------------------------------------------------\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7f440e2f297b]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7f440e2f2b49]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7f440e2f551d]\n/lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7f440e674800]\n/lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7f440e674781]\n/lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7f440e65e55b]\n/lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7f440e6b7038]\n/lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7f440e6be3da]\n/lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7f440e6bfdcc]\n/usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7f43cff89e70]\n/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7f43c56070a9]\npython3[0x5c02c2]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(PyObject_Call+0x1f7)[0x5f1847]\npython3[0x64b8e0]\npython3(Py_FinalizeEx+0x44)[0x677a94]\npython3(Py_RunMain+0x329)[0x6aea19]\npython3(Py_BytesMain+0x29)[0x6aec89]\n/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7f440e65fe0b]\npython3(_start+0x2a)[0x5f59da]\n------------------------------------------------------------------------\nAttaching gdb to process id 6830.\nGNU gdb (Debian 9.2-1) 9.2\nCopyright (C) 2020 Free Software Foundation, Inc.\nLicense GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.\nType "show copying" and "show warranty" for details.\nThis GDB was configured as "x86_64-linux-gnu".\nType "show configuration" for configuration details.\nFor bug reporting instructions, please see:\n<http://www.gnu.org/software/gdb/bugs/>.\nFind the GDB manual and other documentation resources online at:\n    <http://www.gnu.org/software/gdb/documentation/>.\n\nFor help, type "help".\nType "apropos word" to search for commands related to "word".\n[New LWP 6839]\n[Thread debugging using libthread_db enabled]\nUsing host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".\n0x00007f440e703c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6\n\nStack backtrace\n---------------\nNo symbol table info available.\n#1  0x00007f440e2f2a44 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#2  0x00007f440e2f2b86 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#3  0x00007f440e2f551d in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#4  <signal handler called>\nNo symbol table info available.\n#5  0x00007f440e674781 in raise () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#6  0x00007f440e65e55b in abort () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#7  0x00007f440e6b7038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#8  0x00007f440e6be3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#9  0x00007f440e6bfdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#10 0x00007f43cff89e70 in _fmpz_cleanup_mpz_content ()\n   from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so\nNo symbol table info available.\n#11 0x00007f43c56070a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack\n    (__pyx_self=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1202\n        __pyx_r = 0x0\n        __pyx_r = <optimized out>\n#12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (\n    __pyx_self=<optimized out>, unused=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1185\n        __pyx_r = 0x0\n#13 0x00000000005c02c2 in ?? ()\nNo symbol table info available.\n#14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#15 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#16 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#18 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#19 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#20 0x00000000005f1847 in PyObject_Call ()\nNo symbol table info available.\n#21 0x000000000064b8e0 in ?? ()\nNo symbol table info available.\n#22 0x0000000000677a94 in Py_FinalizeEx ()\nNo symbol table info available.\n#23 0x00000000006aea19 in Py_RunMain ()\nNo symbol table info available.\n#24 0x00000000006aec89 in Py_BytesMain ()\nNo symbol table info available.\n#25 0x00007f440e65fe0b in __libc_start_main ()\n   from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#26 0x00000000005f59da in _start ()\nNo symbol table info available.\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n\n\nCython backtrace\n----------------\n#0  0x00007f440e703bc0 in waitpid ()\n#1  0x0000000000000000 in ?? ()\n#2  0x0000000000000000 in ?? ()\n#3  0x0000000000000000 in ?? ()\n#4  0x0000000000000000 in ?? ()\n#5  0x00007f440e674640 in raise ()\n#6  0x00007f440e65e434 in abort ()\n#7  0x0000000000000000 in ?? ()\n#8  0x0000000000000000 in ?? ()\n#9  0x0000000000000000 in ?? ()\n#10 0x00007f440773cd00 in _fmpz_cleanup_mpz_content ()\n#11 0x00007f43c56070a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202\n#12 0x00007f43c56070a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38\n    33    cimport sage.libs.flint.padic\n    34    cimport sage.libs.flint.types\n    35    cimport sage.libs.flint.ulong_extras\n    36    \n    37    \n>   38    def free_flint_stack():\n    39        _fmpz_cleanup_mpz_content()\n#13 0x0000000000000000 in ?? ()\n#14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#16 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#19 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#20 0x00000000005f1650 in PyObject_Call ()\n#21 0x0000000000000000 in ?? ()\n#22 0x0000000000677a50 in Py_FinalizeEx ()\n#23 0x00000000006ae6f0 in Py_RunMain ()\n#24 0x00000000006aec60 in Py_BytesMain ()\n#25 0x00007f440e65fd20 in __libc_start_main ()\n#26 0x00000000005f59b0 in _start ()\n\n[Inferior 1 (process 6830) detached]\nSaved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_xk2cngk3.log\n------------------------------------------------------------------------\nUnhandled SIGABRT: An abort() occurred.\nThis probably occurred because a *compiled* module has a bug\nin it and is not properly wrapped with sig_on(), sig_off().\nPython will now terminate.\n------------------------------------------------------------------------\n/<<PKGBUILDDIR>>/sage/src/bin/sage-python: line 2:  6830 Aborted                 sage -python "$@"\n'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 619 ##
> 0
> sage: from sage.repl.interpreter import SageTerminalApp, SageCrashHandler ## line 649 ##
> sage: app = SageTerminalApp.instance() ## line 650 ##
> sage: sch = SageCrashHandler(app); sch ## line 651 ##
> <sage.repl.interpreter.SageCrashHandler object at 0x7fad9e7b4760>
> sage: sorted(sch.info.items()) ## line 653 ##
> [('app_name', 'Sage'),
>  ('bug_tracker', 'http://trac.sagemath.org'),
>  ('contact_email', 'sage-support at googlegroups.com'),
>  ('contact_name', 'sage-support'),
>  ('crash_report_fname', 'Crash_report_Sage.txt')]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 659 ##
> 0
> sage: from sage.misc.temporary_file import tmp_dir ## line 689 ##
> sage: from sage.repl.interpreter import SageTerminalApp ## line 690 ##
> sage: d = tmp_dir() ## line 691 ##
> sage: from IPython.paths import get_ipython_dir ## line 692 ##
> sage: IPYTHONDIR = get_ipython_dir() ## line 693 ##
> sage: os.environ['IPYTHONDIR'] = d ## line 694 ##
> sage: SageTerminalApp().load_config_file() ## line 695 ##
> sage: os.environ['IPYTHONDIR'] = IPYTHONDIR ## line 696 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 697 ##
> 0
> sage: from sage.repl.interpreter import SageTerminalApp ## line 715 ##
> sage: app = SageTerminalApp.instance() ## line 716 ##
> sage: app.shell ## line 717 ##
> <sage.repl.interpreter.SageTestShell object at 0x7fad9f49c190>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 719 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/quadratic_forms/quadratic_form__local_representation_conditions.py
>     [151 tests, 56.98 s]
> sage -t --long src/sage/repl/load.py
>     [42 tests, 1.24 s]
> sage -t --long src/sage/repl/ipython_extension.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=6838) failed:
> sage: import os, re ## line 36 ##
> sage: from sage.repl.interpreter import get_test_shell ## line 37 ##
> sage: from sage.misc.all import tmp_dir ## line 38 ##
> sage: shell = get_test_shell() ## line 39 ##
> sage: TMP = tmp_dir() ## line 40 ##
> sage: bool(re.search('/[0-9]+/', TMP)) ## line 46 ##
> True
> sage: tmp = os.path.join(TMP, 'run_cell.py') ## line 48 ##
> sage: with open(tmp, 'w') as f:
>     _ = f.write('a = 2\n') ## line 49 ##
> sage: shell.run_cell('%runfile '+tmp) ## line 51 ##
> sage: shell.run_cell('a') ## line 52 ##
> 2
> sage: shell.run_cell('%time 594.factor()') ## line 57 ##
> CPU times: user 359 µs, sys: 82 µs, total: 441 µs
> Wall time: 447 µs
> 2 * 3^3 * 11
> sage: shell.quit() ## line 61 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 62 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 85 ##
> sage: shell = get_test_shell() ## line 86 ##
> sage: shell.quit() ## line 91 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 92 ##
> 0
> sage: import os ## line 108 ##
> sage: from sage.repl.interpreter import get_test_shell ## line 109 ##
> sage: from sage.misc.all import tmp_dir ## line 110 ##
> sage: shell = get_test_shell() ## line 111 ##
> sage: tmp = os.path.join(tmp_dir(), 'run_cell.py') ## line 112 ##
> sage: with open(tmp, 'w') as f:
>     _ = f.write('a = 2\n') ## line 113 ##
> sage: shell.run_cell('%runfile '+tmp) ## line 115 ##
> sage: shell.run_cell('a') ## line 116 ##
> 2
> sage: shell.quit() ## line 118 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 119 ##
> 0
> sage: import os ## line 134 ##
> sage: from sage.repl.interpreter import get_test_shell ## line 135 ##
> sage: shell = get_test_shell() ## line 136 ##
> sage: tmp = os.path.normpath(os.path.join(SAGE_TMP, 'run_cell.py')) ## line 137 ##
> sage: with open(tmp, 'w') as f: _ = f.write('a = 2\n') ## line 138 ##
> sage: shell.run_cell('%attach ' + tmp) ## line 139 ##
> sage: shell.run_cell('a') ## line 140 ##
> 2
> sage: sleep(1)  # filesystem timestamp granularity ## line 142 ##
> sage: with open(tmp, 'w') as f: _ = f.write('a = 3\n') ## line 143 ##
> sage: shell.run_cell('from sage.repl.attach import reload_attached_files_if_modified') ## line 148 ##
> sage: shell.run_cell('reload_attached_files_if_modified()') ## line 149 ##
> ### reloading attached file run_cell.py modified at 08:36:45 ###
> sage: shell.run_cell('a') ## line 152 ##
> 3
> sage: shell.run_cell('detach(%r)'%tmp) ## line 154 ##
> sage: shell.run_cell('attached_files()') ## line 155 ##
> []
> sage: os.remove(tmp) ## line 157 ##
> sage: shell.quit() ## line 158 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 159 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 214 ##
> sage: shell = get_test_shell() ## line 215 ##
> sage: shell.run_cell('%display ascii_art') ## line 216 ##
> sage: shell.run_cell("i = var('i')") ## line 221 ##
> sage: shell.run_cell('sum(i^2*x^i, i, 0, 10)') ## line 222 ##
>      10       9       8       7       6       5       4      3      2    
> 100*x   + 81*x  + 64*x  + 49*x  + 36*x  + 25*x  + 16*x  + 9*x  + 4*x  + x
> sage: shell.run_cell('%display text plain') ## line 228 ##
> sage: shell.run_cell('%display plain')        # shortcut for "text plain" ## line 229 ##
> sage: shell.run_cell('sum(i^2*x^i, i, 0, 10)') ## line 230 ##
> 100*x^10 + 81*x^9 + 64*x^8 + 49*x^7 + 36*x^6 + 25*x^5 + 16*x^4 + 9*x^3 + 4*x^2 + x
> sage: shell.run_cell('%display ascii_art') ## line 236 ##
> sage: shell.run_cell('StandardTableaux(4).list()') ## line 237 ##
> [                                                                               
> [                                                                  1  4    1  3 
> [                 1  3  4    1  2  4    1  2  3    1  3    1  2    2       2    
> [   1  2  3  4,   2      ,   3      ,   4      ,   2  4,   3  4,   3   ,   4   ,
> 
>            1 ]
>    1  2    2 ]
>    3       3 ]
>    4   ,   4 ]
> sage: shell.run_cell('%display ascii_art 50') ## line 247 ##
> sage: shell.run_cell('StandardTableaux(4).list()') ## line 248 ##
> [                                               
> [                                               
> [                 1  3  4    1  2  4    1  2  3 
> [   1  2  3  4,   2      ,   3      ,   4      ,
> 
>                                            1 ]
>                    1  4    1  3    1  2    2 ]
>    1  3    1  2    2       2       3       3 ]
>    2  4,   3  4,   3   ,   4   ,   4   ,   4 ]
> sage: shell.run_cell('%display text latex') ## line 262 ##
> sage: shell.run_cell('1/2') ## line 263 ##
> \newcommand{\Bold}[1]{\mathbf{#1}}\frac{1}{2}
> sage: shell.run_cell('%display default') ## line 268 ##
> sage: shell.run_cell('%display graphics vector') ## line 273 ##
> sage: shell.run_cell('%display invalid_mode') ## line 277 ##
> value must be unset (None) or one of ('plain', 'ascii_art', 'unicode_art', 'latex'), got invalid_mode
> sage: shell.quit() ## line 279 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 280 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 350 ##
> sage: shell = get_test_shell() ## line 351 ##
> sage: shell.run_cell('''
> %%cython
> def f():
>     print('test')
> ''') ## line 352 ##
> sage: f() ## line 357 ##
> test
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 359 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 383 ##
> sage: shell = get_test_shell() ## line 384 ##
> sage: shell.run_cell('''
> %%fortran
> C FILE: FIB1.F
>       SUBROUTINE FIB(A,N)
> C
> C     CALCULATE FIRST N FIBONACCI NUMBERS
> C
>       INTEGER N
>       REAL*8 A(N)
>       DO I=1,N
>          IF (I.EQ.1) THEN
>             A(I) = 0.0D0
>          ELSEIF (I.EQ.2) THEN
>             A(I) = 1.0D0
>          ELSE
>             A(I) = A(I-1) + A(I-2)
>          ENDIF
>       ENDDO
>       END
> C END FILE FIB1.F
> ''') ## line 385 ##
> sage: fib ## line 406 ##
> <fortran object>
> sage: from numpy import array ## line 408 ##
> sage: a = array(range(10), dtype=float) ## line 409 ##
> sage: fib(a, 10) ## line 410 ##
> sage: a ## line 411 ##
> array([ 0.,  1.,  1.,  2.,  3.,  5.,  8., 13., 21., 34.])
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 413 ##
> 0
> sage: from sage.repl.ipython_extension import SageCustomizations ## line 470 ##
> sage: SageCustomizations.all_globals() ## line 471 ##
> <module 'sage.all_cmdline' from '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/all_cmdline.py'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 473 ##
> 0
> sage: from sage.repl.ipython_extension import SageJupyterCustomizations ## line 526 ##
> sage: SageJupyterCustomizations.all_globals() ## line 527 ##
> <module 'sage.repl.ipython_kernel.all_jupyter' from '/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/ipython_kernel/all_jupyter.py'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 529 ##
> 0
> sage: from sage.repl.ipython_extension import run_once ## line 544 ##
> sage: @run_once
> def foo(work):
>     if work:
>         return 'foo worked'
>     raise RuntimeError("foo didn't work") ## line 545 ##
> sage: foo(False) ## line 550 ##
> sage: foo(True) ## line 554 ##
> 'foo worked'
> sage: foo(False) ## line 556 ##
> sage: foo(True) ## line 557 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 558 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/repl/prompts.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/rich_output/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/rich_output/backend_base.py
>     [101 tests, 0.04 s]
> sage -t --long src/sage/repl/preparse.py
>     [221 tests, 1.88 s]
> sage -t --long src/sage/repl/rich_output/backend_emacs.py
>     [15 tests, 0.01 s]
> sage -t --long src/sage/repl/rich_output/backend_doctest.py
>     [58 tests, 2.06 s]
> sage -t --long src/sage/repl/rich_output/backend_sagenb.py
>     [72 tests, 0.46 s]
> sage -t --long src/sage/repl/rich_output/backend_test.py
>     [37 tests, 0.01 s]
> sage -t --long src/sage/repl/rich_output/buffer.py
>     [49 tests, 0.02 s]
> sage -t --long src/sage/repl/rich_output/display_manager.py
>     [93 tests, 0.51 s]
> sage -t --long src/sage/repl/rich_output/output_basic.py
>     [53 tests, 0.02 s]
> sage -t --long src/sage/repl/rich_output/output_browser.py
>     [12 tests, 0.01 s]
> sage -t --long src/sage/repl/rich_output/output_catalog.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/rich_output/output_graphics.py
>     [38 tests, 0.02 s]
> sage -t --long src/sage/repl/rich_output/output_graphics3d.py
>     [46 tests, 0.02 s]
> sage -t --long src/sage/repl/rich_output/output_video.py
>     [25 tests, 0.01 s]
> sage -t --long src/sage/repl/rich_output/preferences.py
>     [68 tests, 0.04 s]
> sage -t --long src/sage/repl/rich_output/pretty_print.py
>     [30 tests, 1.75 s]
> sage -t --long src/sage/repl/user_globals.py
>     [36 tests, 0.03 s]
> sage -t --long src/sage/rings/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/algebraic_closure_finite_field.py
>     [209 tests, 2.76 s]
> sage -t --long src/sage/rings/all.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/rings/asymptotic/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/asymptotic/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/repl/ipython_tests.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=6940) failed:
> sage: from sage.repl.interpreter import get_test_shell ## line 7 ##
> sage: shell = get_test_shell() ## line 8 ##
> sage: shell.run_cell(u'from sage.repl.ipython_tests import dummy') ## line 9 ##
> sage: shell.run_cell(u'%pinfo dummy') ## line 10 ##
> Signature:      dummy(argument, optional=None)
> Docstring:     
>    Dummy Docstring Title
> 
>    Dummy docstring explanation.
> 
>    INPUT:
> 
>    * "argument" -- anything. Dummy argument.
> 
>    * "optional" -- anything (optional). Dummy optional.
> 
>    EXAMPLES:
> 
>       sage: from sage.repl.ipython_tests import dummy
>       sage: dummy(1)
>       'Source code would be here'
> Init docstring: Initialize self.  See help(type(self)) for accurate signature.
> File:           /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/ipython_tests.py
> Type:           function
> 
> sage: from sage.repl.interpreter import get_test_shell ## line 32 ##
> sage: shell = get_test_shell() ## line 33 ##
> sage: shell.run_cell(u'from sage.tests.stl_vector import stl_int_vector') ## line 34 ##
> sage: shell.run_cell(u'%pinfo stl_int_vector') ## line 35 ##
> Init signature: stl_int_vector(self, /, *args, **kwargs)
> Docstring:     
>    Example class wrapping an STL vector
> 
>    EXAMPLES:
> 
>       sage: from sage.tests.stl_vector import stl_int_vector
>       sage: v = stl_int_vector()
> Init docstring: Initialize self.  See help(type(self)) for accurate signature.
> File:           /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tests/stl_vector.pyx
> Type:           type
> Subclasses:     
> 
> sage: from sage.repl.interpreter import get_test_shell ## line 49 ##
> sage: shell = get_test_shell() ## line 50 ##
> sage: shell.run_cell(u'%pinfo r.lm') ## line 51 ##
> Signature:       r.lm(*args, **kwds)
> Type:            RFunction
> String form:     lm
> File:            /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/interfaces/r.py
> Docstring:      
> title
> *****
> 
> Fitting Linear Models
> 
> 
> name
> ****
> 
> lm
> 
> 
> alias
> *****
> 
> lm
> 
> 
> concept
> *******
> 
> regression
> 
> 
> keyword
> *******
> 
> regression
> 
> 
> description
> ***********
> 
>       lm  is used to fit linear models.
> 
>    It can be used to carry out regression, single stratum analysis of
>    variance and analysis of covariance (although  aov  may provide a
>    more convenient interface for these).
> 
> 
> usage
> *****
> 
>    lm(formula, data, subset, weights, na.action,
>       method = "qr", model = TRUE, x = FALSE, y = FALSE, qr = TRUE,
>       singular.ok = TRUE, contrasts = NULL, offset,  )
> 
> 
> arguments
> *********
> 
>    formula an object of class  " formula "  (or one that
>       can be coerced to that class): a symbolic description of the
>       model to be fitted.  The details of model specification are
>       given under  Details .
> 
>    data an optional data frame, list or environment (or object
>       coercible by  as.data.frame  to a data frame) containing the
>       variables in the model.  If not found in  data , the variables
>       are taken from  environment(formula) , typically the environment
>       from which  lm  is called.
> 
>    subset an optional vector specifying a subset of observations
>       to be used in the fitting process.
> 
>    weights an optional vector of weights to be used in the fitting
>       process.  Should be  NULL  or a numeric vector. If non-NULL,
>       weighted least squares is used with weights
> 
>          weights  (that is, minimizing  sum(w*e^2) ); otherwise
> 
>       ordinary least squares is used.  See also  Details ,
> 
>    na.action a function which indicates what should happen
>       when the data contain  NA s.  The default is set by the
>       na.action  setting of  options , and is
> 
>          na.fail  if that is unset.  The  factory-fresh
> 
>       default is  na.omit .  Another possible value is
>          NULL , no action.  Value  na.exclude  can be useful.
> 
>    method the method to be used; for fitting, currently only
>          method = "qr"  is supported;  method = "model.frame"  returns
> 
>       the model frame (the same as with  model = TRUE , see below).
> 
>    model, x, y, qr logicals.  If  TRUE  the corresponding
>       components of the fit (the model frame, the model matrix, the
>       response, the QR decomposition) are returned.
> 
>    singular.ok logical. If  FALSE  (the default in S but
>       not in  ) a singular fit is an error.
> 
>    contrasts an optional list. See the  contrasts.arg
>       of  model.matrix.default .
> 
>    offset this can be used to specify an  a priori  known
>       component to be included in the linear predictor during fitting.
>       This should be  NULL  or a numeric vector or matrix of extents
>       matching those of the response.  One or more  offset  terms can
>       be included in the formula instead or as well, and if more than
>       one are specified their sum is used.  See  model.offset .
> 
>    additional arguments to be passed to the low level
>       regression fitting functions (see below).
> 
> 
> details
> *******
> 
>    Models for  lm  are specified symbolically.  A typical model has
>    the form  response ~ terms  where  response  is the (numeric)
>    response vector and  terms  is a series of terms which specifies a
>    linear predictor for  response .  A terms specification of the form
> 
>       first + second  indicates all the terms in  first  together
> 
>    with all the terms in  second  with duplicates removed.  A
>    specification of the form  first:second  indicates the set of terms
>    obtained by taking the interactions of all terms in  first with all
>    terms in  second .  The specification  first*second indicates the
>    cross  of  first  and  second .  This is the same as  first +
>    second + first:second .
> 
>    If the formula includes an  offset , this is evaluated and
>    subtracted from the response.
> 
>    If  response  is a matrix a linear model is fitted separately by
>    least-squares to each column of the matrix.
> 
>    See  model.matrix  for some further details.  The terms in the
>    formula will be re-ordered so that main effects come first,
>    followed by the interactions, all second-order, all third-order and
>    so on: to avoid this pass a  terms  object as the formula (see
> 
>       aov  and  demo(glm.vr)  for an example).
> 
>    A formula has an implied intercept term.  To remove this use either
>       y ~ x - 1  or  y ~ 0 + x .  See  formula  for
> 
>    more details of allowed formulae.
> 
>    Non- NULL   weights  can be used to indicate that different
>    observations have different variances (with the values in
> 
>       weights  being inversely proportional to the variances); or
> 
>    equivalently, when the elements of  weights  are positive integers
>    w_i , that each response  y_i  is the mean of
> 
>       w_i  unit-weight observations (including the case that there
> 
>    are  w_i  observations equal to  y_i  and the data have been
>    summarized). However, in the latter case, notice that within-group
>    variation is not used.  Therefore, the sigma estimate and residual
>    degrees of freedom may be suboptimal; in the case of replication
>    weights, even wrong. Hence, standard errors and analysis of
>    variance tables should be treated with care.
> 
>       lm  calls the lower level functions  lm.fit , etc,
> 
>    see below, for the actual numerical computations.  For programming
>    only, you may consider doing likewise.
> 
>    All of  weights ,  subset  and  offset  are evaluated in the same
>    way as variables in  formula , that is first in
> 
>       data  and then in the environment of  formula .
> 
> 
> value
> *****
> 
>       lm  returns an object of  class   "lm"  or for
> 
>    multiple responses of class  c("mlm", "lm") .
> 
>    The functions  summary  and  anova  are used to obtain and print a
>    summary and analysis of variance table of the results.  The generic
>    accessor functions  coefficients ,
> 
>       effects ,  fitted.values  and  residuals  extract
> 
>    various useful features of the value returned by  lm .
> 
>    An object of class  "lm"  is a list containing at least the
>    following components:
> 
>       coefficients a named vector of coefficients residuals the
>       residuals, that is response minus fitted values. fitted.values
>       the fitted mean values. rank the numeric rank of the fitted
>       linear model. weights (only for weighted fits) the specified
>       weights. df.residual the residual degrees of freedom. call the
>       matched call. terms the  terms  object used. contrasts (only
>       where relevant) the contrasts used. xlevels (only where
>       relevant) a record of the levels of the
> 
>          factors used in fitting.
> 
>       offset the offset used (missing if none were used). y if
>       requested, the response used. x if requested, the model matrix
>       used. model if requested (the default), the model frame used.
>       na.action (where relevant) information returned by
> 
>          model.frame  on the special handling of  NA s.
> 
>    In addition, non-null fits will have components  assign ,
>       effects  and (unless not requested)  qr  relating to the linear
> 
>    fit, for use by extractor functions such as  summary  and
>       effects .
> 
> 
> section
> *******
> 
> Using time series
>    Considerable care is needed when using  lm  with time series.
> 
>    Unless  na.action = NULL , the time series attributes are stripped
>    from the variables before the regression is done.  (This is
>    necessary as omitting  NA s would invalidate the time series
>    attributes, and if  NA s are omitted in the middle of the series
>    the result would no longer be a regular time series.)
> 
>    Even if the time series attributes are retained, they are not used
>    to line up series, so that the time shift of a lagged or
>    differenced regressor would be ignored.  It is good practice to
>    prepare a
> 
>       data  argument by  ts.intersect ( , dframe = TRUE) ,
> 
>    then apply a suitable  na.action  to that data frame and call
>       lm  with  na.action = NULL  so that residuals and fitted
> 
>    values are time series.
> 
> 
> note
> ****
> 
>    Offsets specified by  offset  will not be included in predictions
>    by  predict.lm , whereas those specified by an offset term in the
>    formula will be.
> 
> 
> author
> ******
> 
>    The design was inspired by the S function of the same name
>    described in Chambers (1992).  The implementation of model formula
>    by Ross Ihaka was based on Wilkinson & Rogers (1973).
> 
> 
> references
> **********
> 
>    Chambers, J. M. (1992)
>       Linear models.
> 
>    Chapter 4 of  Statistical Models in S eds J. M. Chambers and T. J.
>    Hastie, Wadsworth & Brooks/Cole.
> 
>    Wilkinson, G. N. and Rogers, C. E. (1973). Symbolic descriptions of
>    factorial models for analysis of variance.
> 
>       Applied Statistics ,  22 , 392--399.
>       Sexpr[results=rd,stage=build]{tools:::Rd_expr_doi("#1")}
>       10.2307/2346786 text doi: 10.2307/2346786 (URL:
>       https://doi.org/10.2307/2346786) latex doi: nobreakspace{}
>       https://doi.org/10.2307/2346786 10.2307 slash{} 2346786 doi:
>       https://doi.org/10.2307/2346786 10.2307/2346786 .
> 
> 
> seealso
> *******
> 
>       summary.lm  for summaries and  anova.lm  for
> 
>    the ANOVA table;  aov  for a different interface.
> 
>    The generic functions  coef ,  effects ,
>       residuals ,  fitted ,  vcov .
> 
>       predict.lm  (via  predict ) for prediction,
> 
>    including confidence and prediction intervals;
>       confint  for confidence intervals of  parameters .
> 
>       lm.influence  for regression diagnostics, and glm  for
>       generalized  linear models.
> 
>    The underlying low level functions,
>       lm.fit  for plain, and  lm.wfit  for weighted
> 
>    regression fitting.
> 
>    More  lm()  examples are available e.g., in
>       anscombe ,  attitude ,  freeny , LifeCycleSavings ,  longley ,
>       stackloss ,  swiss .
> 
>       biglm  in package
>       href{https://CRAN.R-project.org/package=#1}{pkg{#1}} biglm
>       https://CRAN.R-project.org/package=biglm biglm  for an
>       alternative
> 
>    way to fit linear models to large datasets (especially those with
>    many cases).
> 
> 
> examples
> ********
> 
>    require(graphics)
> 
>    ## Annette Dobson (1990) "An Introduction to Generalized Linear
>    Models". ## Page 9: Plant Weight Data. ctl <-
>    c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14) trt <-
>    c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69) group <- gl(2,
>    10, 20, labels = c("Ctl","Trt")) weight <- c(ctl, trt) lm.D9 <-
>    lm(weight ~ group) lm.D90 <- lm(weight ~ group - 1) # omitting
>    intercept
> 
>    anova(lm.D9) summary(lm.D90)
> 
>    opar <- par(mfrow = c(2,2), oma = c(0, 0, 1.1, 0)) plot(lm.D9, las
>    = 1)      # Residuals, Fitted, ... par(opar)
> 
>    ## model frame : stopifnot(identical(lm(weight ~ group, method =
>    "model.frame"),
> 
>       model.frame(lm.D9)))
> 
>    ### less simple examples in "See Also" above
> Class docstring:
>    A Function in the R interface.
> 
>    INPUT:
> 
>    * parent -- the R interface
> 
>    * name -- the name of the function for Python
> 
>    * r_name -- the name of the function in R itself (which can have
>      dots in it)
> 
>    EXAMPLES:
> 
>       sage: length = r.length
>       sage: type(length)
>       <class 'sage.interfaces.r.RFunction'>
>       sage: loads(dumps(length))
>       length
> Init docstring: 
>    A Function in the R interface.
> 
>    INPUT:
> 
>    * parent -- the R interface
> 
>    * name -- the name of the function for Python
> 
>    * r_name -- the name of the function in R itself (which can have
>      dots in it)
> 
>    EXAMPLES:
> 
>       sage: length = r.length
>       sage: type(length)
>       <class 'sage.interfaces.r.RFunction'>
>       sage: loads(dumps(length))
>       length
> Call docstring: 
>    EXAMPLES:
> 
>       sage: length = r.length
>       sage: length([1,2,3])
>       [1] 3
> 
> sage: from sage.repl.interpreter import get_test_shell ## line 66 ##
> sage: shell = get_test_shell() ## line 67 ##
> sage: shell.run_cell(u'from sage.repl.ipython_tests import dummy') ## line 68 ##
> sage: shell.run_cell(u'%pinfo2 dummy') ## line 69 ##
> Signature: dummy(argument, optional=None)
> Docstring:
>    Dummy Docstring Title
> 
>    Dummy docstring explanation.
> 
>    INPUT:
> 
>    * "argument" -- anything. Dummy argument.
> 
>    * "optional" -- anything (optional). Dummy optional.
> 
>    EXAMPLES:
> 
>       sage: from sage.repl.ipython_tests import dummy
>       sage: dummy(1)
>       'Source code would be here'
> Source:   
> def dummy(argument, optional=None):
>     """
>     Dummy Docstring Title
> 
>     Dummy docstring explanation.
> 
>     INPUT:
> 
>     - ``argument`` -- anything. Dummy argument.
> 
>     - ``optional`` -- anything (optional). Dummy optional.
> 
>     EXAMPLES::
> 
>         sage: from sage.repl.ipython_tests import dummy
>         sage: dummy(1)
>         'Source code would be here' 
>     """
>     return 'Source code would be here'
> File:      /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/repl/ipython_tests.py
> Type:      function
> 
> sage: from sage.repl.interpreter import get_test_shell ## line 95 ##
> sage: shell = get_test_shell() ## line 96 ##
> sage: shell.run_cell(u'from sage.tests.stl_vector import stl_int_vector') ## line 97 ##
> sage: shell.run_cell(u'%pinfo2 stl_int_vector') ## line 98 ##
> Init signature: stl_int_vector(self, /, *args, **kwargs)
> Docstring:     
>    Example class wrapping an STL vector
> 
>    EXAMPLES:
> 
>       sage: from sage.tests.stl_vector import stl_int_vector
>       sage: v = stl_int_vector()
> Source:        
> cdef class stl_int_vector(SageObject):
>     """
>     Example class wrapping an STL vector
> 
>     EXAMPLES::
> 
>         sage: from sage.tests.stl_vector import stl_int_vector
>         sage: v = stl_int_vector()
>     """
> 
>     cdef vector[int] *data
>     cdef string *name
> 
>     def __cinit__(self):
>         """
>         The Cython constructor.
> 
>         EXAMPLES::
> 
>             sage: from sage.tests.stl_vector import stl_int_vector
>             sage: v = stl_int_vector()   # indirect doctest
>             sage: TestSuite(v)
>             Test suite for A vector of integers
>             vector<int>:
>              data[0] = 123
>              data[1] = 456
>         """
>         self.data = new vector[int]()
>         self.name = new string(<char*>"A vector of integers\n")
>         self.data.push_back(123)
>         self.data.push_back(456)
> 
>     def __dealloc__(self):
>         """
>         The Cython destructor.
> 
>         EXAMPLES::
> 
>             sage: from sage.tests.stl_vector import stl_int_vector
>             sage: v = stl_int_vector()   # indirect doctest
>         """
>         del self.data
>         del self.name
> 
>     def __getitem__(self, int i):
>         """
>         Return the ``i``-th element.
> 
>         EXAMPLES::
> 
>             sage: from sage.tests.stl_vector import stl_int_vector
>             sage: v = stl_int_vector()
>             sage: v[1]
>             456
>         """
>         assert 0 <= i < self.data.size()
>         return self.data.at(i)
> 
>     def __repr__(self):
>         """
>         Return a string representation.
> 
>         EXAMPLES::
> 
>             sage: from sage.tests.stl_vector import stl_int_vector
>             sage: v = stl_int_vector()
>             sage: v
>             A vector of integers
>             vector<int>:
>              data[0] = 123
>              data[1] = 456
>         """
>         s = char_to_str(self.name.c_str())
>         s += 'vector<int>:\n'
>         for i in range(self.data.size()):
>             s += ' data[' + str(i) + '] = ' + str(self.data.at(i)) + '\n'
>         return s.strip()
> 
>     cpdef sum(self):
>         """
>         Add the elements.
> 
>         EXAMPLES::
> 
>             sage: from sage.tests.stl_vector import stl_int_vector
>             sage: v = stl_int_vector()
>             sage: v.sum()
>             579
>         """
>         cdef Integer accumulator = Integer(0)
>         cdef vector[int].iterator i = self.data.begin()
>         sig_on()
>         while i != self.data.end():
>             mpz_add_ui(accumulator.value, accumulator.value, <int>(i[0]))
>             i += 1
>         sig_off()
>         return accumulator
> 
>     def __richcmp__(left, stl_int_vector right, int op):
>         """
>         Compare with ``other``.
> 
>         EXAMPLES::
> 
>             sage: from sage.tests.stl_vector import stl_int_vector
>             sage: u = stl_int_vector()
>             sage: v = stl_int_vector()
>             sage: u == v
>             True
>         """
>         cdef stl_int_vector lhs = left
>         cdef stl_int_vector rhs = right
> 
>         lx = lhs.data.size()
>         rx = rhs.data.size()
>         if lx != rx:
>             return richcmp_not_equal(lx, rx, op)
> 
>         cdef vector[int].iterator lhs_iter = lhs.data.begin()
>         cdef vector[int].iterator rhs_iter = rhs.data.begin()
>         sig_on()
>         try:
>             while lhs_iter != lhs.data.end():
>                 left_i = <int>(lhs_iter[0])
>                 right_i = <int>(rhs_iter[0])
>                 if left_i != right_i:
>                     return richcmp_not_equal(left_i, right_i, op)
>                 lhs_iter += 1
>                 rhs_iter += 1
>         finally:
>             sig_off()
>         return rich_to_bool(op, 0)
> File:           /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/tests/stl_vector.pyx
> Type:           type
> Subclasses:     
> 
> sage: from sage.repl.interpreter import get_test_shell ## line 125 ##
> sage: shell = get_test_shell() ## line 126 ##
> sage: shell.run_cell(u'%pinfo2 r.lm') ## line 127 ##
> Signature:       r.lm(*args, **kwds)
> Type:            RFunction
> String form:     lm
> File:            /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/interfaces/r.py
> Source:         
> function (formula, data, subset, weights, na.action, method = "qr", 
>     model = TRUE, x = FALSE, y = FALSE, qr = TRUE, singular.ok = TRUE, 
>     contrasts = NULL, offset, ...) 
> {
>     ret.x <- x
>     ret.y <- y
>     cl <- match.call()
>     mf <- match.call(expand.dots = FALSE)
>     m <- match(c("formula", "data", "subset", "weights", "na.action", 
>         "offset"), names(mf), 0L)
>     mf <- mf[c(1L, m)]
>     mf$drop.unused.levels <- TRUE
>     mf[[1L]] <- quote(stats::model.frame)
>     mf <- eval(mf, parent.frame())
>     if (method == "model.frame") 
>         return(mf)
>     else if (method != "qr") 
>         warning(gettextf("method = '%s' is not supported. Using 'qr'", 
>             method), domain = NA)
>     mt <- attr(mf, "terms")
>     y <- model.response(mf, "numeric")
>     w <- as.vector(model.weights(mf))
>     if (!is.null(w) && !is.numeric(w)) 
>         stop("'weights' must be a numeric vector")
>     offset <- model.offset(mf)
>     mlm <- is.matrix(y)
>     ny <- if (mlm) 
>         nrow(y)
>     else length(y)
>     if (!is.null(offset)) {
>         if (!mlm) 
>             offset <- as.vector(offset)
>         if (NROW(offset) != ny) 
>             stop(gettextf("number of offsets is %d, should equal %d (number of observations)", 
>                 NROW(offset), ny), domain = NA)
>     }
>     if (is.empty.model(mt)) {
>         x <- NULL
>         z <- list(coefficients = if (mlm) matrix(NA_real_, 0, 
>             ncol(y)) else numeric(), residuals = y, fitted.values = 0 * 
>             y, weights = w, rank = 0L, df.residual = if (!is.null(w)) sum(w != 
>             0) else ny)
>         if (!is.null(offset)) {
>             z$fitted.values <- offset
>             z$residuals <- y - offset
>         }
>     }
>     else {
>         x <- model.matrix(mt, mf, contrasts)
>         z <- if (is.null(w)) 
>             lm.fit(x, y, offset = offset, singular.ok = singular.ok, 
>                 ...)
>         else lm.wfit(x, y, w, offset = offset, singular.ok = singular.ok, 
>             ...)
>     }
>     class(z) <- c(if (mlm) "mlm", "lm")
>     z$na.action <- attr(mf, "na.action")
>     z$offset <- offset
>     z$contrasts <- attr(x, "contrasts")
>     z$xlevels <- .getXlevels(mt, mf)
>     z$call <- cl
>     z$terms <- mt
>     if (model) 
>         z$model <- mf
>     if (ret.x) 
>         z$x <- x
>     if (ret.y) 
>         z$y <- y
>     if (!qr) 
>         z$qr <- NULL
>     z
> }
> <bytecode: 0x5aff4e0>
> <environment: namespace:stats>
> Class docstring:
>    A Function in the R interface.
> 
>    INPUT:
> 
>    * parent -- the R interface
> 
>    * name -- the name of the function for Python
> 
>    * r_name -- the name of the function in R itself (which can have
>      dots in it)
> 
>    EXAMPLES:
> 
>       sage: length = r.length
>       sage: type(length)
>       <class 'sage.interfaces.r.RFunction'>
>       sage: loads(dumps(length))
>       length
> Init docstring: 
>    A Function in the R interface.
> 
>    INPUT:
> 
>    * parent -- the R interface
> 
>    * name -- the name of the function for Python
> 
>    * r_name -- the name of the function in R itself (which can have
>      dots in it)
> 
>    EXAMPLES:
> 
>       sage: length = r.length
>       sage: type(length)
>       <class 'sage.interfaces.r.RFunction'>
>       sage: loads(dumps(length))
>       length
> Call docstring: 
>    EXAMPLES:
> 
>       sage: length = r.length
>       sage: length([1,2,3])
>       [1] 3
> 
> sage: import warnings ## line 138 ##
> sage: warnings.simplefilter('error');  get_test_shell() ## line 139 ##
> <sage.repl.interpreter.SageTestShell object at 0x7fad9f4d9130>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 141 ##
> 0
> sage: from sage.repl.ipython_tests import dummy ## line 158 ##
> sage: dummy(1) ## line 159 ##
> 'Source code would be here'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 161 ##
> 0
> 
> **********************************************************************
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fada09c50a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4f0d30, __pyx_v_self=0x7fad9f4f0d30, 
>     __pyx_v_exc=0x7fad9f304e80) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4f0d30, __pyx_args=0x7fad9f304e80, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9f304e80
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fada09c50a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fada09c50a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 7018) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_mp27l3xi.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> sage -t --long src/sage/repl/rich_output/backend_ipython.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=7018) failed:
> sage: from sage.repl.rich_output.backend_ipython import BackendIPython ## line 31 ##
> sage: BackendIPython()._repr_() ## line 32 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 35 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 50 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPython ## line 51 ##
> sage: backend = BackendIPython() ## line 52 ##
> sage: shell = get_test_shell() ## line 53 ##
> sage: backend.install(shell=shell) ## line 54 ##
> sage: shell.run_cell('1+1') ## line 55 ##
> 2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 57 ##
> 0
> sage: from sage.repl.interpreter import get_test_shell ## line 75 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPython ## line 76 ##
> sage: backend = BackendIPython() ## line 77 ##
> sage: backend.set_underscore_variable(123) ## line 78 ##
> sage: _ ## line 79 ##
> 0
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 81 ##
> 0
> sage: from sage.repl.rich_output.output_basic import OutputPlainText ## line 101 ##
> sage: plain_text = OutputPlainText.example() ## line 102 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonNotebook ## line 103 ##
> sage: backend = BackendIPythonNotebook() ## line 104 ##
> sage: _ = backend.display_immediately(plain_text, plain_text) ## line 105 ##
> Example plain text output
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 107 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 120 ##
> sage: BackendIPythonCommandline() ## line 121 ##
> IPython command line
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 123 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 140 ##
> sage: backend = BackendIPythonCommandline() ## line 141 ##
> sage: backend.default_preferences() ## line 142 ##
> Display preferences:
> * graphics is not specified
> * supplemental_plot = never
> * text is not specified
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 147 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 161 ##
> sage: backend = BackendIPythonCommandline() ## line 162 ##
> sage: backend._repr_() ## line 163 ##
> 'IPython command line'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 165 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 180 ##
> sage: backend = BackendIPythonCommandline() ## line 181 ##
> sage: supp = backend.supported_output();  supp     # random output ## line 182 ##
> {<class 'sage.repl.rich_output.output_basic.OutputAsciiArt'>, <class 'sage.repl.rich_output.output_graphics.OutputImageGif'>, <class 'sage.repl.rich_output.output_basic.OutputPlainText'>, <class 'sage.repl.rich_output.output_graphics.OutputImagePng'>, <class 'sage.repl.rich_output.output_graphics3d.OutputSceneJmol'>, <class 'sage.repl.rich_output.output_graphics3d.OutputSceneWavefront'>, <class 'sage.repl.rich_output.output_graphics.OutputImageDvi'>, <class 'sage.repl.rich_output.output_graphics3d.OutputSceneThreejs'>, <class 'sage.repl.rich_output.output_graphics.OutputImagePdf'>, <class 'sage.repl.rich_output.output_basic.OutputLatex'>, <class 'sage.repl.rich_output.output_basic.OutputUnicodeArt'>}
> sage: from sage.repl.rich_output.output_basic import OutputLatex ## line 186 ##
> sage: OutputLatex in supp ## line 187 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 189 ##
> 0
> sage: from sage.repl.rich_output.output_basic import OutputPlainText ## line 223 ##
> sage: plain_text = OutputPlainText.example() ## line 224 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 225 ##
> sage: backend = BackendIPythonCommandline() ## line 226 ##
> sage: backend.displayhook(plain_text, plain_text) ## line 227 ##
> ({'text/plain': 'Example plain text output'}, {})
> sage: class Foo(sage.structure.sage_object.SageObject):
>     def _rich_repr_(self, dm):
>         return dm.types.OutputPlainText(u'Motörhead') ## line 234 ##
> sage: from sage.repl.rich_output import get_display_manager ## line 237 ##
> sage: dm = get_display_manager() ## line 238 ##
> sage: dm.displayhook(Foo()) ## line 239 ##
> ({'text/plain': 'Motörhead'}, {})
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 241 ##
> 0
> sage: from sage.repl.rich_output.output_basic import OutputPlainText ## line 297 ##
> sage: plain_text = OutputPlainText.example() ## line 298 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 299 ##
> sage: backend = BackendIPythonCommandline() ## line 300 ##
> sage: backend.display_immediately(plain_text, plain_text) ## line 301 ##
> Example plain text output
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 303 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 325 ##
> sage: backend = BackendIPythonCommandline() ## line 326 ##
> sage: backend.launch_viewer('/path/to/foo.bar', 'Graphics object') ## line 327 ##
> 'Launched bar viewer for Graphics object'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 329 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 360 ##
> sage: backend = BackendIPythonCommandline() ## line 361 ##
> sage: from sage.repl.rich_output.output_graphics3d import OutputSceneJmol ## line 362 ##
> sage: backend.launch_jmol(OutputSceneJmol.example(), 'Graphics3d object') ## line 363 ##
> 'Launched jmol viewer for Graphics3d object'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 365 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 392 ##
> sage: backend = BackendIPythonCommandline() ## line 393 ##
> sage: backend.is_in_terminal() ## line 394 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 396 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonCommandline ## line 409 ##
> sage: backend = BackendIPythonCommandline() ## line 410 ##
> sage: backend.threejs_offline_scripts() ## line 411 ##
> '<script src="/usr/share/javascript/three/build/three.min.js"></script>\n<script src="/usr/share/javascript/three/examples/js/controls/OrbitControls.js"></script>'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 413 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonNotebook ## line 450 ##
> sage: BackendIPythonNotebook() ## line 451 ##
> IPython notebook
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 453 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonNotebook ## line 465 ##
> sage: backend = BackendIPythonNotebook() ## line 466 ##
> sage: backend._repr_() ## line 467 ##
> 'IPython notebook'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 469 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonNotebook ## line 484 ##
> sage: backend = BackendIPythonNotebook() ## line 485 ##
> sage: supp = backend.supported_output();  supp     # random output ## line 486 ##
> {<class 'sage.repl.rich_output.output_graphics.OutputImageJpg'>, <class 'sage.repl.rich_output.output_basic.OutputAsciiArt'>, <class 'sage.repl.rich_output.output_graphics.OutputImageGif'>, <class 'sage.repl.rich_output.output_basic.OutputPlainText'>, <class 'sage.repl.rich_output.output_browser.OutputHtml'>, <class 'sage.repl.rich_output.output_graphics.OutputImagePng'>, <class 'sage.repl.rich_output.output_graphics3d.OutputSceneThreejs'>, <class 'sage.repl.rich_output.output_graphics.OutputImagePdf'>, <class 'sage.repl.rich_output.output_basic.OutputLatex'>, <class 'sage.repl.rich_output.output_graphics.OutputImageSvg'>, <class 'sage.repl.rich_output.output_basic.OutputUnicodeArt'>}
> sage: from sage.repl.rich_output.output_basic import OutputLatex ## line 490 ##
> sage: OutputLatex in supp ## line 491 ##
> True
> sage: from sage.repl.rich_output.output_graphics import OutputImageGif ## line 493 ##
> sage: OutputImageGif in supp ## line 494 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 496 ##
> 0
> sage: from sage.repl.rich_output.output_basic import OutputPlainText ## line 531 ##
> sage: plain_text = OutputPlainText.example() ## line 532 ##
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonNotebook ## line 533 ##
> sage: backend = BackendIPythonNotebook() ## line 534 ##
> sage: backend.displayhook(plain_text, plain_text) ## line 535 ##
> ({'text/plain': 'Example plain text output'}, {})
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 537 ##
> 0
> sage: from sage.repl.rich_output.backend_ipython import BackendIPythonNotebook ## line 601 ##
> sage: backend = BackendIPythonNotebook() ## line 602 ##
> sage: backend.threejs_offline_scripts() ## line 603 ##
> '\n<script src="/nbextensions/threejs/build/three.min.js"></script>\n<script src="/nbextensions/threejs/examples/js/controls/OrbitControls.js"></script>\n        '
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 605 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/rings/asymptotic/asymptotic_expansion_generators.py
> **********************************************************************
> File "src/sage/rings/asymptotic/asymptotic_expansion_generators.py", line 741, in sage.rings.asymptotic.asymptotic_expansion_generators.AsymptoticExpansionGenerators.?
> Failed example:
>     coefficients = ((1-x)^(1/2)).series(
>         x, 21).truncate().coefficients(x, sparse=False)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.rings.asymptotic.asymptotic_expansion_generators.AsymptoticExpansionGenerators.?[22]>", line 1, in <module>
>         coefficients = ((Integer(1)-x)**(Integer(1)/Integer(2))).series(
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/rings/asymptotic/asymptotic_expansion_generators.py", line 743, in sage.rings.asymptotic.asymptotic_expansion_generators.AsymptoticExpansionGenerators.?
> Failed example:
>     ex.compare_with_values(n,    # rel tol 1e-6
>         lambda k: coefficients[k], [5, 10, 20])
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.rings.asymptotic.asymptotic_expansion_generators.AsymptoticExpansionGenerators.?[23]>", line 1, in <module>
>         ex.compare_with_values(n,    # rel tol 1e-6
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/asymptotic/asymptotic_ring.py", line 2878, in compare_with_values
>         points = list(
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/asymptotic/asymptotic_ring.py", line 2879, in <genexpr>
>         (k, ring((main.subs({variable: k}) - function(k)) /
>       File "<doctest sage.rings.asymptotic.asymptotic_expansion_generators.AsymptoticExpansionGenerators.?[23]>", line 2, in <lambda>
>         lambda k: coefficients[k], [Integer(5), Integer(10), Integer(20)])
>     NameError: name 'coefficients' is not defined
> **********************************************************************
> 1 item had failures:
>    2 of  55 in sage.rings.asymptotic.asymptotic_expansion_generators.AsymptoticExpansionGenerators.?
>     [144 tests, 2 failures, 48.76 s]
> sage -t --long src/sage/rings/asymptotic/growth_group.py
>     [933 tests, 4.09 s]
> sage -t --long src/sage/rings/asymptotic/growth_group_cartesian.py
>     [222 tests, 2.23 s]
> sage -t --long src/sage/rings/asymptotic/misc.py
>     [149 tests, 0.30 s]
> sage -t --long src/sage/rings/asymptotic/asymptotic_ring.py
>     [687 tests, 10.01 s]
> sage -t --long src/sage/rings/bernmm.pyx
>     [25 tests, 0.40 s]
> sage -t --long src/sage/rings/bernoulli_mod_p.pyx
>     [26 tests, 0.05 s]
> sage -t --long src/sage/rings/big_oh.py
>     [24 tests, 0.25 s]
> sage -t --long src/sage/rings/cfinite_sequence.py
>     [257 tests, 2.59 s]
> sage -t --long src/sage/rings/commutative_algebra.py
>     [1 test, 0.01 s]
> sage -t --long src/sage/rings/complex_arb.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/asymptotic/term_monoid.py
>     [928 tests, 5.07 s]
> sage -t --long src/sage/rings/complex_double.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/complex_double.pyx
>     [330 tests, 0.45 s]
> sage -t --long src/sage/rings/complex_field.py
>     [123 tests, 0.31 s]
> sage -t --long src/sage/rings/complex_interval.pyx
>     [262 tests, 1.59 s]
> sage -t --long src/sage/rings/complex_interval.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/complex_interval_field.py
>     [128 tests, 0.30 s]
> sage -t --long src/sage/rings/complex_mpc.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/complex_mpc.pyx
>     [409 tests, 0.40 s]
> sage -t --long src/sage/rings/complex_arb.pyx
> **********************************************************************
> File "src/sage/rings/complex_arb.pyx", line 4553, in sage.rings.complex_arb.ComplexBall.elliptic_pi
> Failed example:
>     CBF(2,3).elliptic_pi(CBF(1,1))
> Expected:
>     [0.27029997361983 +/- ...e-15] + [0.715676058329095 +/- ...e-16]*I
> Got:
>     [0.2702999736198 +/- 4.51e-14] + [0.7156760583291 +/- 1.78e-14]*I
> **********************************************************************
> File "src/sage/rings/complex_arb.pyx", line 4661, in sage.rings.complex_arb.ComplexBall.elliptic_pi_inc
> Failed example:
>     n.elliptic_pi_inc(CBF.pi()/2, m)
> Expected:
>     [0.8934793755173 +/- ...e-14] + [0.95707868710750 +/- ...e-15]*I
> Got:
>     nan + nan*I
> **********************************************************************
> File "src/sage/rings/complex_arb.pyx", line 4663, in sage.rings.complex_arb.ComplexBall.elliptic_pi_inc
> Failed example:
>     n.elliptic_pi(m)
> Expected:
>     [0.89347937551733 +/- ...e-15] + [0.95707868710750 +/- ...e-15]*I
> Got:
>     [0.8934793755173 +/- 4.27e-14] + [0.9570786871075 +/- 9.91e-15]*I
> **********************************************************************
> File "src/sage/rings/complex_arb.pyx", line 4668, in sage.rings.complex_arb.ComplexBall.elliptic_pi_inc
> Failed example:
>     n.elliptic_pi_inc(CBF.pi()/2, m)
> Expected:
>     [0.2969588746419 +/- ...e-14] + [1.3188795332738 +/- ...e-14]*I
> Got:
>     nan + nan*I
> **********************************************************************
> File "src/sage/rings/complex_arb.pyx", line 4670, in sage.rings.complex_arb.ComplexBall.elliptic_pi_inc
> Failed example:
>     n.elliptic_pi(m)
> Expected:
>     [0.29695887464189 +/- ...e-15] + [1.31887953327376 +/- ...e-15]*I
> Got:
>     [0.2969588746419 +/- 3.79e-14] + [1.3188795332738 +/- 7.19e-14]*I
> **********************************************************************
> File "src/sage/rings/complex_arb.pyx", line 4746, in sage.rings.complex_arb.ComplexBall.elliptic_rj
> Failed example:
>     CBF(0,1).elliptic_rj(CBF(-1/2,1), CBF(-1,-1), CBF(2))
> Expected:
>     [1.004386756285733 +/- ...e-16] + [-0.2451626834391645 +/- ...e-17]*I
> Got:
>     [1.00438675628573 +/- 6.85e-15] + [-0.24516268343916 +/- 8.11e-15]*I
> **********************************************************************
> 3 items had failures:
>    1 of   2 in sage.rings.complex_arb.ComplexBall.elliptic_pi
>    4 of  10 in sage.rings.complex_arb.ComplexBall.elliptic_pi_inc
>    1 of   2 in sage.rings.complex_arb.ComplexBall.elliptic_rj
>     [641 tests, 6 failures, 7.88 s]
> sage -t --long src/sage/rings/complex_number.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/complex_number.pyx
>     [394 tests, 2.73 s]
> sage -t --long src/sage/rings/convert/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/convert/mpfi.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/convert/mpfi.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/derivation.py
>     [423 tests, 2.35 s]
> sage -t --long src/sage/rings/factorint.pyx
>     [27 tests, 0.80 s]
> sage -t --long src/sage/rings/fast_arith.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/fast_arith.pyx
>     [17 tests, 0.13 s]
> sage -t --long src/sage/rings/finite_rings/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/conway_polynomials.py
>     [58 tests, 0.79 s]
> sage -t --long src/sage/rings/finite_rings/element_base.pyx
>     [163 tests, 0.99 s]
> sage -t --long src/sage/rings/finite_rings/element_base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/element_givaro.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/element_givaro.pyx
>     [238 tests, 0.68 s]
> sage -t --long src/sage/rings/finite_rings/element_ntl_gf2e.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/element_ntl_gf2e.pyx
>     [174 tests, 0.57 s]
> sage -t --long src/sage/rings/finite_rings/element_pari_ffelt.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/element_pari_ffelt.pyx
>     [276 tests, 0.82 s]
> sage -t --long src/sage/rings/finite_rings/finite_field_base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/finite_field_base.pyx
>     [276 tests, 9.55 s]
> sage -t --long src/sage/rings/continued_fraction.py
>     [416 tests, 17.86 s]
> sage -t --long src/sage/rings/finite_rings/finite_field_givaro.py
>     [121 tests, 0.60 s]
> sage -t --long src/sage/rings/finite_rings/finite_field_ntl_gf2e.py
>     [61 tests, 0.32 s]
> sage -t --long src/sage/rings/finite_rings/finite_field_pari_ffelt.py
>     [37 tests, 0.27 s]
> sage -t --long src/sage/rings/finite_rings/finite_field_prime_modn.py
>     [44 tests, 0.57 s]
> sage -t --long src/sage/rings/finite_rings/hom_finite_field.pyx
>     [158 tests, 0.55 s]
> sage -t --long src/sage/rings/finite_rings/hom_finite_field.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/hom_finite_field_givaro.pyx
>     [37 tests, 0.26 s]
> sage -t --long src/sage/rings/finite_rings/hom_finite_field_givaro.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/hom_prime_finite_field.pyx
>     [21 tests, 0.22 s]
> sage -t --long src/sage/rings/finite_rings/hom_prime_finite_field.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/homset.py
>     [67 tests, 0.37 s]
> sage -t --long src/sage/rings/finite_rings/integer_mod.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/integer_mod_ring.py
>     [308 tests, 2.47 s]
> sage -t --long src/sage/rings/finite_rings/maps_finite_field.py
>     [31 tests, 0.29 s]
> sage -t --long src/sage/rings/finite_rings/integer_mod.pyx
>     [555 tests, 4.64 s]
> sage -t --long src/sage/rings/finite_rings/residue_field.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/finite_rings/stdint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/fraction_field.py
>     [243 tests, 0.82 s]
> sage -t --long src/sage/rings/fraction_field_FpT.pyx
>     [369 tests, 0.51 s]
> sage -t --long src/sage/rings/fraction_field_FpT.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/fraction_field_element.pyx
>     [273 tests, 0.66 s]
> sage -t --long src/sage/rings/function_field/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/function_field/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/function_field/constructor.py
>     [42 tests, 0.26 s]
> sage -t --long src/sage/rings/finite_rings/residue_field.pyx
>     [517 tests, 3.52 s]
> sage -t --long src/sage/rings/finite_rings/finite_field_constructor.py
>     [119 tests, 13.56 s]
> sage -t --long src/sage/rings/asymptotic/asymptotics_multivariate_generating_functions.py
>     [805 tests, 51.57 s]
> sage -t --long src/sage/rings/function_field/element.pyx
>     [280 tests, 1.84 s]
> sage -t --long src/sage/rings/function_field/differential.py
>     [228 tests, 4.18 s]
> sage -t --long src/sage/rings/function_field/divisor.py
>     [200 tests, 4.58 s]
> sage -t --long src/sage/rings/function_field/maps.py
>     [402 tests, 5.36 s]
> sage -t --long src/sage/rings/function_field/order.py
>     [476 tests, 4.74 s]
> sage -t --long src/sage/rings/function_field/ideal.py
>     [1005 tests, 12.70 s]
> sage -t --long src/sage/rings/function_field/valuation_ring.py
>     [52 tests, 0.46 s]
> sage -t --long src/sage/rings/homset.py
>     [61 tests, 0.34 s]
> sage -t --long src/sage/rings/ideal.py
>     [364 tests, 1.01 s]
> sage -t --long src/sage/rings/ideal_monoid.py
>     [42 tests, 0.26 s]
> sage -t --long src/sage/rings/infinity.py
>     [299 tests, 1.75 s]
> sage -t --long src/sage/rings/integer.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/function_field/place.py
>     [208 tests, 7.15 s]
> sage -t --long src/sage/rings/integer_fake.pxd
>     [1 test, 1.50 s]
> sage -t --long src/sage/rings/integer_ring.pyx
>     [204 tests, 2.41 s]
> sage -t --long src/sage/rings/integer_ring.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/invariant_theory.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/invariants/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/invariants/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/invariants/invariant_theory.py
>     [886 tests, 9.75 s]
> sage -t --long src/sage/rings/invariants/reconstruction.py
>     [59 tests, 0.27 s]
> sage -t --long src/sage/rings/laurent_series_ring.py
>     [170 tests, 0.49 s]
> sage -t --long src/sage/rings/laurent_series_ring_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/laurent_series_ring_element.pyx
>     [374 tests, 0.61 s]
> sage -t --long src/sage/rings/lazy_laurent_series.py
>     [120 tests, 0.10 s]
> sage -t --long src/sage/rings/lazy_laurent_series_operator.py
>     [202 tests, 0.13 s]
> sage -t --long src/sage/rings/lazy_laurent_series_ring.py
>     [48 tests, 0.13 s]
> sage -t --long src/sage/rings/monomials.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/rings/morphism.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/morphism.pyx
>     [531 tests, 0.97 s]
> sage -t --long src/sage/rings/multi_power_series_ring.py
>     [232 tests, 0.63 s]
> sage -t --long src/sage/rings/multi_power_series_ring_element.py
>     [465 tests, 0.90 s]
> sage -t --long src/sage/rings/noncommutative_ideals.pyx
>     [63 tests, 0.33 s]
> sage -t --long src/sage/rings/number_field/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/number_field/S_unit_solver.py
>     [266 tests, 8.61 s]
> sage -t --long src/sage/rings/number_field/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/number_field/bdd_height.py
>     [74 tests, 13.67 s]
> sage -t --long src/sage/rings/number_field/class_group.py
>     [221 tests, 0.92 s]
> sage -t --long src/sage/rings/function_field/function_field_valuation.py
>     [351 tests, 63.88 s]
> sage -t --long src/sage/rings/number_field/maps.py
>     [163 tests, 0.49 s]
> sage -t --long src/sage/rings/number_field/galois_group.py
>     [153 tests, 3.46 s]
> sage -t --long src/sage/rings/number_field/morphism.py
>     [122 tests, 0.95 s]
> sage -t --long src/sage/rings/number_field/number_field_base.pyx
>     [74 tests, 2.20 s]
> sage -t --long src/sage/rings/number_field/number_field_base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/number_field/number_field_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/number_field/number_field.py
> **********************************************************************
> File "src/sage/rings/number_field/number_field.py", line 3249, in sage.rings.number_field.number_field.NumberField_generic.ideals_of_bdd_norm
> Failed example:
>     for n in d:
>         print(n)
>         for I in d[n]:
>             print(I)
> Expected:
>     1
>     Fractional ideal (1)
>     2
>     Fractional ideal (2, 1/2*a - 1/2)
>     Fractional ideal (2, 1/2*a + 1/2)
>     3
>     Fractional ideal (3, 1/2*a - 1/2)
>     Fractional ideal (3, 1/2*a + 1/2)
>     4
>     Fractional ideal (4, 1/2*a + 3/2)
>     Fractional ideal (2)
>     Fractional ideal (4, 1/2*a + 5/2)
>     5
>     6
>     Fractional ideal (1/2*a - 1/2)
>     Fractional ideal (6, 1/2*a + 5/2)
>     Fractional ideal (6, 1/2*a + 7/2)
>     Fractional ideal (1/2*a + 1/2)
>     7
>     8
>     Fractional ideal (1/2*a + 3/2)
>     Fractional ideal (4, a - 1)
>     Fractional ideal (4, a + 1)
>     Fractional ideal (1/2*a - 3/2)
>     9
>     Fractional ideal (9, 1/2*a + 11/2)
>     Fractional ideal (3)
>     Fractional ideal (9, 1/2*a + 7/2)
>     10
> Got:
>     1
>     Fractional ideal (1)
>     2
>     Fractional ideal (2, 1/2*a - 1/2)
>     Fractional ideal (2, 1/2*a + 1/2)
>     3
>     Fractional ideal (3, 1/2*a + 1/2)
>     Fractional ideal (3, 1/2*a - 1/2)
>     4
>     Fractional ideal (4, 1/2*a + 3/2)
>     Fractional ideal (2)
>     Fractional ideal (4, 1/2*a + 5/2)
>     5
>     6
>     Fractional ideal (6, 1/2*a + 7/2)
>     Fractional ideal (1/2*a + 1/2)
>     Fractional ideal (1/2*a - 1/2)
>     Fractional ideal (6, 1/2*a + 5/2)
>     7
>     8
>     Fractional ideal (1/2*a + 3/2)
>     Fractional ideal (4, a - 1)
>     Fractional ideal (4, a + 1)
>     Fractional ideal (1/2*a - 3/2)
>     9
>     Fractional ideal (9, 1/2*a + 7/2)
>     Fractional ideal (3)
>     Fractional ideal (9, 1/2*a + 11/2)
>     10
> **********************************************************************
> 1 item had failures:
>    1 of   4 in sage.rings.number_field.number_field.NumberField_generic.ideals_of_bdd_norm
>     [2075 tests, 1 failure, 53.15 s]
> sage -t --long src/sage/rings/number_field/number_field_element.pyx
>     [1113 tests, 20.21 s]
> sage -t --long src/sage/rings/integer.pyx
>     [1156 tests, 71.53 s]
> sage -t --long src/sage/rings/number_field/number_field_element_quadratic.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/number_field/number_field_ideal.py
>     [674 tests, 4.65 s]
> sage -t --long src/sage/rings/number_field/number_field_element_quadratic.pyx
>     [512 tests, 6.68 s]
> sage -t --long src/sage/rings/number_field/number_field_ideal_rel.py
>     [232 tests, 1.07 s]
> sage -t --long src/sage/rings/number_field/number_field_morphisms.pyx
>     [137 tests, 2.39 s]
> sage -t --long src/sage/rings/number_field/number_field_rel.py
>     [545 tests, 4.11 s]
> sage -t --long src/sage/rings/number_field/small_primes_of_degree_one.py
>     [41 tests, 1.27 s]
> sage -t --long src/sage/rings/number_field/order.py
>     [464 tests, 4.49 s]
> sage -t --long src/sage/rings/number_field/structure.py
>     [66 tests, 0.79 s]
> sage -t --long src/sage/rings/number_field/splitting_field.py
>     [74 tests, 9.20 s]
> sage -t --long src/sage/rings/number_field/totallyreal_data.pyx
>     [24 tests, 0.04 s]
> sage -t --long src/sage/rings/number_field/totallyreal_data.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/number_field/totallyreal_phc.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/rings/number_field/unit_group.py
>     [176 tests, 1.41 s]
> sage -t --long src/sage/rings/numbers_abc.py
>     [18 tests, 0.04 s]
> sage -t --long src/sage/rings/padics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/CA_template.pxi
>     [302 tests, 0.47 s]
> sage -t --long src/sage/rings/padics/CA_template_header.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/CR_template.pxi
>     [424 tests, 0.52 s]
> sage -t --long src/sage/rings/padics/CR_template_header.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/number_field/totallyreal_rel.py
>     [44 tests, 11.46 s]
> sage -t --long src/sage/rings/padics/FM_template_header.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/FM_template.pxi
>     [277 tests, 0.44 s]
> sage -t --long src/sage/rings/padics/FP_template_header.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/common_conversion.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/common_conversion.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/FP_template.pxi
>     [337 tests, 0.46 s]
> sage -t --long src/sage/rings/padics/eisenstein_extension_generic.py
>     [39 tests, 0.29 s]
> sage -t --long src/sage/rings/padics/generic_nodes.py
>     [148 tests, 0.41 s]
> sage -t --long src/sage/rings/padics/factory.py
>     [509 tests, 2.14 s]
> sage -t --long src/sage/rings/padics/lattice_precision.py
>     [463 tests, 2.01 s]
> sage -t --long src/sage/rings/padics/local_generic_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/local_generic_element.pyx
>     [194 tests, 0.47 s]
> sage -t --long src/sage/rings/number_field/totallyreal.pyx
>     [19 tests, 22.59 s]
> sage -t --long src/sage/rings/padics/morphism.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/local_generic.py
>     [218 tests, 1.11 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_CA_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/misc.py
>     [26 tests, 0.24 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_CR_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/morphism.pyx
>     [57 tests, 0.32 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_FM_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_CA_element.pyx
>     [461 tests, 0.70 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_FM_element.pyx
>     [363 tests, 0.61 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_CR_element.pyx
>     [634 tests, 1.16 s]
> sage -t --long src/sage/rings/padics/padic_ZZ_pX_element.pyx
>     [136 tests, 0.41 s]
> sage -t --long src/sage/rings/padics/padic_capped_absolute_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_base_generic.py
>     [44 tests, 0.64 s]
> sage -t --long src/sage/rings/padics/padic_capped_relative_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_capped_absolute_element.pyx
>     [61 tests, 0.30 s]
> sage -t --long src/sage/rings/padics/padic_ext_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_capped_relative_element.pyx
>     [83 tests, 0.32 s]
> sage -t --long src/sage/rings/padics/padic_ext_element.pyx
>     [48 tests, 0.35 s]
> sage -t --long src/sage/rings/padics/padic_extension_generic.py
>     [201 tests, 0.69 s]
> sage -t --long src/sage/rings/padics/padic_fixed_mod_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_fixed_mod_element.pyx
>     [66 tests, 0.31 s]
> sage -t --long src/sage/rings/padics/padic_floating_point_element.pyx
>     [62 tests, 0.30 s]
> sage -t --long src/sage/rings/padics/padic_floating_point_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_generic.py
>     [239 tests, 1.32 s]
> sage -t --long src/sage/rings/padics/padic_generic_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_generic_element.pyx
>     [800 tests, 18.52 s]
> sage -t --long src/sage/rings/padics/padic_lattice_element.py
>     [274 tests, 28.09 s]
> sage -t --long src/sage/rings/padics/padic_printing.pyx
>     [108 tests, 0.32 s]
> sage -t --long src/sage/rings/padics/padic_printing.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_template_element.pxi
>     [140 tests, 0.75 s]
> sage -t --long src/sage/rings/padics/padic_template_element_header.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/padic_valuation.py
>     [192 tests, 2.88 s]
> sage -t --long src/sage/rings/padics/pow_computer.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/pow_computer.pyx
>     [88 tests, 0.04 s]
> sage -t --long src/sage/rings/padics/pow_computer_ext.pyx
>     [281 tests, 0.40 s]
> sage -t --long src/sage/rings/padics/pow_computer_ext.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/pow_computer_flint.pyx
>     [76 tests, 0.04 s]
> sage -t --long src/sage/rings/padics/pow_computer_flint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/pow_computer_relative.pyx
>     [97 tests, 0.43 s]
> sage -t --long src/sage/rings/padics/pow_computer_relative.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/precision_error.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/qadic_flint_CA.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/qadic_flint_CA.pyx
>     [19 tests, 0.29 s]
> sage -t --long src/sage/rings/padics/qadic_flint_CR.pyx
>     [23 tests, 0.29 s]
> sage -t --long src/sage/rings/padics/qadic_flint_CR.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/qadic_flint_FM.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/qadic_flint_FM.pyx
>     [17 tests, 0.26 s]
> sage -t --long src/sage/rings/padics/qadic_flint_FP.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/qadic_flint_FP.pyx
>     [22 tests, 0.28 s]
> sage -t --long src/sage/rings/padics/padic_extension_leaves.py
>     [73 tests, 68.48 s]
> sage -t --long src/sage/rings/padics/relative_ramified_CA.pyx
>     [9 tests, 0.31 s]
> sage -t --long src/sage/rings/padics/relative_ramified_CA.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/relative_ramified_CR.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/relative_ramified_CR.pyx
>     [9 tests, 0.29 s]
> sage -t --long src/sage/rings/padics/relative_ramified_FM.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/relative_ramified_FM.pyx
>     [9 tests, 0.29 s]
> sage -t --long src/sage/rings/padics/relative_ramified_FP.pyx
>     [9 tests, 0.30 s]
> sage -t --long src/sage/rings/padics/relative_ramified_FP.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/padics/tests.py
>     [12 tests, 0.21 s]
> sage -t --long src/sage/rings/padics/tutorial.py
>     [45 tests, 0.25 s]
> sage -t --long src/sage/rings/padics/unramified_extension_generic.py
>     [31 tests, 0.30 s]
> sage -t --long src/sage/rings/pari_ring.py
>     [46 tests, 0.02 s]
> sage -t --long src/sage/rings/polynomial/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/binary_form_reduce.py
>     [43 tests, 3.71 s]
> sage -t --long src/sage/rings/polynomial/complex_roots.py
>     [42 tests, 0.36 s]
> sage -t --long src/sage/rings/polynomial/convolution.py
>     [34 tests, 2.14 s]
> sage -t --long src/sage/rings/polynomial/cyclotomic.pyx
>     [34 tests, 0.68 s]
> sage -t --long src/sage/rings/polynomial/evaluation.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/evaluation.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/flatten.py
>     [144 tests, 1.03 s]
> sage -t --long src/sage/rings/polynomial/groebner_fan.py
>     [357 tests, 3.70 s]
> sage -t --long src/sage/rings/polynomial/hilbert.pyx
>     [25 tests, 0.52 s]
> sage -t --long src/sage/rings/polynomial/ideal.py
>     [10 tests, 0.04 s]
> sage -t --long src/sage/rings/polynomial/infinite_polynomial_element.py
>     [247 tests, 1.52 s]
> sage -t --long src/sage/rings/polynomial/infinite_polynomial_ring.py
>     [259 tests, 0.79 s]
> sage -t --long src/sage/rings/polynomial/laurent_polynomial.pyx
>     [683 tests, 0.67 s]
> sage -t --long src/sage/rings/polynomial/laurent_polynomial.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/laurent_polynomial_ring.py
>     [232 tests, 0.43 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial.pyx
>     [538 tests, 5.27 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_element.py
>     [439 tests, 1.03 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_ideal.py
>     [876 tests, 8.62 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_ideal_libsingular.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_ideal_libsingular.pyx
>     [23 tests, 0.35 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_libsingular.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_libsingular.pyx
>     [1099 tests, 2.80 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_ring.py
>     [152 tests, 0.31 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_ring_base.pyx
>     [189 tests, 1.00 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_ring_base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_ring_generic.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/rings/padics/padic_base_leaves.py
>     [246 tests, 123.23 s]
> sage -t --long src/sage/rings/padics/relative_extension_leaves.py
>     [93 tests, 66.69 s]
> sage -t --long src/sage/rings/polynomial/padics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/padics/polynomial_padic.py
>     [74 tests, 0.40 s]
> sage -t --long src/sage/rings/polynomial/omega.py
>     [127 tests, 1.67 s]
> sage -t --long src/sage/rings/polynomial/padics/polynomial_padic_flat.py
>     [3 tests, 0.03 s]
> sage -t --long src/sage/rings/polynomial/pbori.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/padics/polynomial_padic_capped_relative_dense.py
>     [154 tests, 0.40 s]
> sage -t --long src/sage/rings/polynomial/plural.pyx
>     [628 tests, 1.71 s]
> sage -t --long src/sage/rings/polynomial/plural.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polydict.pyx
>     [260 tests, 0.33 s]
> sage -t --long src/sage/rings/polynomial/polydict.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_compiled.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_compiled.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_complex_arb.pyx
>     [137 tests, 0.30 s]
> sage -t --long src/sage/rings/polynomial/polynomial_complex_arb.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/multi_polynomial_sequence.py
>     [250 tests, 19.98 s]
> sage -t --long src/sage/rings/polynomial/polynomial_element_generic.py
>     [260 tests, 0.78 s]
> sage -t --long src/sage/rings/polynomial/polynomial_fateman.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/pbori.pyx
>     [1551 tests, 4.45 s]
> sage -t --long src/sage/rings/polynomial/polynomial_gf2x.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_integer_dense_flint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_gf2x.pyx
>     [43 tests, 0.25 s]
> sage -t --long src/sage/rings/polynomial/polynomial_integer_dense_ntl.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_integer_dense_flint.pyx
>     [300 tests, 0.45 s]
> sage -t --long src/sage/rings/polynomial/polynomial_integer_dense_ntl.pyx
>     [184 tests, 0.37 s]
> sage -t --long src/sage/rings/polynomial/polynomial_modn_dense_ntl.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_modn_dense_ntl.pyx
>     [320 tests, 0.73 s]
> sage -t --long src/sage/rings/polynomial/polynomial_number_field.pyx
>     [103 tests, 1.78 s]
> sage -t --long src/sage/rings/polynomial/polynomial_quotient_ring_element.py
>     [137 tests, 0.69 s]
> sage -t --long src/sage/rings/polynomial/polynomial_rational_flint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_quotient_ring.py
>     [477 tests, 2.52 s]
> sage -t --long src/sage/rings/polynomial/polynomial_real_mpfr_dense.pyx
>     [144 tests, 0.31 s]
> sage -t --long src/sage/rings/polynomial/polynomial_ring.py
>     [503 tests, 2.06 s]
> sage -t --long src/sage/rings/polynomial/polynomial_ring_constructor.py
>     [136 tests, 0.39 s]
> sage -t --long src/sage/rings/polynomial/polynomial_ring_homomorphism.pyx
>     [30 tests, 0.25 s]
> sage -t --long src/sage/rings/polynomial/polynomial_ring_homomorphism.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_singular_interface.py
>     [52 tests, 0.45 s]
> sage -t --long src/sage/rings/polynomial/polynomial_template.pxi
>     [124 tests, 0.46 s]
> sage -t --long src/sage/rings/polynomial/polynomial_template_header.pxi
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_rational_flint.pyx
>     [399 tests, 5.26 s]
> sage -t --long src/sage/rings/polynomial/polynomial_zmod_flint.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/polynomial_zz_pex.pyx
>     [87 tests, 0.42 s]
> sage -t --long src/sage/rings/polynomial/polynomial_zz_pex.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/real_roots.pyx
>     [419 tests, 1.06 s]
> sage -t --long src/sage/rings/polynomial/real_roots.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/refine_root.pyx
>     [9 tests, 0.02 s]
> sage -t --long src/sage/rings/polynomial/skew_polynomial_element.pyx
>     [729 tests, 0.52 s]
> sage -t --long src/sage/rings/polynomial/skew_polynomial_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/skew_polynomial_ring.py
>     [168 tests, 0.33 s]
> sage -t --long src/sage/rings/polynomial/skew_polynomial_ring_constructor.py
>     [17 tests, 0.03 s]
> sage -t --long src/sage/rings/polynomial/symmetric_ideal.py
>     [108 tests, 0.97 s]
> sage -t --long src/sage/rings/polynomial/symmetric_reduction.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/polynomial/symmetric_reduction.pyx
>     [102 tests, 0.27 s]
> sage -t --long src/sage/rings/polynomial/polynomial_zmod_flint.pyx
>     [143 tests, 4.85 s]
> sage -t --long src/sage/rings/polynomial/term_order.py
>     [318 tests, 0.43 s]
> sage -t --long src/sage/rings/polynomial/toy_d_basis.py
>     [60 tests, 0.27 s]
> sage -t --long src/sage/rings/polynomial/toy_buchberger.py
>     [50 tests, 0.71 s]
> sage -t --long src/sage/rings/polynomial/toy_variety.py
>     [40 tests, 0.25 s]
> sage -t --long src/sage/rings/power_series_mpoly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/power_series_mpoly.pyx
>     [4 tests, 0.02 s]
> sage -t --long src/sage/rings/power_series_pari.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/power_series_pari.pyx
>     [182 tests, 0.42 s]
> sage -t --long src/sage/rings/power_series_poly.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/power_series_poly.pyx
> **********************************************************************
> File "src/sage/rings/power_series_poly.pyx", line 1162, in sage.rings.power_series_poly.PowerSeries_poly._symbolic_
> Failed example:
>     SR(s)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.rings.power_series_poly.PowerSeries_poly._symbolic_[2]>", line 1, in <module>
>         SR(s)
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/structure/coerce_maps.pyx", line 287, in sage.structure.coerce_maps.NamedConvertMap._call_ (build/cythonized/sage/structure/coerce_maps.c:5948)
>         cdef Element e = method(C)
>       File "sage/rings/power_series_poly.pyx", line 1188, in sage.rings.power_series_poly.PowerSeries_poly._symbolic_ (build/cythonized/sage/rings/power_series_poly.c:12555)
>         return pex.series(var, self.prec())
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/rings/power_series_poly.pyx", line 1164, in sage.rings.power_series_poly.PowerSeries_poly._symbolic_
> Failed example:
>     SR(s).is_terminating_series()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.rings.power_series_poly.PowerSeries_poly._symbolic_[3]>", line 1, in <module>
>         SR(s).is_terminating_series()
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/structure/coerce_maps.pyx", line 287, in sage.structure.coerce_maps.NamedConvertMap._call_ (build/cythonized/sage/structure/coerce_maps.c:5948)
>         cdef Element e = method(C)
>       File "sage/rings/power_series_poly.pyx", line 1188, in sage.rings.power_series_poly.PowerSeries_poly._symbolic_ (build/cythonized/sage/rings/power_series_poly.c:12555)
>         return pex.series(var, self.prec())
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/rings/power_series_poly.pyx", line 1166, in sage.rings.power_series_poly.PowerSeries_poly._symbolic_
> Failed example:
>     SR(s).variables()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.rings.power_series_poly.PowerSeries_poly._symbolic_[4]>", line 1, in <module>
>         SR(s).variables()
>       File "sage/structure/parent.pyx", line 900, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:9217)
>         return mor._call_(x)
>       File "sage/structure/coerce_maps.pyx", line 287, in sage.structure.coerce_maps.NamedConvertMap._call_ (build/cythonized/sage/structure/coerce_maps.c:5948)
>         cdef Element e = method(C)
>       File "sage/rings/power_series_poly.pyx", line 1188, in sage.rings.power_series_poly.PowerSeries_poly._symbolic_ (build/cythonized/sage/rings/power_series_poly.c:12555)
>         return pex.series(var, self.prec())
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> 1 item had failures:
>    3 of  11 in sage.rings.power_series_poly.PowerSeries_poly._symbolic_
>     [257 tests, 3 failures, 0.47 s]
> sage -t --long src/sage/rings/power_series_ring.py
> **********************************************************************
> File "src/sage/rings/power_series_ring.py", line 740, in sage.rings.power_series_ring.PowerSeriesRing_generic._element_constructor_
> Failed example:
>     s=(1/(1-x)).series(x,3); s
> Expected:
>     1 + 1*x + 1*x^2 + Order(x^3)
> Got:
>     1 + Order(x^3)
> **********************************************************************
> File "src/sage/rings/power_series_ring.py", line 743, in sage.rings.power_series_ring.PowerSeriesRing_generic._element_constructor_
> Failed example:
>     R(s)
> Expected:
>     1 + x + x^2 + O(x^3)
> Got:
>     1 + O(x^3)
> **********************************************************************
> 1 item had failures:
>    2 of  31 in sage.rings.power_series_ring.PowerSeriesRing_generic._element_constructor_
>     [230 tests, 2 failures, 0.62 s]
> sage -t --long src/sage/rings/power_series_ring_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/power_series_ring_element.pyx
>     [413 tests, 0.70 s]
> sage -t --long src/sage/rings/qqbar_decorators.py
>     [7 tests, 0.03 s]
> sage -t --long src/sage/rings/polynomial/polynomial_element.pyx
>     [2556 tests, 17.29 s]
> sage -t --long src/sage/rings/quotient_ring.py
>     [293 tests, 0.69 s]
> sage -t --long src/sage/rings/quotient_ring_element.py
>     [189 tests, 0.70 s]
> sage -t --long src/sage/rings/rational.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/rational_field.py
>     [188 tests, 0.90 s]
> sage -t --long src/sage/rings/real_arb.pyx
> **********************************************************************
> File "src/sage/rings/real_arb.pyx", line 294, in sage.rings.real_arb.arb_to_mpfi
> Failed example:
>     RIF(RBF(2)**(2**100)) # indirect doctest
> Expected:
>     Traceback (most recent call last):
>     ...
>     ArithmeticError: Error converting arb to mpfi. Overflow?
> Got:
>     [5.8756537891115869e1388255822130839282 .. +infinity]
> **********************************************************************
> File "src/sage/rings/real_arb.pyx", line 1659, in sage.rings.real_arb.RealBall.mid
> Failed example:
>     b.mid()
> Expected:
>     Traceback (most recent call last):
>     ...
>     RuntimeError: unable to convert to MPFR (exponent out of range?)
> Got:
>     +infinity
> **********************************************************************
> 2 items had failures:
>    1 of   7 in sage.rings.real_arb.RealBall.mid
>    1 of   2 in sage.rings.real_arb.arb_to_mpfi
>     [542 tests, 2 failures, 0.65 s]
> sage -t --long src/sage/rings/rational.pyx
>     [581 tests, 1.67 s]
> sage -t --long src/sage/rings/real_arb.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/real_double.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/real_field.py
>     [5 tests, 0.01 s]
> sage -t --long src/sage/rings/real_interval_absolute.pyx
>     [242 tests, 0.31 s]
> sage -t --long src/sage/rings/real_double.pyx
>     [451 tests, 0.51 s]
> sage -t --long src/sage/rings/real_interval_field.py
>     [11 tests, 0.01 s]
> sage -t --long src/sage/rings/real_lazy.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/real_mpfi.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/real_lazy.pyx
>     [288 tests, 0.41 s]
> sage -t --long src/sage/rings/real_mpfi.pyx
>     [923 tests, 1.98 s]
> sage -t --long src/sage/rings/real_mpfr.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/ring.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/real_mpfr.pyx
>     [1035 tests, 2.67 s]
> sage -t --long src/sage/rings/semirings/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/semirings/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/semirings/non_negative_integer_semiring.py
>     [16 tests, 0.48 s]
> sage -t --long src/sage/rings/semirings/tropical_semiring.pyx
>     [132 tests, 0.06 s]
> sage -t --long src/sage/rings/sum_of_squares.pyx
>     [35 tests, 0.64 s]
> sage -t --long src/sage/rings/sum_of_squares.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/ring.pyx
>     [420 tests, 2.51 s]
> sage -t --long src/sage/rings/tate_algebra_element.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/tate_algebra.py
>     [264 tests, 2.75 s]
> sage -t --long src/sage/rings/tate_algebra_ideal.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/tate_algebra_ideal.pyx
>     [83 tests, 0.57 s]
> sage -t --long src/sage/rings/tate_algebra_element.pyx
>     [644 tests, 10.77 s]
> sage -t --long src/sage/rings/universal_cyclotomic_field.py
>     [331 tests, 3.40 s]
> sage -t --long src/sage/rings/valuation/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/valuation/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/qqbar.py
>     [1550 tests, 28.52 s]
> sage -t --long src/sage/rings/valuation/developing_valuation.py
>     [63 tests, 0.38 s]
> sage -t --long src/sage/rings/tests.py
>     [37 tests, 17.74 s]
> sage -t --long src/sage/rings/valuation/gauss_valuation.py
>     [140 tests, 0.48 s]
> sage -t --long src/sage/rings/valuation/inductive_valuation.py
>     [277 tests, 1.50 s]
> sage -t --long src/sage/rings/valuation/limit_valuation.py
>     [239 tests, 2.29 s]
> sage -t --long src/sage/rings/valuation/scaled_valuation.py
>     [42 tests, 0.35 s]
> sage -t --long src/sage/rings/valuation/trivial_valuation.py
>     [56 tests, 0.34 s]
> sage -t --long src/sage/rings/valuation/valuation.py
>     [232 tests, 6.93 s]
> sage -t --long src/sage/rings/valuation/valuation_space.py
>     [201 tests, 0.49 s]
> sage -t --long src/sage/rings/valuation/valuations_catalog.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/valuation/value_group.py
>     [109 tests, 0.42 s]
> sage -t --long src/sage/sandpiles/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sandpiles/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sandpiles/examples.py
>     [24 tests, 0.06 s]
> sage -t --long src/sage/sandpiles/sandpile.py
>     [939 tests, 14.23 s]
> sage -t --long src/sage/sat/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sat/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sat/boolean_polynomials.py
>     [7 tests, 0.27 s]
> sage -t --long src/sage/sat/converters/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sat/converters/anf2cnf.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sat/converters/polybori.py
>     [121 tests, 0.36 s]
> sage -t --long src/sage/sat/solvers/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sat/solvers/cryptominisat.py
>     [10 tests, 0.01 s]
> sage -t --long src/sage/sat/solvers/dimacs.py
>     [80 tests, 0.31 s]
> sage -t --long src/sage/sat/solvers/picosat.py
>     [9 tests, 0.01 s]
> sage -t --long src/sage/sat/solvers/sat_lp.py
>     [16 tests, 0.05 s]
> sage -t --long src/sage/sat/solvers/satsolver.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sat/solvers/satsolver.pyx
>     [50 tests, 0.04 s]
> sage -t --long src/sage/schemes/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/affine/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/function_field/function_field.py
>     [862 tests, 332.12 s]
> sage -t --long src/sage/schemes/affine/affine_homset.py
>     [51 tests, 0.86 s]
> sage -t --long src/sage/schemes/affine/affine_point.py
>     [85 tests, 0.50 s]
> sage -t --long src/sage/schemes/affine/affine_morphism.py
>     [252 tests, 1.28 s]
> sage -t --long src/sage/schemes/affine/affine_space.py
>     [170 tests, 1.19 s]
> sage -t --long src/sage/schemes/affine/affine_subscheme.py
>     [94 tests, 0.49 s]
> sage -t --long src/sage/schemes/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/curves/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/affine/affine_rational_point.py
>     [39 tests, 5.96 s]
> sage -t --long src/sage/schemes/curves/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/rings/valuation/augmented_valuation.py
>     [484 tests, 42.53 s]
> sage -t --long src/sage/schemes/curves/affine_curve.py
>     [247 tests, 4.82 s]
> sage -t --long src/sage/schemes/curves/point.py
>     [79 tests, 0.44 s]
> sage -t --long src/sage/schemes/curves/constructor.py
>     [32 tests, 1.37 s]
> sage -t --long src/sage/schemes/curves/zariski_vankampen.py
>     [34 tests, 0.28 s]
> sage -t --long src/sage/schemes/cyclic_covers/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/cyclic_covers/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/cyclic_covers/charpoly_frobenius.py
>     [18 tests, 0.43 s]
> sage -t --long src/sage/schemes/cyclic_covers/constructor.py
>     [15 tests, 0.25 s]
> sage -t --long src/sage/schemes/curves/curve.py
>     [107 tests, 2.21 s]
> sage -t --long src/sage/schemes/cyclic_covers/cycliccover_generic.py
>     [67 tests, 0.35 s]
> sage -t --long src/sage/schemes/elliptic_curves/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/curves/projective_curve.py
>     [331 tests, 9.86 s]
> sage -t --long src/sage/schemes/elliptic_curves/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/elliptic_curves/BSD.py
>     [67 tests, 9.75 s]
> sage -t --long src/sage/schemes/elliptic_curves/cardinality.py
>     [60 tests, 1.81 s]
> sage -t --long src/sage/schemes/elliptic_curves/cm.py
>     [51 tests, 7.38 s]
> sage -t --long src/sage/schemes/elliptic_curves/descent_two_isogeny.pyx
>     [44 tests, 3.39 s]
> sage -t --long src/sage/schemes/elliptic_curves/ec_database.py
>     [9 tests, 0.08 s]
> sage -t --long src/sage/rings/valuation/mapped_valuation.py
>     [183 tests, 76.29 s]
> sage -t --long src/sage/schemes/elliptic_curves/constructor.py
>     [230 tests, 34.00 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_field.py
>     [219 tests, 3.22 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_curve_isogeny.py
>     [988 tests, 30.20 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_generic.py
>     [456 tests, 6.95 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_local_data.py
>     [156 tests, 1.40 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_finite_field.py
>     [280 tests, 15.87 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_egros.py
>     [35 tests, 34.12 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_padic_field.py
>     [8 tests, 0.21 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_point.py
>     [788 tests, 7.88 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_modular_symbols.py
>     [128 tests, 31.63 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_tate_curve.py
>     [64 tests, 1.06 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_torsion.py
>     [72 tests, 2.45 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_wp.py
>     [42 tests, 0.35 s]
> sage -t --long src/sage/schemes/elliptic_curves/formal_group.py
>     [77 tests, 1.62 s]
> sage -t --long src/sage/schemes/elliptic_curves/gal_reps.py
>     [172 tests, 5.83 s]
> sage -t --long src/sage/schemes/cyclic_covers/cycliccover_finite_field.py
>     [162 tests, 135.38 s]
> sage -t --long src/sage/schemes/elliptic_curves/gal_reps_number_field.py
>     [192 tests, 38.95 s]
> sage -t --long src/sage/schemes/elliptic_curves/heegner.py
>     [1122 tests, 41.12 s]
> sage -t --long src/sage/schemes/elliptic_curves/gp_simon.py
>     [16 tests, 95.77 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_number_field.py
>     [806 tests, 168.43 s]
> sage -t --long src/sage/schemes/elliptic_curves/height.py
>     [327 tests, 73.34 s]
> sage -t --long src/sage/schemes/elliptic_curves/jacobian.py
>     [35 tests, 1.08 s]
> sage -t --long src/sage/schemes/elliptic_curves/kodaira_symbol.py
>     [28 tests, 0.02 s]
> sage -t --long src/sage/schemes/elliptic_curves/ell_rational_field.py
>     [847 tests, 182.18 s]
> sage -t --long src/sage/schemes/elliptic_curves/lseries_ell.py
>     [102 tests, 2.76 s]
> sage -t --long src/sage/schemes/elliptic_curves/mod5family.py
>     [2 tests, 0.03 s]
> sage -t --long src/sage/schemes/elliptic_curves/modular_parametrization.py
>     [56 tests, 0.36 s]
> sage -t --long src/sage/schemes/elliptic_curves/isogeny_class.py
>     [152 tests, 44.98 s]
> sage -t --long src/sage/schemes/elliptic_curves/padic_lseries.py
>     [216 tests, 19.73 s]
> sage -t --long src/sage/schemes/elliptic_curves/isogeny_small_degree.py
>     [300 tests, 58.97 s]
> sage -t --long src/sage/schemes/elliptic_curves/period_lattice.py
>     [399 tests, 3.41 s]
> sage -t --long src/sage/schemes/elliptic_curves/padics.py
>     [199 tests, 15.67 s]
> sage -t --long src/sage/schemes/elliptic_curves/period_lattice_region.pyx
>     [181 tests, 4.39 s]
> sage -t --long src/sage/schemes/elliptic_curves/weierstrass_morphism.py
>     [95 tests, 0.11 s]
> sage -t --long src/sage/schemes/elliptic_curves/weierstrass_transform.py
>     [34 tests, 0.28 s]
> sage -t --long src/sage/schemes/generic/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/elliptic_curves/saturation.py
>     [30 tests, 9.40 s]
> sage -t --long src/sage/schemes/generic/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/generic/ambient_space.py
>     [56 tests, 0.06 s]
> sage -t --long src/sage/schemes/generic/divisor.py
>     [79 tests, 0.33 s]
> sage -t --long src/sage/schemes/generic/divisor_group.py
>     [47 tests, 0.04 s]
> sage -t --long src/sage/schemes/generic/glue.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/generic/algebraic_scheme.py
>     [409 tests, 5.50 s]
> sage -t --long src/sage/schemes/generic/hypersurface.py
>     [42 tests, 0.04 s]
> sage -t --long src/sage/schemes/generic/homset.py
>     [131 tests, 0.51 s]
> sage -t --long src/sage/schemes/generic/point.py
>     [35 tests, 0.03 s]
> sage -t --long src/sage/schemes/generic/scheme.py
>     [183 tests, 0.64 s]
> sage -t --long src/sage/schemes/generic/morphism.py
>     [467 tests, 1.02 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/all.py
>     [4 tests, 0.01 s]
> sage -t --long src/sage/schemes/generic/spec.py
>     [32 tests, 0.25 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/hypellfrob.pyx
>     [15 tests, 0.23 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/constructor.py
>     [42 tests, 0.35 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/hyperelliptic_g2.py
>     [46 tests, 0.11 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.py
>     [132 tests, 0.78 s]
> sage -t --long src/sage/schemes/elliptic_curves/kraus.py
>     [142 tests, 71.35 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/hyperelliptic_rational_field.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/invariants.py
>     [71 tests, 0.28 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/jacobian_g2.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/jacobian_generic.py
>     [56 tests, 0.32 s]
> sage -t --long src/sage/schemes/elliptic_curves/sha_tate.py
>     [155 tests, 39.34 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/jacobian_homset.py
>     [46 tests, 0.23 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/kummer_surface.py
>     [5 tests, 0.03 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/mestre.py
>     [21 tests, 0.41 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/jacobian_morphism.py
>     [179 tests, 0.68 s]
> sage -t --long src/sage/schemes/jacobians/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/jacobians/abstract_jacobian.py
>     [56 tests, 0.22 s]
> sage -t --long src/sage/schemes/jacobians/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/plane_conics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/plane_conics/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/plane_conics/con_field.py
>     [180 tests, 0.99 s]
> sage -t --long src/sage/schemes/plane_conics/con_finite_field.py
>     [28 tests, 1.06 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/hyperelliptic_padic_field.py
>     [338 tests, 32.28 s]
> sage -t --long src/sage/schemes/plane_conics/con_prime_finite_field.py
>     [4 tests, 0.03 s]
> sage -t --long src/sage/schemes/plane_conics/con_rational_field.py
>     [42 tests, 1.86 s]
> sage -t --long src/sage/schemes/plane_conics/con_number_field.py
>     [59 tests, 4.67 s]
> sage -t --long src/sage/schemes/plane_conics/constructor.py
>     [15 tests, 0.30 s]
> sage -t --long src/sage/schemes/plane_quartics/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/plane_quartics/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/plane_quartics/quartic_constructor.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/schemes/plane_quartics/quartic_generic.py
>     [13 tests, 0.02 s]
> sage -t --long src/sage/schemes/product_projective/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/product_projective/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/product_projective/homset.py
>     [25 tests, 1.12 s]
> sage -t --long src/sage/schemes/product_projective/morphism.py
>     [109 tests, 0.56 s]
> sage -t --long src/sage/schemes/product_projective/point.py
>     [120 tests, 0.68 s]
> sage -t --long src/sage/schemes/plane_conics/con_rational_function_field.py
>     [76 tests, 5.47 s]
> sage -t --long src/sage/schemes/product_projective/space.py
>     [152 tests, 1.16 s]
> sage -t --long src/sage/schemes/product_projective/rational_point.py
>     [31 tests, 5.04 s]
> sage -t --long src/sage/schemes/projective/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/projective/projective_homset.py
>     [75 tests, 0.88 s]
> sage -t --long src/sage/schemes/product_projective/subscheme.py
>     [67 tests, 4.88 s]
> sage -t --long src/sage/schemes/projective/projective_morphism.py
>     [511 tests, 2.65 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/monsky_washnitzer.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=9107) failed:
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 104 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 105 ##
> sage: R ## line 106 ##
> SpecialCubicQuotientRing over Ring of integers modulo 125 with polynomial T = x^3 + 124*x + 94
> sage: x, T = R.gens() ## line 111 ##
> sage: x ## line 112 ##
> (0) + (1)*x + (0)*x^2
> sage: T ## line 114 ##
> (T) + (0)*x + (0)*x^2
> sage: R(7) ## line 119 ##
> (7) + (0)*x + (0)*x^2
> sage: A = R.poly_ring() ## line 124 ##
> sage: A ## line 125 ##
> Univariate Polynomial Ring in T over Ring of integers modulo 125
> sage: z = A.gen() ## line 127 ##
> sage: R.create_element(z^2, z+1, 3) ## line 128 ##
> (T^2) + (T + 1)*x + (3)*x^2
> sage: x^3 ## line 133 ##
> (T + 31) + (1)*x + (0)*x^2
> sage: 3 * x**15 * T**2 + x - T ## line 135 ##
> (3*T^7 + 90*T^6 + 110*T^5 + 20*T^4 + 58*T^3 + 26*T^2 + 124*T) + (15*T^6 + 110*T^5 + 35*T^4 + 63*T^2 + 1)*x + (30*T^5 + 40*T^4 + 8*T^3 + 38*T^2)*x^2
> sage: x^10 ## line 140 ##
> (3*T^2 + 61*T + 8) + (T^3 + 93*T^2 + 12*T + 40)*x + (3*T^2 + 61*T + 9)*x^2
> sage: (x^10).coeffs() ## line 142 ##
> [[8, 61, 3, 0], [40, 12, 93, 1], [9, 61, 3, 0]]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 150 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 166 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 167 ##
> sage: R ## line 168 ##
> SpecialCubicQuotientRing over Ring of integers modulo 125 with polynomial T = x^3 + 124*x + 94
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 + 2*t^2 - t + B(1/4)) ## line 173 ##
> sage: B.<t> = PolynomialRing(Integers(10)) ## line 180 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + 1) ## line 181 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 185 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 230 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 231 ##
> sage: print(R) ## line 232 ##
> SpecialCubicQuotientRing over Ring of integers modulo 125 with polynomial T = x^3 + 124*x + 94
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 234 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 245 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 246 ##
> sage: R.poly_ring() ## line 247 ##
> Univariate Polynomial Ring in T over Ring of integers modulo 125
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 249 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 264 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 265 ##
> sage: x, T = R.gens() ## line 266 ##
> sage: x ## line 267 ##
> (0) + (1)*x + (0)*x^2
> sage: T ## line 269 ##
> (T) + (0)*x + (0)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 271 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 296 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 297 ##
> sage: A, z = R.poly_ring().objgen() ## line 298 ##
> sage: R.create_element(z^2, z+1, 3) ## line 299 ##
> (T^2) + (T + 1)*x + (3)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 301 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 308 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 309 ##
> sage: R(3) ## line 310 ##
> (3) + (0)*x + (0)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 312 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 319 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 320 ##
> sage: R._coerce_impl(3) ## line 321 ##
> (3) + (0)*x + (0)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 323 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 352 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 353 ##
> sage: from sage.schemes.hyperelliptic_curves.monsky_washnitzer import SpecialCubicQuotientRingElement ## line 354 ##
> sage: SpecialCubicQuotientRingElement(R, 2, 3, 4) ## line 355 ##
> (2) + (3)*x + (4)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 357 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 381 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 382 ##
> sage: p = R.create_element(t, t^2 - 2, 3) ## line 383 ##
> sage: p.coeffs() ## line 384 ##
> [[0, 1, 0], [123, 0, 1], [3, 0, 0]]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 386 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 398 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 399 ##
> sage: x, T = R.gens() ## line 400 ##
> sage: not x ## line 401 ##
> False
> sage: not T ## line 403 ##
> False
> sage: not R.create_element(0, 0, 0) ## line 405 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 407 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 416 ##
> sage: x, t = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)).gens() ## line 417 ##
> sage: x == t ## line 418 ##
> False
> sage: x == x ## line 420 ##
> True
> sage: x == x + x - x ## line 422 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 424 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 431 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 432 ##
> sage: x, T = R.gens() ## line 433 ##
> sage: x + T*x - 2*T^2 ## line 434 ##
> (123*T^2) + (T + 1)*x + (0)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 436 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 443 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 444 ##
> sage: x, T = R.gens() ## line 445 ##
> sage: f = x + T*x - 2*T^2 ## line 446 ##
> sage: latex(f) ## line 447 ##
> (123 T^{2}) + (T + 1)x + (0)x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 449 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 457 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 458 ##
> sage: f = R.create_element(2, t, t^2 - 3) ## line 459 ##
> sage: g = R.create_element(3 + t, -t, t) ## line 460 ##
> sage: f + g ## line 461 ##
> (T + 5) + (0)*x + (T^2 + T + 122)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 463 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 474 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 475 ##
> sage: f = R.create_element(2, t, t^2 - 3) ## line 476 ##
> sage: g = R.create_element(3 + t, -t, t) ## line 477 ##
> sage: f - g ## line 478 ##
> (124*T + 124) + (2*T)*x + (T^2 + 124*T + 122)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 480 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 493 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 494 ##
> sage: f = R.create_element(2, t, t^2 - 3) ## line 495 ##
> sage: f ## line 496 ##
> (2) + (T)*x + (T^2 + 122)*x^2
> sage: f.shift(1) ## line 498 ##
> (2*T) + (T^2)*x + (T^3 + 122*T)*x^2
> sage: f.shift(2) ## line 500 ##
> (2*T^2) + (T^3)*x + (T^4 + 122*T^2)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 502 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 521 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 522 ##
> sage: x, T = R.gens() ## line 523 ##
> sage: f = R.create_element(2, t, t^2 - 3) ## line 524 ##
> sage: f ## line 525 ##
> (2) + (T)*x + (T^2 + 122)*x^2
> sage: f.scalar_multiply(2) ## line 527 ##
> (4) + (2*T)*x + (2*T^2 + 119)*x^2
> sage: f.scalar_multiply(t) ## line 529 ##
> (2*T) + (T^2)*x + (T^3 + 122*T)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 531 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 545 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 546 ##
> sage: x, T = R.gens() ## line 547 ##
> sage: f = R.create_element(1 + 2*t + 3*t^2, 4 + 7*t + 9*t^2, 3 + 5*t + 11*t^2) ## line 551 ##
> sage: f.square() ## line 552 ##
> (73*T^5 + 16*T^4 + 38*T^3 + 39*T^2 + 70*T + 120) + (121*T^5 + 113*T^4 + 73*T^3 + 8*T^2 + 51*T + 61)*x + (18*T^4 + 60*T^3 + 22*T^2 + 108*T + 31)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 554 ##
> 0
> sage: B.<t> = PolynomialRing(Integers(125)) ## line 561 ##
> sage: R = monsky_washnitzer.SpecialCubicQuotientRing(t^3 - t + B(1/4)) ## line 562 ##
> sage: x, T = R.gens() ## line 563 ##
> sage: f = R.create_element(1 + 2*t + 3*t^2, 4 + 7*t + 9*t^2, 3 + 5*t + 11*t^2) ## line 567 ##
> sage: g = R.create_element(4 + 3*t + 7*t^2, 2 + 3*t + t^2, 8 + 4*t + 6*t^2) ## line 568 ##
> sage: f * g ## line 569 ##
> (65*T^5 + 27*T^4 + 33*T^3 + 75*T^2 + 120*T + 57) + (66*T^5 + T^4 + 123*T^3 + 95*T^2 + 24*T + 50)*x + (45*T^4 + 75*T^3 + 37*T^2 + 2*T + 52)*x^2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 571 ##
> 0
> sage: from sage.schemes.hyperelliptic_curves.monsky_washnitzer import transpose_list ## line 644 ##
> sage: L = [[1, 2], [3, 4], [5, 6]] ## line 645 ##
> sage: transpose_list(L) ## line 646 ##
> [[1, 3, 5], [2, 4, 6]]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 648 ##
> 0
> sage: t = polygen(QQ,'t') ## line 674 ##
> sage: from sage.schemes.hyperelliptic_curves.monsky_washnitzer import helper_matrix ## line 675 ##
> sage: helper_matrix(t**3-4*t-691) ## line 676 ##
> [     64/12891731  -16584/12891731 4297329/12891731]
> [   6219/12891731     -32/12891731    8292/12891731]
> [    -24/12891731    6219/12891731     -32/12891731]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 680 ##
> 0
> sage: from sage.schemes.hyperelliptic_curves.monsky_washnitzer import lift ## line 711 ##
> sage: l = lift(Qp(13)(131)); l ## line 712 ##
> 131
> sage: l.parent() ## line 714 ##
> Integer Ring
> sage: x=PowerSeriesRing(Qp(17),'x').gen() ## line 717 ##
> sage: l = lift(4+5*x+17*x**6); l ## line 718 ##
> 4 + 5*t + 17*t^6
> sage: l.parent() ## line 720 ##
> Power Series Ring in t over Rational Field
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 722 ##
> 0
> sage: R.<x> = Integers(5^3)['x'] ## line 752 ##
> sage: Q = x^3 - x + R(1/4) ## line 753 ##
> sage: coeffs = [[10, 15, 20], [1, 2, 3], [4, 5, 6], [7, 8, 9]] ## line 754 ##
> sage: coeffs = [[R.base_ring()(a) for a in row] for row in coeffs] ## line 755 ##
> sage: monsky_washnitzer.reduce_negative(Q, 5, coeffs, 3) ## line 756 ##
> sage: coeffs[3] ## line 757 ##
> [28, 52, 9]
> sage: R.<x> = Integers(7^3)['x'] ## line 762 ##
> sage: Q = x^3 - x + R(1/4) ## line 763 ##
> sage: coeffs = [[7, 14, 21], [1, 2, 3], [4, 5, 6], [7, 8, 9]] ## line 764 ##
> sage: coeffs = [[R.base_ring()(a) for a in row] for row in coeffs] ## line 765 ##
> sage: monsky_washnitzer.reduce_negative(Q, 7, coeffs, 3) ## line 766 ##
> sage: coeffs[3] ## line 767 ##
> [245, 332, 9]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 769 ##
> 0
> sage: R.<x> = Integers(5^3)['x'] ## line 853 ##
> sage: Q = x^3 - x + R(1/4) ## line 854 ##
> sage: coeffs = [[1, 2, 3], [10, 15, 20]] ## line 858 ##
> sage: coeffs = [[R.base_ring()(a) for a in row] for row in coeffs] ## line 859 ##
> sage: monsky_washnitzer.reduce_positive(Q, 5, coeffs, 0) ## line 860 ##
> sage: coeffs[0] ## line 861 ##
> [16, 102, 88]
> sage: coeffs = [[9, 8, 7], [10, 15, 20]] ## line 866 ##
> sage: coeffs = [[R.base_ring()(a) for a in row] for row in coeffs] ## line 867 ##
> sage: monsky_washnitzer.reduce_positive(Q, 5, coeffs, 0) ## line 868 ##
> sage: coeffs[0] ## line 869 ##
> [24, 108, 92]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 871 ##
> 0
> sage: R.<x> = Integers(5^3)['x'] ## line 945 ##
> sage: Q = x^3 - x + R(1/4) ## line 946 ##
> sage: coeffs = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] ## line 947 ##
> sage: coeffs = [[R.base_ring()(a) for a in row] for row in coeffs] ## line 948 ##
> sage: monsky_washnitzer.reduce_zero(Q, coeffs, 1) ## line 949 ##
> sage: coeffs[1] ## line 950 ##
> [6, 5, 0]
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 952 ##
> 0
> sage: R.<x> = Integers(5^3)['x'] ## line 1004 ##
> sage: Q = x^3 - x + R(1/4) ## line 1005 ##
> sage: coeffs = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] ## line 1006 ##
> sage: coeffs = [[R.base_ring()(a) for a in row] for row in coeffs] ## line 1007 ##
> sage: monsky_washnitzer.reduce_all(Q, 5, coeffs, 1) ## line 1008 ##
> (21, 106)
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1010 ##
> 0
> sage: from sage.schemes.hyperelliptic_curves.monsky_washnitzer import frobenius_expansion_by_newton ## line 1087 ##
> sage: R.<x> = Integers(5^3)['x'] ## line 1088 ##
> sage: Q = x^3 - x + R(1/4) ## line 1089 ##
> sage: frobenius_expansion_by_newton(Q,5,3) ## line 1090 ##
> ((25*T^5 + 75*T^3 + 100*T^2 + 100*T + 100) + (5*T^6 + 80*T^5 + 100*T^3 + 25*T + 50)*x + (55*T^5 + 50*T^4 + 75*T^3 + 25*T^2 + 25*T + 25)*x^2,
>  (5*T^8 + 15*T^7 + 95*T^6 + 10*T^5 + 25*T^4 + 25*T^3 + 100*T^2 + 50) + (65*T^7 + 55*T^6 + 70*T^5 + 100*T^4 + 25*T^2 + 100*T)*x + (15*T^6 + 115*T^5 + 75*T^4 + 100*T^3 + 50*T^2 + 75*T + 75)*x^2,
>  7)
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1096 ##
> 0
> sage: from sage.schemes.hyperelliptic_curves.monsky_washnitzer import frobenius_expansion_by_series ## line 1275 ##
> sage: R.<x> = Integers(5^3)['x'] ## line 1276 ##
> sage: Q = x^3 - x + R(1/4) ## line 1277 ##
> sage: frobenius_expansion_by_series(Q,5,3) ## line 1278 ##
> ((25*T^5 + 75*T^3 + 100*T^2 + 100*T + 100) + (5*T^6 + 80*T^5 + 100*T^3 + 25*T + 50)*x + (55*T^5 + 50*T^4 + 75*T^3 + 25*T^2 + 25*T + 25)*x^2,
>  (5*T^8 + 15*T^7 + 95*T^6 + 10*T^5 + 25*T^4 + 25*T^3 + 100*T^2 + 50) + (65*T^7 + 55*T^6 + 70*T^5 + 100*T^4 + 25*T^2 + 100*T)*x + (15*T^6 + 115*T^5 + 75*T^4 + 100*T^3 + 50*T^2 + 75*T + 75)*x^2,
>  7)
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1284 ##
> 0
> sage: from sage.schemes.hyperelliptic_curves.monsky_washnitzer import adjusted_prec ## line 1355 ##
> sage: adjusted_prec(5,2) ## line 1356 ##
> 3
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1358 ##
> 0
> sage: p = 5 ## line 1417 ##
> sage: prec = 3 ## line 1418 ##
> sage: M = monsky_washnitzer.adjusted_prec(p, prec); M ## line 1419 ##
> 4
> sage: R.<x> = PolynomialRing(Integers(p**M)) ## line 1421 ##
> sage: A = monsky_washnitzer.matrix_of_frobenius(x^3 - x + R(1/4), p, M) ## line 1422 ##
> sage: A ## line 1423 ##
> [340  62]
> [ 70 533]
> sage: B = A.change_ring(Integers(p**prec)) ## line 1429 ##
> sage: B ## line 1430 ##
> [90 62]
> [70 33]
> sage: B.det() ## line 1436 ##
> 5
> sage: B.trace() ## line 1438 ##
> 123
> sage: EllipticCurve([-1, 1/4]).ap(5) ## line 1440 ##
> -2
> sage: A = monsky_washnitzer.matrix_of_frobenius(x^3 - x + R(1/4),
>                                           p, M, -2) ## line 1445 ##
> sage: A ## line 1447 ##
> [ 90  62]
> [320 533]
> sage: A.change_ring(Integers(p**prec)) ## line 1455 ##
> [90 62]
> [70 33]
> sage: p = 5 ## line 1461 ##
> sage: prec = 1 ## line 1462 ##
> sage: M = monsky_washnitzer.adjusted_prec(p, prec) ## line 1463 ##
> sage: R.<x> = PolynomialRing(Integers(p**M)) ## line 1464 ##
> sage: A = monsky_washnitzer.matrix_of_frobenius(x^3 - x + R(1/4), p, M) ## line 1465 ##
> sage: A.change_ring(Integers(p)) ## line 1466 ##
> [0 2]
> [0 3]
> sage: p = 11 ## line 1473 ##
> sage: prec = 3 ## line 1474 ##
> sage: M = monsky_washnitzer.adjusted_prec(p, prec) ## line 1475 ##
> sage: R.<x> = PolynomialRing(Integers(p**M)) ## line 1476 ##
> sage: A = monsky_washnitzer.matrix_of_frobenius(x^3 + 7*x + 8, p, M) ## line 1477 ##
> sage: A.change_ring(Integers(p**prec)) ## line 1478 ##
> [1144  176]
> [ 847  185]
> sage: A = monsky_washnitzer.matrix_of_frobenius(x^3 + 7*x + 8, p, M, -2) ## line 1491 ##
> sage: A.change_ring(Integers(p**prec)) ## line 1492 ##
> [1144  176]
> [ 847  185]
> sage: p = 10007 ## line 1500 ##
> sage: prec = 2 ## line 1501 ##
> sage: M = monsky_washnitzer.adjusted_prec(p, prec) ## line 1502 ##
> sage: R.<x> = PolynomialRing(Integers(p**M)) ## line 1503 ##
> sage: A = monsky_washnitzer.matrix_of_frobenius(            # long time
>                           x^3 - x + R(1/4), p, M)     # long time ## line 1504 ##
> sage: B = A.change_ring(Integers(p**prec)); B               # long time ## line 1506 ##
> [74311982 57996908]
> [95877067 25828133]
> sage: B.det()                                               # long time ## line 1509 ##
> 10007
> sage: B.trace()                                             # long time ## line 1511 ##
> 66
> sage: EllipticCurve([-1, 1/4]).ap(10007)                    # long time ## line 1513 ##
> 66
> sage: p = 5 ## line 1518 ##
> sage: prec = 300 ## line 1519 ##
> sage: M = monsky_washnitzer.adjusted_prec(p, prec) ## line 1520 ##
> sage: R.<x> = PolynomialRing(Integers(p**M)) ## line 1521 ##
> sage: A = monsky_washnitzer.matrix_of_frobenius(            # long time
>                           x^3 - x + R(1/4), p, M)     # long time ## line 1522 ##
> sage: B = A.change_ring(Integers(p**prec))                  # long time ## line 1524 ##
> sage: B.det()                                               # long time ## line 1525 ##
> 5
> sage: -B.trace()                                            # long time ## line 1527 ##
> 2
> sage: EllipticCurve([-1, 1/4]).ap(5)                        # long time ## line 1529 ##
> -2
> sage: p = 5 ## line 1534 ##
> sage: max_prec = 60 ## line 1535 ##
> sage: M = monsky_washnitzer.adjusted_prec(p, max_prec) ## line 1536 ##
> sage: R.<x> = PolynomialRing(Integers(p**M)) ## line 1537 ##
> sage: A = monsky_washnitzer.matrix_of_frobenius(x^3 - x + R(1/4), p, M)         # long time ## line 1538 ##
> sage: A = A.change_ring(Integers(p**max_prec))              # long time ## line 1539 ##
> sage: result = []                                           # long time ## line 1540 ##
> sage: for prec in range(1, max_prec):                       # long time
>     M = monsky_washnitzer.adjusted_prec(p, prec)      # long time
>     R.<x> = PolynomialRing(Integers(p^M),'x')         # long time
>     B = monsky_washnitzer.matrix_of_frobenius(        # long time
>                       x^3 - x + R(1/4), p, M)         # long time
>     B = B.change_ring(Integers(p**prec))              # long time
>     result.append(B == A.change_ring(                 # long time
>                              Integers(p**prec)))      # long time ## line 1541 ##
> sage: result == [True] * (max_prec - 1)                     # long time ## line 1549 ##
> True
> sage: p = 11 ## line 1560 ##
> sage: prec = 3 ## line 1561 ##
> sage: M = monsky_washnitzer.adjusted_prec(p, prec) ## line 1562 ##
> sage: S.<t> = PowerSeriesRing(Integers(p**M), default_prec=4) ## line 1563 ##
> sage: a = 7 + t + 3*t^2 ## line 1564 ##
> sage: b = 8 - 6*t + 17*t^2 ## line 1565 ##
> sage: R.<x> = PolynomialRing(S) ## line 1566 ##
> sage: Q = x**3 + a*x + b ## line 1567 ##
> sage: A = monsky_washnitzer.matrix_of_frobenius(Q, p, M)    # long time ## line 1568 ##
> sage: B = A.change_ring(PowerSeriesRing(Integers(p**prec), 't', default_prec=4))        # long time ## line 1569 ##
> sage: B                                                     # long time ## line 1570 ##
> [1144 + 264*t + 841*t^2 + 1025*t^3 + O(t^4)  176 + 1052*t + 216*t^2 + 523*t^3 + O(t^4)]
> [   847 + 668*t + 81*t^2 + 424*t^3 + O(t^4)   185 + 341*t + 171*t^2 + 642*t^3 + O(t^4)]
> sage: B.det()                                               # long time ## line 1581 ##
> 11 + 484*t^2 + 451*t^3 + O(t^4)
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 1589 ##
> 0
> sage: p = 5 ## line 1765 ##
> sage: prec = 3 ## line 1766 ##
> sage: R.<x> = QQ['x'] ## line 1767 ##
> sage: A,f = monsky_washnitzer.matrix_of_frobenius_hyperelliptic(x^5 - 2*x + 3, p, prec) ## line 1768 ##
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so(+0x8386d)[0x7fade845f86d]
> /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so(flint_throw+0xf3)[0x7fade845f963]
> /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so(_nmod_poly_rem_q1+0xc1)[0x7fade85430d1]
> /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so(_nmod_poly_rem+0x19d)[0x7fade85424cd]
> /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so(_nmod_poly_gcd_euclidean+0x60)[0x7fade852dac0]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(nmod_poly_gcd+0xb5)[0x7fadace50685]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/rings/polynomial/polynomial_zmod_flint.cpython-38-x86_64-linux-gnu.so(+0x113ac)[0x7fad9f2f13ac]
> python3[0x5006b6]
> python3(PyVectorcall_Call+0x189)[0x5f1da9]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/element.cpython-38-x86_64-linux-gnu.so(+0x12658)[0x7fadeb17f658]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/structure/element.cpython-38-x86_64-linux-gnu.so(+0x2fc32)[0x7fadeb19cc32]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3[0x5071b7]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x6f6)[0x5672f6]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3[0x597ed8]
> python3[0x5a2a43]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/classcall_metaclass.cpython-38-x86_64-linux-gnu.so(+0x8d51)[0x7fadea793d51]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyEval_EvalFrameDefault+0x6560)[0x56d160]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_FastCallDict+0x1b1)[0x4e7050]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/cachefunc.cpython-38-x86_64-linux-gnu.so(+0x3a23e)[0x7fadea71223e]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/misc/classcall_metaclass.cpython-38-x86_64-linux-gnu.so(+0xa45b)[0x7fadea79545b]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x5fb770]
> python3[0x5c066c]
> python3(_PyEval_EvalFrameDefault+0x6f6)[0x5672f6]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Flint exception (Impossible inverse):
>     Cannot invert modulo 5*0
> Attaching gdb to process id 9107.
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> [New LWP 9125]
> [New LWP 9126]
> [New LWP 9127]
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fade845f86d in flint_abort ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so
> No symbol table info available.
> #8  0x00007fade845f963 in flint_throw ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so
> No symbol table info available.
> #9  0x00007fade85430d1 in _nmod_poly_rem_q1 ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so
> No symbol table info available.
> #10 0x00007fade85424cd in _nmod_poly_rem ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so
> No symbol table info available.
> #11 0x00007fade852dac0 in _nmod_poly_gcd_euclidean ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so
> No symbol table info available.
> #12 0x00007fadace50685 in nmod_poly_gcd ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #13 0x00007fad9f2f13ac in __pyx_f_4sage_5rings_10polynomial_21polynomial_zmod_flint_celement_gcd (__pyx_v_n=<optimized out>, __pyx_v_b=0x7fad9c563b78, 
>     __pyx_v_a=0x7fad9c563a78, __pyx_v_res=0x7fad9c563bf8)
>     at build/cythonized/sage/rings/polynomial/polynomial_zmod_flint.cpp:5703
>         __pyx_t_2 = 0
>         __pyx_v_leadcoeff = <optimized out>
>         __pyx_v_modulus = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = 0
>         __pyx_v_leadcoeff = <optimized out>
>         __pyx_v_modulus = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
> #14 __pyx_pf_4sage_5rings_10polynomial_21polynomial_zmod_flint_19Polynomial_template_20gcd (__pyx_v_other=0x7fad9c563b40, __pyx_v_self=0x7fad9c563a40)
>     at build/cythonized/sage/rings/polynomial/polynomial_zmod_flint.cpp:9643
>         __pyx_t_3 = 0x0
>         __pyx_t_6 = <optimized out>
>         __pyx_v_T = 0x7fad9f32f580 <__pyx_type_4sage_5rings_10polynomial_21polynomial_zmod_flint_Polynomial_zmod_flint>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_4 = 0x0
>         __pyx_v_r = 0x7fad9c563bc0
>         __pyx_t_2 = <optimized out>
>         __pyx_t_5 = <optimized out>
>         __pyx_v_T = <optimized out>
>         __pyx_v_r = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_t_5 = <optimized out>
>         __pyx_t_6 = <optimized out>
> #15 __pyx_pw_4sage_5rings_10polynomial_21polynomial_zmod_flint_19Polynomial_template_21gcd (__pyx_v_self=0x7fad9c563a40, __pyx_v_other=0x7fad9c563b40)
>     at build/cythonized/sage/rings/polynomial/polynomial_zmod_flint.cpp:9489
>         __pyx_r = 0x0
> #16 0x00000000005006b6 in ?? ()
> No symbol table info available.
> #17 0x00000000005f1da9 in PyVectorcall_Call ()
> No symbol table info available.
> #18 0x00007fadeb17f658 in __Pyx_PyObject_Call (func=0x7fad9f786ae0, 
>     arg=0x7fad9c566940, kw=0x7fad9c566540)
>     at build/cythonized/sage/structure/element.c:35447
>         result = <optimized out>
>         call = 0x5f1c20 <PyVectorcall_Call>
> #19 0x00007fadeb19cc32 in __pyx_pf_4sage_9structure_7element_12coerce_binop_new_method (__pyx_v_kwargs=0x7fad9c566540, __pyx_v_args=0x7fadeb545040, 
>     __pyx_v_other=0x7fad9c563b40, __pyx_v_self=0x7fad9c563a40, 
>     __pyx_self=0x7fad9f38cc40)
>     at build/cythonized/sage/structure/element.c:26670
>         __pyx_cur_scope = 0x7fad9f331b20
>         __pyx_v_b = 0x0
>         __pyx_t_4 = 0x0
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_5 = 0x0
>         __pyx_t_2 = 0x0
>         __pyx_t_6 = <optimized out>
>         __pyx_outer_scope = 0x7fad9f331b20
>         __pyx_v_a = 0x0
>         __pyx_t_3 = 0x7fad9c566940
>         __pyx_t_7 = <optimized out>
>         __pyx_cur_scope = <optimized out>
>         __pyx_outer_scope = <optimized out>
>         __pyx_v_a = <optimized out>
>         __pyx_v_b = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_t_5 = <optimized out>
>         __pyx_t_6 = <optimized out>
>         __pyx_t_7 = <optimized out>
>         sequence = <optimized out>
>         size = <optimized out>
>         index = <optimized out>
> #20 __pyx_pw_4sage_9structure_7element_12coerce_binop_1new_method (
>     __pyx_self=0x7fad9f38cc40, __pyx_args=<optimized out>, 
>     __pyx_kwds=<optimized out>)
>     at build/cythonized/sage/structure/element.c:26613
>         __pyx_v_self = 0x7fad9c563a40
>         __pyx_v_other = 0x7fad9c563b40
>         __pyx_v_args = 0x7fadeb545040
>         __pyx_v_kwargs = 0x7fad9c566540
>         __pyx_r = 0x0
> #21 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #22 0x00000000005071b7 in ?? ()
> No symbol table info available.
> #23 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #24 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #25 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #26 0x00000000005672f6 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #27 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #28 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #29 0x0000000000597ed8 in ?? ()
> No symbol table info available.
> #30 0x00000000005a2a43 in ?? ()
> No symbol table info available.
> #31 0x00007fadea793d51 in __pyx_pf_4sage_4misc_19classcall_metaclass_typecall
>     (__pyx_self=<optimized out>, __pyx_v_kwds=0x7fad9c5f06c0, 
>     __pyx_v_args=0x7fad9c566f00, __pyx_v_cls=<optimized out>)
>     at build/cythonized/sage/misc/classcall_metaclass.c:2163
>         __pyx_r = 0x0
>         __pyx_t_1 = 0x0
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
> #32 __pyx_pw_4sage_4misc_19classcall_metaclass_1typecall (
>     __pyx_self=<optimized out>, __pyx_args=0x7fad9c67d6d0, 
>     __pyx_kwds=0x7fad9c566880)
>     at build/cythonized/sage/misc/classcall_metaclass.c:2136
>         __pyx_v_cls = <optimized out>
>         __pyx_v_args = 0x7fad9c566f00
>         __pyx_v_kwds = 0x7fad9c5f06c0
>         __pyx_r = 0x0
> #33 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #34 0x000000000056d160 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #35 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #36 0x00000000004e7050 in _PyFunction_FastCallDict ()
> No symbol table info available.
> #37 0x00007fadea71223e in __Pyx_PyObject_Call (kw=0x7fad9c5f4e80, 
>     arg=0x7fad9c67d7c0, func=0x7fadea7dbe50)
>     at build/cythonized/sage/misc/cachefunc.c:24601
>         result = <optimized out>
>         call = <optimized out>
>         result = <optimized out>
>         call = <optimized out>
> #38 __pyx_pf_4sage_4misc_9cachefunc_14CachedFunction_14__call__ (
>     __pyx_v_kwds=0x7fad9c5f4e80, __pyx_v_args=0x7fad9c67d7c0, 
>     __pyx_v_self=0x7fadea663200)
>     at build/cythonized/sage/misc/cachefunc.c:5989
>         __pyx_tstate = 0x14bc600
>         __pyx_v_k = 0x7fad9c566a40
>         __pyx_t_2 = <optimized out>
>         __pyx_t_7 = <optimized out>
>         __pyx_t_11 = 0x0
>         __pyx_t_3 = <optimized out>
>         __pyx_t_8 = <optimized out>
>         __pyx_v_w = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_t_9 = 0x7fad9c6c9ae0
>         __pyx_r = 0x0
>         __pyx_t_5 = <optimized out>
>         __pyx_t_1 = 0x7fad9c569200
>         __pyx_t_6 = <optimized out>
>         __pyx_t_10 = 0x8ee340
>         __pyx_v_k = <optimized out>
>         __pyx_v_w = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_t_5 = <optimized out>
>         __pyx_t_6 = <optimized out>
>         __pyx_t_7 = <optimized out>
>         __pyx_t_8 = <optimized out>
>         __pyx_t_9 = <optimized out>
>         __pyx_t_10 = <optimized out>
>         __pyx_t_11 = <optimized out>
>         __pyx_tstate = <optimized out>
>         __pyx_tstate = <optimized out>
>         tmp = <optimized out>
> #39 __pyx_pw_4sage_4misc_9cachefunc_14CachedFunction_15__call__ (
>     __pyx_v_self=0x7fadea663200, __pyx_args=0x7fad9c67d7c0, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/misc/cachefunc.c:5784
>         __pyx_v_args = 0x7fad9c67d7c0
>         __pyx_v_kwds = 0x7fad9c5f4e80
>         __pyx_r = 0x0
> #40 0x00007fadea79545b in __Pyx_PyObject_Call (kw=0x7fad9c5f4680, 
>     arg=0x7fad9c67d7c0, func=0x7fadea663200)
>     at build/cythonized/sage/misc/classcall_metaclass.c:3900
>         result = <optimized out>
>         call = 0x7fadea711930 <__pyx_pw_4sage_4misc_9cachefunc_14CachedFunction_15__call__>
>         result = <optimized out>
>         call = <optimized out>
> #41 __pyx_pf_4sage_4misc_19classcall_metaclass_18ClasscallMetaclass_4__call__
>     (__pyx_v_kwds=0x7fad9c5f4680, __pyx_v_args=0x7fad9c5f0ac0, 
>     __pyx_v_cls=<optimized out>)
>     at build/cythonized/sage/misc/classcall_metaclass.c:1713
>         __pyx_t_2 = <optimized out>
>         __pyx_t_4 = 0x7fad9c67d7c0
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = 0x0
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
> #42 __pyx_pw_4sage_4misc_19classcall_metaclass_18ClasscallMetaclass_5__call__
>     (__pyx_v_cls=<optimized out>, __pyx_args=0x7fad9c5f0ac0, 
>     __pyx_kwds=<optimized out>)
>     at build/cythonized/sage/misc/classcall_metaclass.c:1668
>         __pyx_v_args = 0x7fad9c5f0ac0
>         __pyx_v_kwds = 0x7fad9c5f4680
>         __pyx_r = 0x0
> #43 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #44 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #45 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #46 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #47 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #49 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #50 0x00000000005fb770 in ?? ()
> No symbol table info available.
> #51 0x00000000005c066c in ?? ()
> No symbol table info available.
> #52 0x00000000005672f6 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #53 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #54 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #55 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #56 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #57 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #58 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #59 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #60 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #61 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #62 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #63 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #64 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #66 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #67 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #68 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #69 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #70 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #71 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #72 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #73 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #74 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #75 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #76 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #77 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #78 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #79 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #80 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #81 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #82 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #83 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #84 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #85 0x0000000000506976 in ?? ()
> No symbol table info available.
> #86 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #87 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #88 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #89 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #90 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #91 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #92 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #93 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #94 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #95 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #96 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #97 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #98 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #99 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #100 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #101 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #102 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #103 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #104 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #105 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #106 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #107 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #108 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x00007fade845f860 in flint_abort ()
> #8  0x00007fade845f870 in flint_throw ()
> #9  0x00007fade8543010 in _nmod_poly_rem_q1 ()
> #10 0x00007fade8542330 in _nmod_poly_rem ()
> #11 0x00007fade852da60 in _nmod_poly_gcd_euclidean ()
> #12 0x00007fade852d8b0 in nmod_poly_gcd ()
> #13 0x00007fad9f2f12c0 in celement_gcd () at /<<PKGBUILDDIR>>/sage/src/sage/rings/polynomial/polynomial_zmod_flint.pyx:577
>    572            cdef Polynomial_zmod_flint ans
>    573            ans = self._new()
>    574            nmod_poly_pow_trunc(&ans.x, &self.x, n, prec)
>    575            return ans
>    576    
> >  577        cpdef rational_reconstruct(self, m, n_deg=0, d_deg=0):
>    578            """
>    579            Construct a rational function n/d such that `p*d` is equivalent to `n`
>    580            modulo `m` where `p` is this polynomial.
>    581    
> #14 0x00007fad9f2f123e in __pyx_pf_4sage_5rings_10polynomial_21polynomial_zmod_flint_19Polynomial_template_20gcd () at ./sage/src/build/cythonized/sage/rings/polynomial/polynomial_zmod_flint.cpp:9643
> #15 0x00007fad9f2f1210 in gcd () at /<<PKGBUILDDIR>>/sage/src/sage/rings/polynomial/polynomial_zmod_flint.pyx:342
>    337                sage: R.<x> = GF(19)['x']
>    338                sage: f = x^3 + x + 1;  g = x^3 - x - 1
>    339                sage: r = f.resultant(g); r
>    340                11
>    341                sage: r.parent() is GF(19)
> >  342                True
>    343    
>    344            The following example shows that :trac:`11782` has been fixed::
>    345    
>    346                sage: R.<x> = ZZ.quo(9)['x']
> #16 0x0000000000000000 in ?? ()
> #17 0x00000000005f1c20 in PyVectorcall_Call ()
> #18 0x00007fadeb17f605 in __Pyx_PyObject_Call () at ./sage/src/build/cythonized/sage/structure/element.c:35447
> #19 0x00007fadeb19cb1d in __pyx_pf_4sage_9structure_7element_12coerce_binop_new_method () at ./sage/src/build/cythonized/sage/structure/element.c:26670
> #20 0x00007fadeb19c944 in new_method () at /<<PKGBUILDDIR>>/sage/src/sage/structure/element.pyx:4274
>   4269            Traceback (most recent call last):
>   4270            ...
>   4271            TypeError: algorithm 1 not supported
>   4272        """
>   4273        @sage_wraps(method)
> > 4274        def new_method(self, other, *args, **kwargs):
>   4275            if have_same_parent(self, other):
>   4276                return method(self, other, *args, **kwargs)
>   4277            else:
>   4278                a, b = coercion_model.canonical_coercion(self, other)
> #21 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #22 0x0000000000000000 in ?? ()
> #23 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #24 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #25 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #26 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #27 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #28 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #29 0x0000000000000000 in ?? ()
> #30 0x0000000000000000 in ?? ()
> #31 0x00007fadea793d3e in __pyx_pf_4sage_4misc_19classcall_metaclass_typecall () at ./sage/src/build/cythonized/sage/misc/classcall_metaclass.c:2163
> #32 0x00007fadea793cb0 in typecall () at /<<PKGBUILDDIR>>/sage/src/sage/misc/classcall_metaclass.pyx:472
>    467                return cls.classcontains(cls, x)
>    468            else:
>    469                return x in object
>    470    
>    471    
> >  472    def typecall(pytype cls, *args, **kwds):
>    473        r"""
>    474        Object construction
>    475    
>    476        This is a faster equivalent to ``type.__call__(cls, <some arguments>)``.
> #33 0x00000000005f1ed0 in PyCFunction_Call ()
> #34 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #35 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #36 0x00000000004e6e9f in _PyFunction_FastCallDict ()
> #37 0x00007fadea7121f8 in __Pyx_PyObject_Call () at ./sage/src/build/cythonized/sage/misc/cachefunc.c:24601
> #38 0x00007fadea711973 in __pyx_pf_4sage_4misc_9cachefunc_14CachedFunction_14__call__ () at ./sage/src/build/cythonized/sage/misc/cachefunc.c:5989
> #39 0x00007fadea711930 in __call__ () at /<<PKGBUILDDIR>>/sage/src/sage/misc/cachefunc.pyx:954
>    949                False))
>    950    
>    951            """
>    952            return sage_getargspec(self.f)
>    953    
> >  954        def __call__(self, *args, **kwds):
>    955            """
>    956            Return value from cache or call the wrapped function,
>    957            caching the output.
>    958    
> #40 0x00007fadea79541e in __Pyx_PyObject_Call () at ./sage/src/build/cythonized/sage/misc/classcall_metaclass.c:3900
> #41 0x00007fadea7953c3 in __pyx_pf_4sage_4misc_19classcall_metaclass_18ClasscallMetaclass_4__call__ () at ./sage/src/build/cythonized/sage/misc/classcall_metaclass.c:1713
> #42 0x00007fadea795390 in __call__ () at /<<PKGBUILDDIR>>/sage/src/sage/misc/classcall_metaclass.pyx:165
>    160                sage: BAR()
>    161                1
>    162            """
>    163            cls.classcall = function
>    164    
> >  165        def __call__(cls, *args, **kwds):
>    166            r"""
>    167            This method implements ``cls(<some arguments>)``.
>    168    
>    169            Let ``cls`` be a class in :class:`ClasscallMetaclass`, and
> #43 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #44 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #45 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #46 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #49 0x00000000006857d0 in PyEval_EvalCode ()
> #50 0x0000000000000000 in ?? ()
> #51 0x0000000000000000 in ?? ()
> #52 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #53 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #54 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #55 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #56 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #57 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #58 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #59 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #60 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #61 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #62 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #63 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #66 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #67 0x0000000000000000 in ?? ()
> #68 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #69 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #70 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #71 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #72 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #73 0x0000000000000000 in ?? ()
> #74 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #75 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #76 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #77 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #78 0x0000000000000000 in ?? ()
> #79 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #80 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #81 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #82 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #83 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #84 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #85 0x0000000000000000 in ?? ()
> #86 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #87 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #88 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #89 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #90 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #91 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #92 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #93 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #94 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #95 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #96 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #97 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #98 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #99 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #100 0x00000000006857d0 in PyEval_EvalCode ()
> #101 0x0000000000000000 in ?? ()
> #102 0x0000000000000000 in ?? ()
> #103 0x0000000000674bf0 in PyRun_FileExFlags ()
> #104 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #105 0x00000000006ae6f0 in Py_RunMain ()
> #106 0x00000000006aec60 in Py_BytesMain ()
> #107 0x00007fadeb79cd20 in __libc_start_main ()
> #108 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 9107) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_ay_49nfo.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> 
> **********************************************************************
> sage -t --long src/sage/schemes/projective/projective_point.py
>     [352 tests, 4.74 s]
> sage -t --long src/sage/schemes/projective/projective_space.py
>     [287 tests, 1.49 s]
> sage -t --long src/sage/schemes/readme.py
>     [9 tests, 0.10 s]
> sage -t --long src/sage/schemes/riemann_surfaces/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/projective/projective_subscheme.py
>     [283 tests, 2.12 s]
> sage -t --long src/sage/schemes/toric/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/toric/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/projective/projective_rational_point.py
>     [49 tests, 11.17 s]
> sage -t --long src/sage/schemes/toric/divisor.py
>     [368 tests, 6.11 s]
> sage -t --long src/sage/schemes/toric/divisor_class.pyx
>     [63 tests, 0.44 s]
> sage -t --long src/sage/schemes/toric/chow_group.py
>     [227 tests, 11.66 s]
> sage -t --long src/sage/schemes/toric/homset.py
>     [102 tests, 0.98 s]
> sage -t --long src/sage/schemes/toric/fano_variety.py
>     [183 tests, 2.73 s]
> sage -t --long src/sage/schemes/toric/ideal.py
>     [65 tests, 2.06 s]
> sage -t --long src/sage/schemes/toric/library.py
>     [124 tests, 5.72 s]
> sage -t --long src/sage/schemes/toric/morphism.py
>     [337 tests, 4.81 s]
> sage -t --long src/sage/schemes/toric/sheaf/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/toric/sheaf/constructor.py
>     [41 tests, 0.63 s]
> sage -t --long src/sage/schemes/toric/points.py
>     [185 tests, 1.70 s]
> sage -t --long src/sage/schemes/toric/toric_subscheme.py
>     [159 tests, 2.28 s]
> sage -t --long src/sage/schemes/riemann_surfaces/riemann_surface.py
>     [323 tests, 29.41 s]
> sage -t --long src/sage/schemes/toric/weierstrass.py
>     [146 tests, 1.56 s]
> sage -t --long src/sage/schemes/toric/variety.py
>     [508 tests, 6.50 s]
> sage -t --long src/sage/schemes/toric/weierstrass_higher.py
>     [53 tests, 0.93 s]
> sage -t --long src/sage/server/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/server/support.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/sets/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sets/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sets/cartesian_product.py
>     [54 tests, 0.25 s]
> sage -t --long src/sage/sets/disjoint_set.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/schemes/toric/weierstrass_covering.py
>     [86 tests, 1.85 s]
> sage -t --long src/sage/sets/disjoint_set.pyx
>     [243 tests, 0.09 s]
> sage -t --long src/sage/sets/family.py
>     [349 tests, 0.37 s]
> sage -t --long src/sage/sets/finite_enumerated_set.py
>     [82 tests, 0.05 s]
> sage -t --long src/sage/sets/finite_set_map_cy.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sets/finite_set_map_cy.pyx
>     [111 tests, 0.07 s]
> sage -t --long src/sage/sets/disjoint_union_enumerated_sets.py
>     [116 tests, 0.90 s]
> sage -t --long src/sage/schemes/toric/sheaf/klyachko.py
>     [151 tests, 12.39 s]
> sage -t --long src/sage/sets/non_negative_integers.py
>     [42 tests, 0.05 s]
> sage -t --long src/sage/sets/finite_set_maps.py
>     [86 tests, 0.24 s]
> sage -t --long src/sage/sets/positive_integers.py
>     [13 tests, 0.07 s]
> sage -t --long src/sage/sets/pythonclass.pyx
>     [55 tests, 0.02 s]
> sage -t --long src/sage/sets/primes.py
>     [39 tests, 0.11 s]
> sage -t --long src/sage/sets/pythonclass.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sets/real_set.py
>     [257 tests, 0.34 s]
> sage -t --long src/sage/sets/recursively_enumerated_set.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sets/integer_range.py
>     [166 tests, 1.16 s]
> sage -t --long src/sage/sets/set.py
>     [359 tests, 0.65 s]
> sage -t --long src/sage/sets/totally_ordered_finite_set.py
>     [69 tests, 0.06 s]
> sage -t --long src/sage/stats/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/basic_stats.py
>     [60 tests, 0.40 s]
> sage -t --long src/sage/stats/distributions/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/distributions/dgs.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sets/set_from_iterator.py
>     [217 tests, 1.93 s]
> sage -t --long src/sage/stats/distributions/discrete_gaussian_integer.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/sets/recursively_enumerated_set.pyx
>     [234 tests, 3.90 s]
> sage -t --long src/sage/stats/distributions/discrete_gaussian_polynomial.py
>     [18 tests, 0.80 s]
> sage -t --long src/sage/stats/hmm/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/hmm/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/hmm/chmm.pyx
>     [111 tests, 0.40 s]
> sage -t --long src/sage/stats/hmm/distributions.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/hmm/distributions.pyx
>     [64 tests, 0.57 s]
> sage -t --long src/sage/stats/hmm/hmm.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/hmm/hmm.pyx
>     [121 tests, 0.45 s]
> sage -t --long src/sage/stats/hmm/util.pyx
>     [16 tests, 0.02 s]
> sage -t --long src/sage/stats/hmm/util.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/intlist.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/distributions/discrete_gaussian_lattice.py
>     [66 tests, 4.51 s]
> sage -t --long src/sage/stats/distributions/discrete_gaussian_integer.pyx
>     [103 tests, 5.53 s]
> sage -t --long src/sage/structure/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/category_object.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/r.py
>     [2 tests, 0.55 s]
> sage -t --long src/sage/structure/coerce.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/stats/intlist.pyx
>     [68 tests, 1.34 s]
> sage -t --long src/sage/structure/category_object.pyx
>     [165 tests, 0.55 s]
> sage -t --long src/sage/structure/coerce_actions.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/coerce_actions.pyx
>     [145 tests, 0.88 s]
> sage -t --long src/sage/structure/coerce_dict.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/coerce_exceptions.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/coerce_maps.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/coerce_maps.pyx
>     [114 tests, 0.24 s]
> sage -t --long src/sage/structure/debug_options.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/debug_options.pyx
>     [5 tests, 0.01 s]
> sage -t --long src/sage/structure/coerce.pyx
>     [356 tests, 1.53 s]
> sage -t --long src/sage/structure/element.pxd
>     [23 tests, 0.25 s]
> sage -t --long src/sage/structure/dynamic_class.py
>     [83 tests, 0.90 s]
> sage -t --long src/sage/structure/element_wrapper.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/element_wrapper.pyx
>     [156 tests, 0.12 s]
> sage -t --long src/sage/structure/factorization.py
>     [239 tests, 0.69 s]
> sage -t --long src/sage/structure/factorization_integer.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/structure/factory.pyx
>     [114 tests, 3.53 s]
> sage -t --long src/sage/structure/formal_sum.py
>     [71 tests, 1.67 s]
> sage -t --long src/sage/structure/gens_py.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/global_options.py
>     [153 tests, 0.07 s]
> sage -t --long src/sage/structure/graphics_file.py
>     [8 tests, 0.01 s]
> sage -t --long src/sage/structure/indexed_generators.py
>     [113 tests, 0.34 s]
> sage -t --long src/sage/structure/list_clone.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/list_clone.pyx
>     [380 tests, 0.13 s]
> sage -t --long src/sage/structure/list_clone_demo.pyx
>     [43 tests, 0.03 s]
> sage -t --long src/sage/structure/list_clone_timings.py
>     [18 tests, 0.02 s]
> sage -t --long src/sage/structure/list_clone_timings_cy.pyx
>     [12 tests, 0.01 s]
> sage -t --long src/sage/structure/misc.pyx
>     [5 tests, 0.01 s]
> sage -t --long src/sage/structure/mutability.pyx
>     [31 tests, 0.74 s]
> sage -t --long src/sage/structure/mutability.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/nonexact.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/parent.pyx
>     [363 tests, 3.79 s]
> sage -t --long src/sage/structure/parent.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/parent_base.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/parent_base.pyx
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/parent_gens.pyx
>     [40 tests, 0.27 s]
> sage -t --long src/sage/structure/parent_gens.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/parent_old.pyx
>     [12 tests, 0.86 s]
> sage -t --long src/sage/structure/parent_old.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/proof/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/proof/all.py
>     [31 tests, 0.01 s]
> sage -t --long src/sage/structure/proof/proof.py
>     [50 tests, 0.09 s]
> sage -t --long src/sage/structure/richcmp.pyx
>     [57 tests, 5.93 s]
> sage -t --long src/sage/structure/richcmp.pxd
>     [24 tests, 0.01 s]
> sage -t --long src/sage/structure/sage_object.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/element.pyx
>     [699 tests, 22.58 s]
> sage -t --long src/sage/structure/sequence.py
> **********************************************************************
> File "src/sage/structure/sequence.py", line 831, in sage.structure.sequence.Sequence_generic.__copy__
> Failed example:
>     t.is_immutable == s.is_immutable
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> File "src/sage/structure/sequence.py", line 833, in sage.structure.sequence.Sequence_generic.__copy__
> Failed example:
>     t.is_mutable == s.is_mutable
> Expected:
>     True
> Got:
>     False
> **********************************************************************
> 1 item had failures:
>    2 of   6 in sage.structure.sequence.Sequence_generic.__copy__
>     [184 tests, 2 failures, 0.09 s]
> sage -t --long src/sage/schemes/hyperelliptic_curves/hyperelliptic_finite_field.py
>     [381 tests, 120.93 s]
> sage -t --long src/sage/structure/set_factories.py
>     [225 tests, 0.24 s]
> sage -t --long src/sage/structure/test_factory.py
>     [6 tests, 0.01 s]
> sage -t --long src/sage/structure/set_factories_example.py
>     [81 tests, 0.11 s]
> sage -t --long src/sage/symbolic/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/unique_representation.py
>     [234 tests, 0.68 s]
> sage -t --long src/sage/symbolic/assumptions.py
>     [236 tests, 3.33 s]
> sage -t --long src/sage/symbolic/callable.py
>     [99 tests, 0.10 s]
> sage -t --long src/sage/symbolic/comparison.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/comparison.pyx
>     [38 tests, 0.06 s]
> sage -t --long src/sage/symbolic/complexity_measures.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/symbolic/benchmark.py
>     [29 tests, 3.40 s]
> sage -t --long src/sage/symbolic/constants.py
>     [240 tests, 2.17 s]
> sage -t --long src/sage/symbolic/expression.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/structure/coerce_dict.pyx
>     [296 tests, 31.67 s]
> sage -t --long src/sage/symbolic/constants_c.pyx
>     [39 tests, 3.01 s]
> sage -t --long src/sage/symbolic/function.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/expression_conversions.py
> **********************************************************************
> File "src/sage/symbolic/expression_conversions.py", line 683, in sage.symbolic.expression_conversions.SympyConverter
> Failed example:
>     (x+I)._sympy_()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression_conversions.SympyConverter[7]>", line 1, in <module>
>         (x+I)._sympy_()
>       File "sage/symbolic/expression.pyx", line 1472, in sage.symbolic.expression.Expression._sympy_ (build/cythonized/sage/symbolic/expression.cpp:11439)
>         return sympy_converter(self)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/symbolic/expression_conversions.py", line 218, in __call__
>         return self.arithmetic(ex, operator)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/symbolic/expression_conversions.py", line 720, in arithmetic
>         ops = [sympy.sympify(self(a), evaluate=False) for a in ex.operands()]
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/symbolic/expression_conversions.py", line 720, in <listcomp>
>         ops = [sympy.sympify(self(a), evaluate=False) for a in ex.operands()]
>       File "/usr/lib/python3/dist-packages/sympy/core/sympify.py", line 383, in sympify
>         SymPyDeprecationWarning(
>       File "/usr/lib/python3/dist-packages/sympy/utilities/exceptions.py", line 185, in warn
>         warnings.warn(self, stacklevel=stacklevel)
>       File "/usr/lib/python3.8/warnings.py", line 109, in _showwarnmsg
>         sw(msg.message, msg.category, msg.filename, msg.lineno,
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 235, in showwarning_with_traceback
>         lines.extend(traceback.format_exception_only(category, category(message)))
>       File "/usr/lib/python3/dist-packages/sympy/utilities/exceptions.py", line 144, in __init__
>         raise ValueError("feature is required argument of SymPyDeprecationWarning")
>     ValueError: feature is required argument of SymPyDeprecationWarning
> **********************************************************************
> 1 item had failures:
>    1 of   9 in sage.symbolic.expression_conversions.SympyConverter
>     [518 tests, 1 failure, 3.31 s]
> sage -t --long src/sage/symbolic/function.pyx
>     [270 tests, 2.16 s]
> sage -t --long src/sage/symbolic/getitem.pyx
>     [30 tests, 0.03 s]
> sage -t --long src/sage/symbolic/getitem.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/integration/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/function_factory.py
>     [102 tests, 1.61 s]
> sage -t --long src/sage/symbolic/integration/external.py
>     [21 tests, 2.54 s]
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9bc8a0a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 10634.
> sage -t --long src/sage/symbolic/maxima_wrapper.py
>     [30 tests, 2.82 s]
> sage -t --long src/sage/symbolic/operators.py
>     [38 tests, 0.02 s]
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> [New LWP 10635]
> [New LWP 10636]
> [New LWP 10637]
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9bc8a0a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f48ec10, __pyx_v_self=0x7fad9f48ec10, 
>     __pyx_v_exc=0x7fad9bc9ec00) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f48ec10, __pyx_args=0x7fad9bc9ec00, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9bc9ec00
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9bc8a0a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9bc8a0a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 10634) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_oh33mr27.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
> sage -t --long src/sage/structure/sage_object.pyx
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=10634) failed:
> sage: SageObject()._test_new() ## line 56 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 57 ##
> 0
> sage: x = PolynomialRing(QQ, 'x', sparse=True).gen() ## line 79 ##
> sage: g = x^3 + x - 5 ## line 80 ##
> sage: g ## line 81 ##
> x^3 + x - 5
> sage: g.rename('a polynomial') ## line 83 ##
> sage: g ## line 84 ##
> a polynomial
> sage: g + x ## line 86 ##
> x^3 + 2*x - 5
> sage: h = g^100 ## line 88 ##
> sage: str(h)[:20] ## line 89 ##
> 'x^300 + 100*x^298 - '
> sage: h.rename('x^300 + ...') ## line 91 ##
> sage: h ## line 92 ##
> x^300 + ...
> sage: a = 3.14 ## line 97 ##
> sage: type(a) ## line 98 ##
> <class 'sage.rings.real_mpfr.RealLiteral'>
> sage: a.rename('pi') ## line 100 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 114 ##
> 0
> sage: P.<x> = QQ[] ## line 131 ##
> sage: P ## line 132 ##
> Univariate Polynomial Ring in x over Rational Field
> sage: P.rename('A polynomial ring') ## line 134 ##
> sage: P ## line 135 ##
> A polynomial ring
> sage: P.reset_name() ## line 137 ##
> sage: P ## line 138 ##
> Univariate Polynomial Ring in x over Rational Field
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 140 ##
> 0
> sage: P.<x> = QQ[] ## line 159 ##
> sage: repr(P) == P._repr_()  #indirect doctest ## line 160 ##
> True
> sage: P.rename('A polynomial ring') ## line 166 ##
> sage: repr(P) == P._repr_() ## line 167 ##
> False
> sage: P.reset_name() ## line 172 ##
> sage: repr(P) == P._repr_() ## line 173 ##
> True
> sage: from sage.structure.sage_object import SageObject ## line 179 ##
> sage: S = SageObject() ## line 180 ##
> sage: S ## line 181 ##
> <sage.structure.sage_object.SageObject object at 0x7fad9f61c550>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 183 ##
> 0
> sage: ascii_art(integral(exp(x+x^2)/(x+1), x)) ## line 220 ##
>   /          
>  |           
>  |   2       
>  |  x  + x   
>  | e         
>  | ------- dx
>  |  x + 1    
>  |           
> /            
> sage: from sage.repl.interpreter import get_test_shell ## line 234 ##
> sage: shell = get_test_shell() ## line 235 ##
> sage: shell.run_cell('tab = StandardTableaux(3)[2]; tab') ## line 236 ##
> [[1, 2], [3]]
> sage: shell.run_cell('%display ascii_art') ## line 238 ##
> sage: shell.run_cell('tab') ## line 239 ##
>   1  2
>   3
> sage: shell.run_cell('Tableaux.options(ascii_art="table", convention="French")') ## line 242 ##
> sage: shell.run_cell('tab') ## line 243 ##
> +---+
> | 3 |
> +---+---+
> | 1 | 2 |
> +---+---+
> sage: shell.run_cell('%display plain') ## line 249 ##
> sage: shell.run_cell('Tableaux.options._reset()') ## line 250 ##
> sage: shell.quit() ## line 251 ##
> sage: 1._ascii_art_() ## line 255 ##
> 1
> sage: type(_) ## line 257 ##
> <class 'sage.typeset.ascii_art.AsciiArt'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 259 ##
> 0
> sage: unicode_art(integral(exp(x+x^2)/(x+1), x)) ## line 283 ##
>> ⎮   2       
> ⎮  x  + x   
> ⎮ ℯ         
> ⎮ ─────── dx
> ⎮  x + 1    
>> sage: from sage.repl.interpreter import get_test_shell ## line 296 ##
> sage: shell = get_test_shell() ## line 297 ##
> sage: shell.run_cell('tab = StandardTableaux(3)[2]; tab') ## line 298 ##
> [[1, 2], [3]]
> sage: shell.run_cell('%display ascii_art') ## line 300 ##
> sage: shell.run_cell('tab') ## line 301 ##
>   1  2
>   3
> sage: shell.run_cell('Tableaux.options(ascii_art="table", convention="French")') ## line 304 ##
> sage: shell.run_cell('tab') ## line 305 ##
> +---+
> | 3 |
> +---+---+
> | 1 | 2 |
> +---+---+
> sage: shell.run_cell('%display plain') ## line 311 ##
> sage: shell.run_cell('Tableaux.options._reset()') ## line 312 ##
> sage: shell.quit() ## line 313 ##
> sage: 1._unicode_art_() ## line 317 ##
> 1
> sage: type(_) ## line 319 ##
> <class 'sage.typeset.unicode_art.UnicodeArt'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 321 ##
> 0
> sage: hash(SageObject()) ## line 332 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 336 ##
> 0
> sage: K.<a> = Qq(9) ## line 352 ##
> sage: b = a + O(3) ## line 353 ##
> sage: c = a + 3 ## line 354 ##
> sage: b ## line 355 ##
> a + O(3)
> sage: c ## line 357 ##
> a + 3 + O(3^20)
> sage: b == c ## line 359 ##
> True
> sage: b == a ## line 361 ##
> True
> sage: c == a ## line 363 ##
> False
> sage: hash(b) ## line 371 ##
> sage: @cached_method
> def f(x): return x==a ## line 375 ##
> sage: f(b) ## line 377 ##
> True
> sage: f(c) # if b and c were hashable, this would return True ## line 379 ##
> False
> sage: b._cache_key() ## line 382 ##
> (3-adic Unramified Extension Field in a defined by x^2 + 2*x + 2,
>  ((0, 1),),
>  0,
>  1)
> sage: c._cache_key() ## line 384 ##
> (3-adic Unramified Extension Field in a defined by x^2 + 2*x + 2,
>  ((0, 1), (1,)),
>  0,
>  20)
> sage: S.<a> = Qq(4) ## line 392 ##
> sage: d = a + O(2) ## line 393 ##
> sage: b._cache_key() == d._cache_key() # this would be True if the parents were not included ## line 394 ##
> False
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 397 ##
> 0
> sage: f = x^3 + 5 ## line 415 ##
> sage: f.save(os.path.join(SAGE_TMP, 'file')) ## line 416 ##
> sage: load(os.path.join(SAGE_TMP, 'file.sobj')) ## line 417 ##
> x^3 + 5
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 419 ##
> 0
> sage: from sage.misc.persist import comp ## line 449 ##
> sage: O = SageObject() ## line 450 ##
> sage: p_comp = O.dumps() ## line 451 ##
> sage: p_uncomp = O.dumps(compress=False) ## line 452 ##
> sage: comp.decompress(p_comp) == p_uncomp ## line 453 ##
> True
> sage: import pickletools ## line 455 ##
> sage: pickletools.dis(p_uncomp) ## line 456 ##
>     0: \x80 PROTO      2
>     2: c    GLOBAL     'sage.structure.sage_object SageObject'
>    41: q    BINPUT     0
>    43: )    EMPTY_TUPLE
>    44: \x81 NEWOBJ
>    45: q    BINPUT     1
>    47: .    STOP
> highest protocol among opcodes = 2
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 465 ##
> 0
> sage: O = SageObject() ## line 485 ##
> sage: O._test_category() ## line 486 ##
> sage: class CCls(SageObject):
>     def category(self):
>         return 3 ## line 490 ##
> sage: CC = CCls() ## line 493 ##
> sage: CC._test_category() ## line 494 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 498 ##
> 0
> sage: t = log(sqrt(2) - 1) + log(sqrt(2) + 1); t ## line 513 ##
> log(sqrt(2) + 1) + log(sqrt(2) - 1)
> sage: u = t.maxima_methods() ## line 515 ##
> sage: u.parent() ## line 516 ##
> <class 'sage.symbolic.maxima_wrapper.MaximaWrapper'>
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 518 ##
> 0
> sage: tester = ZZ._tester() ## line 535 ##
> sage: tester.assertTrue(1 == 1) ## line 537 ##
> sage: tester.assertTrue(1 == 0) ## line 538 ##
> sage: tester.assertTrue(1 == 0, "this is expected to fail") ## line 542 ##
> sage: tester.assertEqual(1, 1) ## line 547 ##
> sage: tester.assertEqual(1, 0) ## line 548 ##
> sage: ZZ._tester(tester = tester) is tester ## line 559 ##
> True
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 561 ##
> 0
> sage: class Abstract(SageObject):
>     @abstract_method
>     def bla(self):
>         "returns bla" ## line 571 ##
> sage: class Concrete(Abstract):
>     def bla(self):
>         return 1 ## line 575 ##
> sage: class IncompleteConcrete(Abstract):
>     pass ## line 578 ##
> sage: Concrete()._test_not_implemented_methods() ## line 580 ##
> sage: IncompleteConcrete()._test_not_implemented_methods() ## line 581 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 586 ##
> 0
> sage: ZZ._test_pickling() ## line 610 ##
> sage: class Bla(SageObject): pass ## line 618 ##
> sage: Bla()._test_pickling() ## line 619 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 627 ##
> 0
> sage: n = -3/7 ## line 804 ##
> sage: n._magma_init_(magma) ## line 805 ##
> '-3/7'
> sage: n = -3/7 ## line 811 ##
> sage: m2 = Magma() ## line 812 ##
> sage: K.<a> = NumberField(x^3 + 2) ## line 825 ##
> sage: magma2 = Magma() ## line 828 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 831 ##
> 0
> sage: a = 2/3 ## line 901 ##
> sage: a._r_init_() ## line 902 ##
> '2/3'
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 904 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/symbolic/expression.pyx
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 789, in sage.symbolic.expression.Expression._unicode_art_
> Failed example:
>     unicode_art(exp(x).series(x, 4))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression._unicode_art_[3]>", line 1, in <module>
>         unicode_art(exp(x).series(x, Integer(4)))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 2397, in sage.symbolic.expression.Expression.is_terminating_series
> Failed example:
>     exp(x).series(x,10).is_terminating_series()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.is_terminating_series[5]>", line 1, in <module>
>         exp(x).series(x,Integer(10)).is_terminating_series()
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4370, in sage.symbolic.expression.Expression.series
> Failed example:
>     f.series(x,7)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.series[8]>", line 1, in <module>
>         f.series(x,Integer(7))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4372, in sage.symbolic.expression.Expression.series
> Failed example:
>     f.series(x)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.series[9]>", line 1, in <module>
>         f.series(x)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4382, in sage.symbolic.expression.Expression.series
> Failed example:
>     (1/(1-x)).series(x, 3)+(1/(1+x)).series(x,3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.series[12]>", line 1, in <module>
>         (Integer(1)/(Integer(1)-x)).series(x, Integer(3))+(Integer(1)/(Integer(1)+x)).series(x,Integer(3))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4384, in sage.symbolic.expression.Expression.series
> Failed example:
>     _.series(x,3)
> Expected:
>     2 + 2*x^2 + Order(x^3)
> Got:
>     (-3*cos(1) + 11/2*sin(1)) + (5*cos(1) - 7*sin(1))*x + (-2*cos(1) + 5/2*sin(1))*x^2 + Order(x^3)
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4386, in sage.symbolic.expression.Expression.series
> Failed example:
>     (1/(1-x)).series(x, 3)*(1/(1+x)).series(x,3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.series[14]>", line 1, in <module>
>         (Integer(1)/(Integer(1)-x)).series(x, Integer(3))*(Integer(1)/(Integer(1)+x)).series(x,Integer(3))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4388, in sage.symbolic.expression.Expression.series
> Failed example:
>     _.series(x,3)
> Expected:
>     1 + 1*x^2 + Order(x^3)
> Got:
>     (-3*cos(1) + 11/2*sin(1)) + (5*cos(1) - 7*sin(1))*x + (-2*cos(1) + 5/2*sin(1))*x^2 + Order(x^3)
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4399, in sage.symbolic.expression.Expression.series
> Failed example:
>     f = atan(x).series(x, 10); f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.series[17]>", line 1, in <module>
>         f = atan(x).series(x, Integer(10)); f
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4401, in sage.symbolic.expression.Expression.series
> Failed example:
>     float(16*f.subs(x==1/5) - 4*f.subs(x==1/239))
> Expected:
>     3.1415926824043994
> Got:
>     -876.5294782841381
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4408, in sage.symbolic.expression.Expression.series
> Failed example:
>     ((1+arctan(x))**(1/x)).series(x==0, 3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.series[19]>", line 1, in <module>
>         ((Integer(1)+arctan(x))**(Integer(1)/x)).series(x==Integer(0), Integer(3))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4419, in sage.symbolic.expression.Expression.series
> Failed example:
>     (1/(1-2*x)).series(x)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.series[22]>", line 1, in <module>
>         (Integer(1)/(Integer(1)-Integer(2)*x)).series(x)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4620, in sage.symbolic.expression.Expression.truncate
> Failed example:
>     f.series(x,7)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.truncate[2]>", line 1, in <module>
>         f.series(x,Integer(7))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 4622, in sage.symbolic.expression.Expression.truncate
> Failed example:
>     f.series(x,7).truncate()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.truncate[3]>", line 1, in <module>
>         f.series(x,Integer(7)).truncate()
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 5740, in sage.symbolic.expression.Expression.operator
> Failed example:
>     exp(x).series(x,3).operator()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.operator[23]>", line 1, in <module>
>         exp(x).series(x,Integer(3)).operator()
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 6370, in sage.symbolic.expression.Expression.coefficients
> Failed example:
>     s=(1/(1-x)).series(x,6); s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.coefficients[16]>", line 1, in <module>
>         s=(Integer(1)/(Integer(1)-x)).series(x,Integer(6)); s
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 6372, in sage.symbolic.expression.Expression.coefficients
> Failed example:
>     s.coefficients()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.coefficients[17]>", line 1, in <module>
>         s.coefficients()
>     NameError: name 's' is not defined
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 6374, in sage.symbolic.expression.Expression.coefficients
> Failed example:
>     s.coefficients(x, sparse=False)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.coefficients[18]>", line 1, in <module>
>         s.coefficients(x, sparse=False)
>     NameError: name 's' is not defined
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 6465, in sage.symbolic.expression.Expression.list
> Failed example:
>     s=(1/(1-x)).series(x,6); s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.list[6]>", line 1, in <module>
>         s=(Integer(1)/(Integer(1)-x)).series(x,Integer(6)); s
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/expression.pyx", line 6467, in sage.symbolic.expression.Expression.list
> Failed example:
>     s.list()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.expression.Expression.list[7]>", line 1, in <module>
>         s.list()
>     NameError: name 's' is not defined
> **********************************************************************
> 7 items had failures:
>    1 of   6 in sage.symbolic.expression.Expression._unicode_art_
>    3 of  32 in sage.symbolic.expression.Expression.coefficients
>    1 of   7 in sage.symbolic.expression.Expression.is_terminating_series
>    2 of   9 in sage.symbolic.expression.Expression.list
>    1 of  25 in sage.symbolic.expression.Expression.operator
>   10 of  25 in sage.symbolic.expression.Expression.series
>    2 of   6 in sage.symbolic.expression.Expression.truncate
>     [2854 tests, 20 failures, 55.82 s]
> sage -t --long src/sage/symbolic/relation.py
> **********************************************************************
> File "src/sage/symbolic/relation.py", line 916, in sage.symbolic.relation.solve
> Failed example:
>     solve(sinh(x) - 2*cosh(x),x,algorithm='sympy')
> Expected:
>     ConditionSet(x, Eq((-exp(2*x) - 3)*exp(-x)/2, 0), Reals)
> Got:
>     [ImageSet(Lambda(_n, I*(2*_n*pi + pi/2) + log(sqrt(3))), Integers),
>      ImageSet(Lambda(_n, I*(2*_n*pi - pi/2) + log(sqrt(3))), Integers)]
> **********************************************************************
> 1 item had failures:
>    1 of 116 in sage.symbolic.relation.solve
>     [378 tests, 1 failure, 16.56 s]
> sage -t --long src/sage/symbolic/ring.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/ring.pyx
>     [235 tests, 2.03 s]
> sage -t --long src/sage/symbolic/series.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/series.pyx
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 40, in sage.symbolic.series
> Failed example:
>     f.series(x,7)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[8]>", line 1, in <module>
>         f.series(x,Integer(7))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 55, in sage.symbolic.series
> Failed example:
>     f = atan(x).series(x, 10); f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[12]>", line 1, in <module>
>         f = atan(x).series(x, Integer(10)); f
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 57, in sage.symbolic.series
> Failed example:
>     (16*f.subs(x==1/5) - 4*f.subs(x==1/239)).n()
> Expected:
>     3.14159268240440
> Got:
>     -876.529478284138
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 63, in sage.symbolic.series
> Failed example:
>     ex1 = sin(x).series(x, 4); ex1
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[14]>", line 1, in <module>
>         ex1 = sin(x).series(x, Integer(4)); ex1
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 65, in sage.symbolic.series
> Failed example:
>     ex2 = cos(x).series(x, 4); ex2
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[15]>", line 1, in <module>
>         ex2 = cos(x).series(x, Integer(4)); ex2
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 67, in sage.symbolic.series
> Failed example:
>     ex1 + ex2
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[16]>", line 1, in <module>
>         ex1 + ex2
>     NameError: name 'ex1' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 69, in sage.symbolic.series
> Failed example:
>     (ex1 + ex2).series(x,4)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[17]>", line 1, in <module>
>         (ex1 + ex2).series(x,Integer(4))
>     NameError: name 'ex1' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 71, in sage.symbolic.series
> Failed example:
>     x*ex1
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[18]>", line 1, in <module>
>         x*ex1
>     NameError: name 'ex1' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 73, in sage.symbolic.series
> Failed example:
>     (x*ex1).series(x,5)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[19]>", line 1, in <module>
>         (x*ex1).series(x,Integer(5))
>     NameError: name 'ex1' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 75, in sage.symbolic.series
> Failed example:
>     sin(ex1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[20]>", line 1, in <module>
>         sin(ex1)
>     NameError: name 'ex1' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 77, in sage.symbolic.series
> Failed example:
>     sin(ex1).series(x,9)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[21]>", line 1, in <module>
>         sin(ex1).series(x,Integer(9))
>     NameError: name 'ex1' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 79, in sage.symbolic.series
> Failed example:
>     (sin(x^2)^(-5)).series(x,3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[22]>", line 1, in <module>
>         (sin(x**Integer(2))**(-Integer(5))).series(x,Integer(3))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 83, in sage.symbolic.series
> Failed example:
>     (cot(x)^(-3)).series(x,4)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[24]>", line 1, in <module>
>         (cot(x)**(-Integer(3))).series(x,Integer(4))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 90, in sage.symbolic.series
> Failed example:
>     ((1+x).series(x)^pi).series(x,3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[25]>", line 1, in <module>
>         ((Integer(1)+x).series(x)**pi).series(x,Integer(3))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 95, in sage.symbolic.series
> Failed example:
>     sin(x*sin(x*sin(x*sin(x)))).series(x,8)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[26]>", line 1, in <module>
>         sin(x*sin(x*sin(x*sin(x)))).series(x,Integer(8))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 97, in sage.symbolic.series
> Failed example:
>     sin(x*sin(x*sin(x*sin(x)))).series(x,12)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[27]>", line 1, in <module>
>         sin(x*sin(x*sin(x*sin(x)))).series(x,Integer(12))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 102, in sage.symbolic.series
> Failed example:
>     (x/(1-x^2)).series(x==0, 10)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[28]>", line 1, in <module>
>         (x/(Integer(1)-x**Integer(2))).series(x==Integer(0), Integer(10))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 104, in sage.symbolic.series
> Failed example:
>     (x/(1-x^2)).series(x==0, 11)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[29]>", line 1, in <module>
>         (x/(Integer(1)-x**Integer(2))).series(x==Integer(0), Integer(11))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 106, in sage.symbolic.series
> Failed example:
>     (x^2/(1-x^2)).series(x==0, 10)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[30]>", line 1, in <module>
>         (x**Integer(2)/(Integer(1)-x**Integer(2))).series(x==Integer(0), Integer(10))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 108, in sage.symbolic.series
> Failed example:
>     (x^2/(1-x^2)).series(x==0, 11)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series[31]>", line 1, in <module>
>         (x**Integer(2)/(Integer(1)-x**Integer(2))).series(x==Integer(0), Integer(11))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 138, in sage.symbolic.series.SymbolicSeries.__init__
> Failed example:
>     loads(dumps((x+x^3).series(x,2)))
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.__init__[0]>", line 1, in <module>
>         loads(dumps((x+x**Integer(3)).series(x,Integer(2))))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 148, in sage.symbolic.series.SymbolicSeries.is_series
> Failed example:
>     ex = sin(x).series(x,5)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.is_series[0]>", line 1, in <module>
>         ex = sin(x).series(x,Integer(5))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 149, in sage.symbolic.series.SymbolicSeries.is_series
> Failed example:
>     ex.is_series()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.is_series[1]>", line 1, in <module>
>         ex.is_series()
>     NameError: name 'ex' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 179, in sage.symbolic.series.SymbolicSeries.is_terminating_series
> Failed example:
>     exp(x).series(x,10).is_terminating_series()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.is_terminating_series[3]>", line 1, in <module>
>         exp(x).series(x,Integer(10)).is_terminating_series()
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 198, in sage.symbolic.series.SymbolicSeries.truncate
> Failed example:
>     f.series(x,7)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.truncate[2]>", line 1, in <module>
>         f.series(x,Integer(7))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 213, in sage.symbolic.series.SymbolicSeries.default_variable
> Failed example:
>     s=(1/(1-x)).series(x,3); s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.default_variable[0]>", line 1, in <module>
>         s=(Integer(1)/(Integer(1)-x)).series(x,Integer(3)); s
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 215, in sage.symbolic.series.SymbolicSeries.default_variable
> Failed example:
>     s.default_variable()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.default_variable[1]>", line 1, in <module>
>         s.default_variable()
>     NameError: name 's' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 245, in sage.symbolic.series.SymbolicSeries.coefficients
> Failed example:
>     s=(1/(1-x)).series(x,6); s
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.coefficients[0]>", line 1, in <module>
>         s=(Integer(1)/(Integer(1)-x)).series(x,Integer(6)); s
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 247, in sage.symbolic.series.SymbolicSeries.coefficients
> Failed example:
>     s.coefficients()
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.coefficients[1]>", line 1, in <module>
>         s.coefficients()
>     NameError: name 's' is not defined
> **********************************************************************
> File "src/sage/symbolic/series.pyx", line 249, in sage.symbolic.series.SymbolicSeries.coefficients
> Failed example:
>     s.coefficients(x, sparse=False)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.symbolic.series.SymbolicSeries.coefficients[2]>", line 1, in <module>
>         s.coefficients(x, sparse=False)
>     NameError: name 's' is not defined
> **********************************************************************
> 7 items had failures:
>   20 of  35 in sage.symbolic.series
>    1 of   2 in sage.symbolic.series.SymbolicSeries.__init__
>    3 of   7 in sage.symbolic.series.SymbolicSeries.coefficients
>    2 of   3 in sage.symbolic.series.SymbolicSeries.default_variable
>    2 of   3 in sage.symbolic.series.SymbolicSeries.is_series
>    1 of   5 in sage.symbolic.series.SymbolicSeries.is_terminating_series
>    1 of   6 in sage.symbolic.series.SymbolicSeries.truncate
>     [57 tests, 30 failures, 0.08 s]
> sage -t --long src/sage/symbolic/subring.py
>     [177 tests, 0.10 s]
> sage -t --long src/sage/symbolic/substitution_map.pyx
>     [9 tests, 0.01 s]
> sage -t --long src/sage/symbolic/substitution_map.pxd
>     [0 tests, 0.00 s]
> sage -t --long src/sage/symbolic/tests.py
>     [2 tests, 0.38 s]
> sage -t --long src/sage/symbolic/units.py
>     [89 tests, 0.11 s]
> sage -t --long src/sage/tensor/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/tensor/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/tensor/coordinate_patch.py
>     [51 tests, 0.05 s]
> sage -t --long src/sage/tensor/differential_form_element.py
>     [287 tests, 0.50 s]
> sage -t --long src/sage/tensor/differential_forms.py
>     [66 tests, 0.26 s]
> sage -t --long src/sage/tensor/modules/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/tensor/modules/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/tensor/modules/alternating_contr_tensor.py
>     [150 tests, 0.17 s]
> sage -t --long src/sage/symbolic/random_tests.py
>     [37 tests, 39.54 s]
> sage -t --long src/sage/tensor/modules/ext_pow_free_module.py
>     [177 tests, 0.14 s]
> sage -t --long src/sage/symbolic/integration/integral.py
>     [197 tests, 44.48 s]
> sage -t --long src/sage/tensor/modules/format_utilities.py
>     [60 tests, 0.02 s]
> sage -t --long src/sage/tensor/modules/finite_rank_free_module.py
>     [503 tests, 0.46 s]
> sage -t --long src/sage/tensor/modules/free_module_automorphism.py
>     [240 tests, 0.16 s]
> sage -t --long src/sage/tensor/modules/free_module_basis.py
>     [155 tests, 0.11 s]
> sage -t --long src/sage/tensor/modules/free_module_element.py
>     [62 tests, 0.05 s]
> sage -t --long src/sage/tensor/modules/free_module_homset.py
>     [97 tests, 0.10 s]
> sage -t --long src/sage/tensor/modules/free_module_linear_group.py
>     [112 tests, 0.14 s]
> sage -t --long src/sage/tensor/modules/comp.py
>     [968 tests, 4.97 s]
> sage -t --long src/sage/tensor/modules/free_module_morphism.py
>     [251 tests, 0.21 s]
> sage -t --long src/sage/tensor/modules/tensor_free_module.py
>     [131 tests, 0.10 s]
> sage -t --long src/sage/tensor/modules/free_module_alt_form.py
>     [175 tests, 1.57 s]
> sage -t --long src/sage/tests/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/tests/all.py
>     [2 tests, 0.01 s]
> sage -t --long src/sage/tensor/modules/tensor_with_indices.py
>     [130 tests, 0.19 s]
> sage -t --long src/sage/tests/arxiv_0812_2725.py
>     [34 tests, 0.02 s]
> sage -t --long src/sage/tests/article_heuberger_krenn_kropf_fsm-in-sage.py
>     [103 tests, 0.58 s]
> sage -t --long src/sage/tensor/modules/free_module_tensor.py
>     [642 tests, 2.34 s]
> sage -t --long src/sage/tests/benchmark.py
>     [217 tests, 2.02 s]
> sage -t --long src/sage/tests/book_stein_modform.py
>     [240 tests, 1.27 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/combinat_doctest.py
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/combinat_doctest.py", line 98, in sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest
> Failed example:
>     s0.series(z, 6)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest[24]>", line 1, in <module>
>         s0.series(z, Integer(6))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/combinat_doctest.py", line 100, in sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest
> Failed example:
>     s1.series(z, 6)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest[25]>", line 1, in <module>
>         s1.series(z, Integer(6))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/combinat_doctest.py", line 109, in sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest
> Failed example:
>     C.series(z, 11)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest[27]>", line 1, in <module>
>         C.series(z, Integer(11))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/combinat_doctest.py", line 115, in sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest
> Failed example:
>     C.series(z, 101).coefficient(z,100)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest[28]>", line 1, in <module>
>         C.series(z, Integer(101)).coefficient(z,Integer(100))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/combinat_doctest.py", line 1021, in sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest
> Failed example:
>     H.series(q)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest[246]>", line 1, in <module>
>         H.series(q)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> 1 item had failures:
>    5 of 265 in sage.tests.books.computational-mathematics-with-sagemath.combinat_doctest
>     [264 tests, 5 failures, 58.69 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/calculus_doctest.py
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/calculus_doctest.py", line 358, in sage.tests.books.computational-mathematics-with-sagemath.calculus_doctest
> Failed example:
>     ((1+arctan(x))^(1/x)).series(x==0, 3)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.books.computational-mathematics-with-sagemath.calculus_doctest[90]>", line 1, in <module>
>         ((Integer(1)+arctan(x))**(Integer(1)/x)).series(x==Integer(0), Integer(3))
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/calculus_doctest.py", line 386, in sage.tests.books.computational-mathematics-with-sagemath.calculus_doctest
> Failed example:
>     f = arctan(x).series(x, 10); f
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.books.computational-mathematics-with-sagemath.calculus_doctest[96]>", line 1, in <module>
>         f = arctan(x).series(x, Integer(10)); f
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/books/computational-mathematics-with-sagemath/calculus_doctest.py", line 388, in sage.tests.books.computational-mathematics-with-sagemath.calculus_doctest
> Failed example:
>     (16*f.subs(x==1/5) - 4*f.subs(x==1/239)).n(); pi.n()
> Expected:
>     3.14159268240440
>     3.14159265358979
> Got:
>     50.8746475739155
>     3.14159265358979
> **********************************************************************
> 1 item had failures:
>    3 of 146 in sage.tests.books.computational-mathematics-with-sagemath.calculus_doctest
>     [145 tests, 3 failures, 5.25 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/domaines_doctest.py
>     [114 tests, 2.08 s]
> sage -t --long src/sage/tests/book_stein_ent.py
>     [263 tests, 17.83 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/float_doctest.py
>     [141 tests, 27.25 s]
> sage -t --long src/sage/tests/book_schilling_zabrocki_kschur_primer.py
>     [283 tests, 50.74 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/graphtheory_doctest.py
>     [114 tests, 14.77 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/linalg_doctest.py
>     [90 tests, 0.72 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/graphique_doctest.py
>     [116 tests, 37.12 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/lp_doctest.py
>     [68 tests, 0.21 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/linsolve_doctest.py
>     [131 tests, 6.84 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/numbertheory_doctest.py
>     [31 tests, 0.26 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/mpoly_doctest.py
>     [156 tests, 6.93 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/polynomes_doctest.py
>     [110 tests, 1.94 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/premierspas_doctest.py
>     [51 tests, 1.69 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/programmation_doctest.py
>     [177 tests, 1.49 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/calculus_doctest.py
>     [87 tests, 4.72 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/recequadiff_doctest.py
>     [111 tests, 6.76 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/domaines_doctest.py
>     [20 tests, 0.04 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/nonlinear_doctest.py
>     [147 tests, 12.50 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/combinat_doctest.py
>     [51 tests, 2.19 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/graphtheory_doctest.py
>     [6 tests, 0.03 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/float_doctest.py
>     [48 tests, 1.83 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/linalg_doctest.py
>     [15 tests, 0.25 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/linsolve_doctest.py
>     [7 tests, 0.22 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/lp_doctest.py
>     [20 tests, 0.05 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/integration_doctest.py
>     [12 tests, 2.22 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/nonlinear_doctest.py
>     [25 tests, 0.06 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/mpoly_doctest.py
>     [30 tests, 2.46 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/graphique_doctest.py
>     [49 tests, 16.81 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/recequadiff_doctest.py
>     [23 tests, 2.22 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/actions-sage.py
>     [34 tests, 0.27 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/actions-sage-exercises.py
>     [3 tests, 0.02 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/algcodes-sage.py
>     [17 tests, 0.20 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/boolean-sage.py
>     [51 tests, 0.22 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/cosets-sage.py
>     [40 tests, 0.52 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/cosets-sage-exercises.py
>     [14 tests, 0.01 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/crypt-sage.py
>     [39 tests, 0.04 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/cyclic-sage.py
>     [88 tests, 0.71 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/domains-sage.py
>     [29 tests, 1.56 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/fields-sage.py
>     [68 tests, 2.05 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/finite-sage.py
>     [16 tests, 0.22 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/galois-sage.py
>     [81 tests, 0.68 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/groups-sage.py
>     [52 tests, 0.70 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/integration_doctest.py
>     [87 tests, 49.51 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/homomorph-sage.py
>     [42 tests, 0.75 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/integers-sage.py
>     [53 tests, 0.02 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/homomorph-sage-exercises.py
>     [9 tests, 0.23 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/normal-sage.py
>     [37 tests, 0.23 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/isomorph-sage.py
>     [54 tests, 0.38 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/poly-sage.py
>     [69 tests, 0.28 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/permute-sage.py
>     [75 tests, 0.37 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/sets-sage.py
>     [28 tests, 0.03 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/struct-sage.py
>     [11 tests, 0.22 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/rings-sage.py
>     [96 tests, 0.31 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/vect-sage.py
>     [55 tests, 0.25 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/vect-sage-exercises.py
>     [5 tests, 0.02 s]
> sage -t --long src/sage/tests/books/judson-abstract-algebra/sylow-sage.py
>     [47 tests, 0.60 s]
> sage -t --long src/sage/tests/combinatorial_hopf_algebras.py
>     [12 tests, 0.36 s]
> sage -t --long src/sage/tests/cython.pyx
>     [3 tests, 0.01 s]
> sage -t --long src/sage/tests/deprecation_test.py
>     [4 tests, 0.41 s]
> sage -t --long src/sage/tests/finite_poset.py
>     [10 tests, 1.31 s]
> sage -t --long src/sage/tests/functools_partial_src.py
>     [3 tests, 0.01 s]
> sage -t --long src/sage/tests/gap_packages.py
>     [10 tests, 0.43 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/polynomes_doctest.py
>     [33 tests, 30.97 s]
> sage -t --long src/sage/tests/modular_group_cohomology.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/sol/numbertheory_doctest.py
>     [19 tests, 33.64 s]
> sage -t --long src/sage/tests/cmdline.py
> **********************************************************************
> File "src/sage/tests/cmdline.py", line 110, in sage.tests.cmdline.test_executable
> Failed example:
>     err
> Expected:
>     ''
> Got:
>     '------------------------------------------------------------------------\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fa47c43d97b]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fa47c43db49]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa54b)[0x7fa47c44054b]\n/lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fa47ed8a800]\n/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4e)[0x7fa47edd90ce]\n/usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fa43b171e70]\n/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fa431e1f0a9]\npython3[0x5c02c2]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(PyObject_Call+0x1f7)[0x5f1847]\npython3[0x64b8e0]\npython3(Py_FinalizeEx+0x44)[0x677a94]\npython3(Py_RunMain+0x329)[0x6aea19]\npython3(Py_BytesMain+0x29)[0x6aec89]\n/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fa47ed75e0b]\npython3(_start+0x2a)[0x5f59da]\n------------------------------------------------------------------------\nAttaching gdb to process id 12097.\nGNU gdb (Debian 9.2-1) 9.2\nCopyright (C) 2020 Free Software Foundation, Inc.\nLicense GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.\nType "show copying" and "show warranty" for details.\nThis GDB was configured as "x86_64-linux-gnu".\nType "show configuration" for configuration details.\nFor bug reporting instructions, please see:\n<http://www.gnu.org/software/gdb/bugs/>.\nFind the GDB manual and other documentation resources online at:\n    <http://www.gnu.org/software/gdb/documentation/>.\n\nFor help, type "help".\nType "apropos word" to search for commands related to "word".\n[New LWP 12106]\n[Thread debugging using libthread_db enabled]\nUsing host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".\n0x00007fa47ee19c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6\n\nStack backtrace\n---------------\nNo symbol table info available.\n#1  0x00007fa47c43da44 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#2  0x00007fa47c43db86 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#3  0x00007fa47c44054b in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#4  <signal handler called>\nNo symbol table info available.\n#5  0x00007fa47edd90ce in free () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#6  0x00007fa43b171e70 in _fmpz_cleanup_mpz_content ()\n   from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so\nNo symbol table info available.\n#7  0x00007fa431e1f0a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack\n    (__pyx_self=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1202\n        __pyx_r = 0x0\n        __pyx_r = <optimized out>\n#8  __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (\n    __pyx_self=<optimized out>, unused=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1185\n        __pyx_r = 0x0\n#9  0x00000000005c02c2 in ?? ()\nNo symbol table info available.\n#10 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#11 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#12 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#13 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#14 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#15 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#16 0x00000000005f1847 in PyObject_Call ()\nNo symbol table info available.\n#17 0x000000000064b8e0 in ?? ()\nNo symbol table info available.\n#18 0x0000000000677a94 in Py_FinalizeEx ()\nNo symbol table info available.\n#19 0x00000000006aea19 in Py_RunMain ()\nNo symbol table info available.\n#20 0x00000000006aec89 in Py_BytesMain ()\nNo symbol table info available.\n#21 0x00007fa47ed75e0b in __libc_start_main ()\n   from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#22 0x00000000005f59da in _start ()\nNo symbol table info available.\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n\n\nCython backtrace\n----------------\n#0  0x00007fa47ee19bc0 in waitpid ()\n#1  0x0000000000000000 in ?? ()\n#2  0x0000000000000000 in ?? ()\n#3  0x0000000000000000 in ?? ()\n#4  0x0000000000000000 in ?? ()\n#5  0x00007fa47edd9080 in free ()\n#6  0x00007fa476731d00 in _fmpz_cleanup_mpz_content ()\n#7  0x00007fa431e1f0a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202\n#8  0x00007fa431e1f0a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38\n    33    cimport sage.libs.flint.padic\n    34    cimport sage.libs.flint.types\n    35    cimport sage.libs.flint.ulong_extras\n    36    \n    37    \n>   38    def free_flint_stack():\n    39        _fmpz_cleanup_mpz_content()\n#9  0x0000000000000000 in ?? ()\n#10 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#11 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#12 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#13 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#14 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#15 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#16 0x00000000005f1650 in PyObject_Call ()\n#17 0x0000000000000000 in ?? ()\n#18 0x0000000000677a50 in Py_FinalizeEx ()\n#19 0x00000000006ae6f0 in Py_RunMain ()\n#20 0x00000000006aec60 in Py_BytesMain ()\n#21 0x00007fa47ed75d20 in __libc_start_main ()\n#22 0x00000000005f59b0 in _start ()\n\n[Inferior 1 (process 12097) detached]\nSaved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_3w4mww3z.log\n------------------------------------------------------------------------\nUnhandled SIGSEGV: A segmentation fault occurred.\nThis probably occurred because a *compiled* module has a bug\nin it and is not properly wrapped with sig_on(), sig_off().\nPython will now terminate.\n------------------------------------------------------------------------\n/<<PKGBUILDDIR>>/sage/src/bin/sage-python: line 2: 12097 Segmentation fault      sage -python "$@"\n'
> **********************************************************************
> File "src/sage/tests/cmdline.py", line 112, in sage.tests.cmdline.test_executable
> Failed example:
>     ret
> Expected:
>     0
> Got:
>     139
> free(): invalid pointer
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa51d)[0x7fadea57551d]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x141)[0x7fadeb7b1781]
> /lib/x86_64-linux-gnu/libc.so.6(abort+0x127)[0x7fadeb79b55b]
> /lib/x86_64-linux-gnu/libc.so.6(+0x7e038)[0x7fadeb7f4038]
> /lib/x86_64-linux-gnu/libc.so.6(+0x853da)[0x7fadeb7fb3da]
> /lib/x86_64-linux-gnu/libc.so.6(+0x86dcc)[0x7fadeb7fcdcc]
> /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fadacdbce70]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fad9c5c80a9]
> python3[0x5c02c2]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(PyObject_Call+0x1f7)[0x5f1847]
> python3[0x64b8e0]
> python3[0x47442b]
> /<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/cpython/atexit.cpython-38-x86_64-linux-gnu.so(+0x6129)[0x7fada3914129]
> python3(PyCFunction_Call+0x55)[0x5f1f25]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x6f02)[0x56db02]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 12308.
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> [New LWP 12309]
> [New LWP 12310]
> [New LWP 12311]
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57551d in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb7b1781 in raise () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x00007fadeb79b55b in abort () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #7  0x00007fadeb7f4038 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #8  0x00007fadeb7fb3da in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #9  0x00007fadeb7fcdcc in ?? () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #10 0x00007fadacdbce70 in _fmpz_cleanup_mpz_content ()
>    from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so
> No symbol table info available.
> #11 0x00007fad9c5c80a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack
>     (__pyx_self=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1202
>         __pyx_r = 0x0
>         __pyx_r = <optimized out>
> #12 __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (
>     __pyx_self=<optimized out>, unused=<optimized out>)
>     at build/cythonized/sage/libs/flint/flint.c:1185
>         __pyx_r = 0x0
> #13 0x00000000005c02c2 in ?? ()
> No symbol table info available.
> #14 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #15 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #16 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #17 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #18 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #19 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #20 0x00000000005f1847 in PyObject_Call ()
> No symbol table info available.
> #21 0x000000000064b8e0 in ?? ()
> No symbol table info available.
> #22 0x000000000047442b in ?? ()
> No symbol table info available.
> #23 0x00007fada3914129 in __Pyx_PyObject_CallMethO (arg=0x0, 
>     func=0x7fadeae64630) at build/cythonized/sage/cpython/atexit.c:3298
>         self = 0x7fadeae733b0
>         result = <optimized out>
>         cfunc = 0x474425
>         self = <optimized out>
>         result = <optimized out>
>         cfunc = <optimized out>
> #24 __Pyx_PyObject_CallNoArg (func=0x7fadeae64630)
>     at build/cythonized/sage/cpython/atexit.c:3324
> No locals.
> #25 __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ (
>     __pyx_v_self=0x7fad9f4e6fd0, __pyx_v_self=0x7fad9f4e6fd0, 
>     __pyx_v_exc=0x7fad9c5f0dc0) at build/cythonized/sage/cpython/atexit.c:1690
>         __pyx_t_2 = 0x0
>         __pyx_t_4 = <optimized out>
>         __pyx_r = 0x0
>         __pyx_t_1 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_r = <optimized out>
>         __pyx_t_1 = <optimized out>
>         __pyx_t_2 = <optimized out>
>         __pyx_t_3 = <optimized out>
>         __pyx_t_4 = <optimized out>
>         __pyx_dict_version = 454527
>         __pyx_dict_cached_value = 0x7fadeae733b0
>         function = <optimized out>
>         tmp = <optimized out>
>         __pyx_dict_version = 0
>         __pyx_dict_cached_value = 0x0
>         function = <optimized out>
>         tmp = <optimized out>
> #26 __pyx_pw_4sage_7cpython_6atexit_14restore_atexit_5__exit__ (
>     __pyx_v_self=0x7fad9f4e6fd0, __pyx_args=0x7fad9c5f0dc0, 
>     __pyx_kwds=<optimized out>) at build/cythonized/sage/cpython/atexit.c:1641
>         __pyx_v_exc = 0x7fad9c5f0dc0
>         __pyx_r = 0x0
> #27 0x00000000005f1f25 in PyCFunction_Call ()
> No symbol table info available.
> #28 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #29 0x000000000056db02 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #33 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #34 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #35 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #36 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #37 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #38 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #39 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #40 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #41 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #42 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #43 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #44 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #45 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #46 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #47 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #48 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #49 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x0000000000506976 in ?? ()
> No symbol table info available.
> #53 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #54 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #55 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #56 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #57 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #58 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #61 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #63 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #64 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #65 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #66 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #67 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #68 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #69 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #70 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #71 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #72 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #73 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #74 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #75 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb7b1640 in raise ()
> #6  0x00007fadeb79b434 in abort ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00007fade847ed00 in _fmpz_cleanup_mpz_content ()
> #11 0x00007fad9c5c80a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202
> #12 0x00007fad9c5c80a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38
>     33    cimport sage.libs.flint.padic
>     34    cimport sage.libs.flint.types
>     35    cimport sage.libs.flint.ulong_extras
>     36    
>     37    
> >   38    def free_flint_stack():
>     39        _fmpz_cleanup_mpz_content()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #15 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #16 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #17 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #18 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #19 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #20 0x00000000005f1650 in PyObject_Call ()
> #21 0x0000000000000000 in ?? ()
> #22 0x0000000000000000 in ?? ()
> #23 0x00007fada39140f4 in __Pyx_PyObject_CallMethO () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3298
> #24 0x00007fada39140ca in __Pyx_PyObject_CallNoArg () at ./sage/src/build/cythonized/sage/cpython/atexit.c:3324
> #25 0x00007fada3914032 in __pyx_pf_4sage_7cpython_6atexit_14restore_atexit_4__exit__ () at ./sage/src/build/cythonized/sage/cpython/atexit.c:1690
> #26 0x00007fada3914000 in __exit__ () at /<<PKGBUILDDIR>>/sage/src/sage/cpython/atexit.pyx:140
>    135            if self._clear:
>    136                _clear_exithandlers()
>    137    
>    138            return self
>    139    
> >  140        def __exit__(self, *exc):
>    141            if self._run:
>    142                atexit._run_exitfuncs()
>    143            _set_exithandlers(self._exithandlers)
>    144    
> #27 0x00000000005f1ed0 in PyCFunction_Call ()
> #28 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #33 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #34 0x0000000000000000 in ?? ()
> #35 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #36 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #37 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #38 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #39 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #42 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #43 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #44 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #45 0x0000000000000000 in ?? ()
> #46 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #47 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #48 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x0000000000000000 in ?? ()
> #53 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #54 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #55 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #56 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #57 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #63 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #64 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #65 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #66 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #67 0x00000000006857d0 in PyEval_EvalCode ()
> #68 0x0000000000000000 in ?? ()
> #69 0x0000000000000000 in ?? ()
> #70 0x0000000000674bf0 in PyRun_FileExFlags ()
> #71 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #72 0x00000000006ae6f0 in Py_RunMain ()
> #73 0x00000000006aec60 in Py_BytesMain ()
> #74 0x00007fadeb79cd20 in __libc_start_main ()
> #75 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 12308) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_zphb3h9w.log
> ------------------------------------------------------------------------
> Unhandled SIGABRT: An abort() occurred.
> This probably occurred because a *compiled* module has a bug
> in it and is not properly wrapped with sig_on(), sig_off().
> Python will now terminate.
> ------------------------------------------------------------------------
>     Timed out
> **********************************************************************
> Tests run before process (pid=12085) timed out:
> sage: from sage.tests.cmdline import test_executable ## line 87 ##
> sage: (out, err, ret) = test_executable(["cat"], "Hello World!") ## line 88 ##
> sage: out ## line 89 ##
> 'Hello World!'
> sage: err ## line 91 ##
> ''
> sage: ret ## line 93 ##
> 0
> sage: (out, err, ret) = test_executable(["sleep", "1"], timeout=0.1) ## line 98 ##
> sage: (out, err, ret) = test_executable(["sage"]) ## line 107 ##
> sage: out.find(version()) >= 0 ## line 108 ##
> True
> sage: err ## line 110 ##
> '------------------------------------------------------------------------\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fa47c43d97b]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fa47c43db49]\n/usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa54b)[0x7fa47c44054b]\n/lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fa47ed8a800]\n/lib/x86_64-linux-gnu/libc.so.6(cfree+0x4e)[0x7fa47edd90ce]\n/usr/lib/x86_64-linux-gnu/libflint-2.5.2.so(_fmpz_cleanup_mpz_content+0x50)[0x7fa43b171e70]\n/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/libs/flint/flint.cpython-38-x86_64-linux-gnu.so(+0x30a9)[0x7fa431e1f0a9]\npython3[0x5c02c2]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]\npython3(_PyEval_EvalCodeWithName+0x262)[0x565602]\npython3(_PyFunction_Vectorcall+0x393)[0x5f12a3]\npython3(PyObject_Call+0x1f7)[0x5f1847]\npython3[0x64b8e0]\npython3(Py_FinalizeEx+0x44)[0x677a94]\npython3(Py_RunMain+0x329)[0x6aea19]\npython3(Py_BytesMain+0x29)[0x6aec89]\n/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fa47ed75e0b]\npython3(_start+0x2a)[0x5f59da]\n------------------------------------------------------------------------\nAttaching gdb to process id 12097.\nGNU gdb (Debian 9.2-1) 9.2\nCopyright (C) 2020 Free Software Foundation, Inc.\nLicense GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\nThis is free software: you are free to change and redistribute it.\nThere is NO WARRANTY, to the extent permitted by law.\nType "show copying" and "show warranty" for details.\nThis GDB was configured as "x86_64-linux-gnu".\nType "show configuration" for configuration details.\nFor bug reporting instructions, please see:\n<http://www.gnu.org/software/gdb/bugs/>.\nFind the GDB manual and other documentation resources online at:\n    <http://www.gnu.org/software/gdb/documentation/>.\n\nFor help, type "help".\nType "apropos word" to search for commands related to "word".\n[New LWP 12106]\n[Thread debugging using libthread_db enabled]\nUsing host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".\n0x00007fa47ee19c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6\n\nStack backtrace\n---------------\nNo symbol table info available.\n#1  0x00007fa47c43da44 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#2  0x00007fa47c43db86 in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#3  0x00007fa47c44054b in ?? ()\n   from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so\nNo symbol table info available.\n#4  <signal handler called>\nNo symbol table info available.\n#5  0x00007fa47edd90ce in free () from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#6  0x00007fa43b171e70 in _fmpz_cleanup_mpz_content ()\n   from /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so\nNo symbol table info available.\n#7  0x00007fa431e1f0a9 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack\n    (__pyx_self=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1202\n        __pyx_r = 0x0\n        __pyx_r = <optimized out>\n#8  __pyx_pw_4sage_4libs_5flint_5flint_1free_flint_stack (\n    __pyx_self=<optimized out>, unused=<optimized out>)\n    at build/cythonized/sage/libs/flint/flint.c:1185\n        __pyx_r = 0x0\n#9  0x00000000005c02c2 in ?? ()\nNo symbol table info available.\n#10 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#11 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#12 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#13 0x000000000056c1bf in _PyEval_EvalFrameDefault ()\nNo symbol table info available.\n#14 0x0000000000565602 in _PyEval_EvalCodeWithName ()\nNo symbol table info available.\n#15 0x00000000005f12a3 in _PyFunction_Vectorcall ()\nNo symbol table info available.\n#16 0x00000000005f1847 in PyObject_Call ()\nNo symbol table info available.\n#17 0x000000000064b8e0 in ?? ()\nNo symbol table info available.\n#18 0x0000000000677a94 in Py_FinalizeEx ()\nNo symbol table info available.\n#19 0x00000000006aea19 in Py_RunMain ()\nNo symbol table info available.\n#20 0x00000000006aec89 in Py_BytesMain ()\nNo symbol table info available.\n#21 0x00007fa47ed75e0b in __libc_start_main ()\n   from /lib/x86_64-linux-gnu/libc.so.6\nNo symbol table info available.\n#22 0x00000000005f59da in _start ()\nNo symbol table info available.\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>\n\n\nCython backtrace\n----------------\n#0  0x00007fa47ee19bc0 in waitpid ()\n#1  0x0000000000000000 in ?? ()\n#2  0x0000000000000000 in ?? ()\n#3  0x0000000000000000 in ?? ()\n#4  0x0000000000000000 in ?? ()\n#5  0x00007fa47edd9080 in free ()\n#6  0x00007fa476731d00 in _fmpz_cleanup_mpz_content ()\n#7  0x00007fa431e1f0a4 in __pyx_pf_4sage_4libs_5flint_5flint_free_flint_stack () at ./sage/src/build/cythonized/sage/libs/flint/flint.c:1202\n#8  0x00007fa431e1f0a0 in free_flint_stack () at /<<PKGBUILDDIR>>/sage/src/sage/libs/flint/flint.pyx:38\n    33    cimport sage.libs.flint.padic\n    34    cimport sage.libs.flint.types\n    35    cimport sage.libs.flint.ulong_extras\n    36    \n    37    \n>   38    def free_flint_stack():\n    39        _fmpz_cleanup_mpz_content()\n#9  0x0000000000000000 in ?? ()\n#10 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#11 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#12 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#13 0x0000000000566c00 in _PyEval_EvalFrameDefault ()\n#14 0x00000000005653a0 in _PyEval_EvalCodeWithName ()\n#15 0x00000000005f0f10 in _PyFunction_Vectorcall ()\n#16 0x00000000005f1650 in PyObject_Call ()\n#17 0x0000000000000000 in ?? ()\n#18 0x0000000000677a50 in Py_FinalizeEx ()\n#19 0x00000000006ae6f0 in Py_RunMain ()\n#20 0x00000000006aec60 in Py_BytesMain ()\n#21 0x00007fa47ed75d20 in __libc_start_main ()\n#22 0x00000000005f59b0 in _start ()\n\n[Inferior 1 (process 12097) detached]\nSaved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_3w4mww3z.log\n------------------------------------------------------------------------\nUnhandled SIGSEGV: A segmentation fault occurred.\nThis probably occurred because a *compiled* module has a bug\nin it and is not properly wrapped with sig_on(), sig_off().\nPython will now terminate.\n------------------------------------------------------------------------\n/<<PKGBUILDDIR>>/sage/src/bin/sage-python: line 2: 12097 Segmentation fault      sage -python "$@"\n'
> sage: ret ## line 112 ##
> 139
> sage: (out, err, ret) = test_executable(["sage"], "3^33\n") ## line 115 ##
> ------------------------------------------------------------------------
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x797b)[0x7fadea57297b]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0x7b49)[0x7fadea572b49]
> /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so(+0xa53a)[0x7fadea57553a]
> /lib/x86_64-linux-gnu/libc.so.6(+0x3b800)[0x7fadeb7b1800]
> /lib/x86_64-linux-gnu/libc.so.6(__read+0x4c)[0x7fadeb86460c]
> python3(_Py_read+0xbc)[0x53850c]
> python3[0x642e8d]
> python3[0x5006b6]
> python3[0x5ef1b1]
> python3(PyObject_CallMethodObjArgs+0x17c)[0x5efccc]
> python3[0x64766d]
> python3[0x6483ac]
> python3[0x500fb3]
> python3[0x5ef1b1]
> python3(PyObject_CallMethodObjArgs+0x17c)[0x5efccc]
> python3[0x61b6d2]
> python3[0x619e33]
> python3[0x500fb3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x6f6)[0x5672f6]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x5fb770]
> python3[0x5c066c]
> python3(_PyEval_EvalFrameDefault+0x6f6)[0x5672f6]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyObject_FastCallDict+0x47)[0x5f2827]
> python3(_PyObject_Call_Prepend+0x5d)[0x5f093d]
> python3[0x597cf7]
> python3(_PyObject_MakeTpCall+0x28e)[0x5f23ae]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3[0x506ae0]
> python3(_PyEval_EvalFrameDefault+0x183f)[0x56843f]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3[0x597e40]
> python3(_PyObject_MakeTpCall+0x1f7)[0x5f2317]
> python3(_PyEval_EvalFrameDefault+0x576e)[0x56c36e]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3[0x506976]
> python3(_PyEval_EvalFrameDefault+0x55bf)[0x56c1bf]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(_PyFunction_Vectorcall+0x393)[0x5f12a3]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyFunction_Vectorcall+0x1b6)[0x5f10c6]
> python3(_PyEval_EvalFrameDefault+0x8c7)[0x5674c7]
> python3(_PyEval_EvalCodeWithName+0x262)[0x565602]
> python3(PyEval_EvalCode+0x23)[0x6857f3]
> python3[0x674b51]
> python3[0x674bcf]
> python3(PyRun_FileExFlags+0x97)[0x674c87]
> python3(PyRun_SimpleFileExFlags+0x17a)[0x676c5a]
> python3(Py_RunMain+0x20e)[0x6ae8fe]
> python3(Py_BytesMain+0x29)[0x6aec89]
> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7fadeb79ce0b]
> python3(_start+0x2a)[0x5f59da]
> ------------------------------------------------------------------------
> Attaching gdb to process id 12085.
> GNU gdb (Debian 9.2-1) 9.2
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word".
> (No debugging symbols found in /usr/bin/python3.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libc.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libpthread.so.0)
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> (No debugging symbols found in /lib/x86_64-linux-gnu/libdl.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libutil.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libm.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libexpat.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libz.so.1)
> (No debugging symbols found in /lib64/ld-linux-x86-64.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/resource.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_opcode.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_json.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libbz2.so.1.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmp.so.10)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ssl.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libssl.so.1.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_contextvars.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_asyncio.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_hashlib.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpari-gmp-tls.so.6)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libgcc_s.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/gmpy2/gmpy2.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpc.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfr.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_decimal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpdec.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/liblzma.so.5)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Compiler/Scanning.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Actions.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/Cython/Plex/Scanners.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_ctypes.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libffi.so.7)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/mmap.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_multiprocessing.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgsl.so.25)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgslcblas.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.6.0.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libntl.so.43)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgf2x.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/pari_instance.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/gen.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/stack.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/string_utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/convert.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/closure.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cypari2/handle_error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libnss_files.so.2)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/termios.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pselect.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/pysignals.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libmpfi.so.0)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_linux.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/psutil/_psutil_posix.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsymmetrica.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgivaro.so.9)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgmpxx.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-arb.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libflint-2.5.2.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-Singular-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-polys-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-factory-4.1.1.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-omalloc-4.1.1+0.9.6.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsingular-resources-4.1.1.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libreadline.so.8)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libtinfo.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/singmathic.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/singular/MOD/p_Procs_FieldIndep.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgomp.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libatlas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgfortran.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libquadmath.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libiml.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libcblas.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4ri-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgd.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpng16.so.16)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfontconfig.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libfreetype.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjpeg.so.62)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXpm.so.4)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libtiff.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libwebp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libuuid.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libX11.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzstd.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libjbig.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libxcb.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXau.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libXdmcp.so.6)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbsd.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libm4rie-0.0.20200125.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpynac.so.18)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpython3.8.so.1.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/parser.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libbrial_groebner.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgap.so.7)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/librw.so.0)
> (No debugging symbols found in /usr/lib/libcliquer.so.1)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_sqlite3.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsqlite3.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzn_poly-0.9.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/linear_algebra.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libppl.so.14)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/constraint.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/mip_problem.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/polyhedron.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/ppl/bit_arrays.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblrcalc.so.1)
> (No debugging symbols found in /usr/lib/python3/dist-packages/cysignals/alarm.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/audioop.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_umath.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/core/_multiarray_tests.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/lapack_lite.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/liblapack.so.3)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/linalg/_umath_linalg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/fft/_pocketfft_internal.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/mtrand.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bit_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_common.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_bounded_integers.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_mt19937.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_philox.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_pcg64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_sfc64.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/numpy/random/_generator.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/ft2font.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/kiwisolver.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_path.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/_image.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_uuid.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/matplotlib/backends/_backend_agg.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/PIL/_imaging.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libimagequant.so.0)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_queue.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_lsprof.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/constants.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/error.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libzmq.so.5)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libsodium.so.23)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libpgm-5.2.so.0)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libnorm.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2)
> (No debugging symbols found in /lib/x86_64-linux-gnu/librt.so.1)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5.so.3)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libk5crypto.so.3)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libcom_err.so.2)
> (No debugging symbols found in /usr/lib/x86_64-linux-gnu/libkrb5support.so.0)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libkeyutils.so.1)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libresolv.so.2)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/message.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/context.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/socket.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/utils.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_poll.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_version.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_device.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/zmq/backend/cython/_proxy_steerable.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3/dist-packages/tornado/speedups.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/_curses.cpython-38-x86_64-linux-gnu.so)
> (No debugging symbols found in /lib/x86_64-linux-gnu/libncursesw.so.6)
> (No debugging symbols found in /usr/lib/python3.8/lib-dynload/readline.cpython-38-x86_64-linux-gnu.so)
> 0x00007fadeb840c0e in waitpid () from /lib/x86_64-linux-gnu/libc.so.6
> 
> Stack backtrace
> ---------------
> No symbol table info available.
> #1  0x00007fadea572a44 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #2  0x00007fadea572b86 in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #3  0x00007fadea57553a in ?? ()
>    from /usr/lib/python3/dist-packages/cysignals/signals.cpython-38-x86_64-linux-gnu.so
> No symbol table info available.
> #4  <signal handler called>
> No symbol table info available.
> #5  0x00007fadeb86460c in read () from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #6  0x000000000053850c in _Py_read ()
> No symbol table info available.
> #7  0x0000000000642e8d in ?? ()
> No symbol table info available.
> #8  0x00000000005006b6 in ?? ()
> No symbol table info available.
> #9  0x00000000005ef1b1 in ?? ()
> No symbol table info available.
> #10 0x00000000005efccc in PyObject_CallMethodObjArgs ()
> No symbol table info available.
> #11 0x000000000064766d in ?? ()
> No symbol table info available.
> #12 0x00000000006483ac in ?? ()
> No symbol table info available.
> #13 0x0000000000500fb3 in ?? ()
> No symbol table info available.
> #14 0x00000000005ef1b1 in ?? ()
> No symbol table info available.
> #15 0x00000000005efccc in PyObject_CallMethodObjArgs ()
> No symbol table info available.
> #16 0x000000000061b6d2 in ?? ()
> No symbol table info available.
> #17 0x0000000000619e33 in ?? ()
> No symbol table info available.
> #18 0x0000000000500fb3 in ?? ()
> No symbol table info available.
> #19 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #20 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #21 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #22 0x00000000005672f6 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #23 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #24 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #25 0x00000000005fb770 in ?? ()
> No symbol table info available.
> #26 0x00000000005c066c in ?? ()
> No symbol table info available.
> #27 0x00000000005672f6 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #28 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #29 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #30 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #31 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #32 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #33 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #34 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #35 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #36 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #37 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #38 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #39 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #40 0x00000000005f2827 in _PyObject_FastCallDict ()
> No symbol table info available.
> #41 0x00000000005f093d in _PyObject_Call_Prepend ()
> No symbol table info available.
> #42 0x0000000000597cf7 in ?? ()
> No symbol table info available.
> #43 0x00000000005f23ae in _PyObject_MakeTpCall ()
> No symbol table info available.
> #44 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #45 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #46 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #47 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #48 0x0000000000506ae0 in ?? ()
> No symbol table info available.
> #49 0x000000000056843f in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #50 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #51 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #52 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #53 0x0000000000597e40 in ?? ()
> No symbol table info available.
> #54 0x00000000005f2317 in _PyObject_MakeTpCall ()
> No symbol table info available.
> #55 0x000000000056c36e in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #56 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #57 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #58 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #59 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #60 0x0000000000506976 in ?? ()
> No symbol table info available.
> #61 0x000000000056c1bf in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #62 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #63 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #64 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #65 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #66 0x00000000005f12a3 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #67 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #68 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #69 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #70 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #71 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #72 0x00000000005f10c6 in _PyFunction_Vectorcall ()
> No symbol table info available.
> #73 0x00000000005674c7 in _PyEval_EvalFrameDefault ()
> No symbol table info available.
> #74 0x0000000000565602 in _PyEval_EvalCodeWithName ()
> No symbol table info available.
> #75 0x00000000006857f3 in PyEval_EvalCode ()
> No symbol table info available.
> #76 0x0000000000674b51 in ?? ()
> No symbol table info available.
> #77 0x0000000000674bcf in ?? ()
> No symbol table info available.
> #78 0x0000000000674c87 in PyRun_FileExFlags ()
> No symbol table info available.
> #79 0x0000000000676c5a in PyRun_SimpleFileExFlags ()
> No symbol table info available.
> #80 0x00000000006ae8fe in Py_RunMain ()
> No symbol table info available.
> #81 0x00000000006aec89 in Py_BytesMain ()
> No symbol table info available.
> #82 0x00007fadeb79ce0b in __libc_start_main ()
>    from /lib/x86_64-linux-gnu/libc.so.6
> No symbol table info available.
> #83 0x00000000005f59da in _start ()
> No symbol table info available.
> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
> 
> 
> Cython backtrace
> ----------------
> #0  0x00007fadeb840bc0 in waitpid ()
> #1  0x0000000000000000 in ?? ()
> #2  0x0000000000000000 in ?? ()
> #3  0x0000000000000000 in ?? ()
> #4  0x0000000000000000 in ?? ()
> #5  0x00007fadeb8645c0 in read ()
> #6  0x0000000000538450 in _Py_read ()
> #7  0x0000000000000000 in ?? ()
> #8  0x0000000000000000 in ?? ()
> #9  0x0000000000000000 in ?? ()
> #10 0x00000000005efb50 in PyObject_CallMethodObjArgs ()
> #11 0x0000000000000000 in ?? ()
> #12 0x0000000000000000 in ?? ()
> #13 0x0000000000000000 in ?? ()
> #14 0x0000000000000000 in ?? ()
> #15 0x00000000005efb50 in PyObject_CallMethodObjArgs ()
> #16 0x0000000000000000 in ?? ()
> #17 0x0000000000000000 in ?? ()
> #18 0x0000000000000000 in ?? ()
> #19 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #20 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #21 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #22 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #23 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #24 0x00000000006857d0 in PyEval_EvalCode ()
> #25 0x0000000000000000 in ?? ()
> #26 0x0000000000000000 in ?? ()
> #27 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #28 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #29 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #30 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #31 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #32 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #33 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #34 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #35 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #36 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #37 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #38 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #39 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #40 0x00000000005f27e0 in _PyObject_FastCallDict ()
> #41 0x00000000005f08e0 in _PyObject_Call_Prepend ()
> #42 0x0000000000000000 in ?? ()
> #43 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #44 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #45 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #46 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #47 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #48 0x0000000000000000 in ?? ()
> #49 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #50 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #51 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #52 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #53 0x0000000000000000 in ?? ()
> #54 0x00000000005f2120 in _PyObject_MakeTpCall ()
> #55 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #56 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #57 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #58 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #59 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #60 0x0000000000000000 in ?? ()
> #61 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #62 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #63 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #64 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #65 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #66 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #67 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #68 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #69 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #70 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #71 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #72 0x00000000005f0f10 in _PyFunction_Vectorcall ()
> #73 0x0000000000566c00 in _PyEval_EvalFrameDefault ()
> #74 0x00000000005653a0 in _PyEval_EvalCodeWithName ()
> #75 0x00000000006857d0 in PyEval_EvalCode ()
> #76 0x0000000000000000 in ?? ()
> #77 0x0000000000000000 in ?? ()
> #78 0x0000000000674bf0 in PyRun_FileExFlags ()
> #79 0x0000000000676ae0 in PyRun_SimpleFileExFlags ()
> #80 0x00000000006ae6f0 in Py_RunMain ()
> #81 0x00000000006aec60 in Py_BytesMain ()
> #82 0x00007fadeb79cd20 in __libc_start_main ()
> #83 0x00000000005f59b0 in _start ()
> 
> [Inferior 1 (process 12085) detached]
> Saved trace to /<<PKGBUILDDIR>>/debian/test/crash_logs/crash_y6tob5jr.log
> ------------------------------------------------------------------------
> 
> **********************************************************************
> sage -t --long src/sage/tests/gosper-sum.py
>     [100 tests, 14.78 s]
> sage -t --long src/sage/tests/py3_syntax.py
>     [30 tests, 10.82 s]
> sage -t --long src/sage/tests/stl_vector.pyx
>     [23 tests, 0.01 s]
> sage -t --long src/sage/tests/startup.py
>     [8 tests, 4.26 s]
> sage -t --long src/sage/tests/sympy.py
>     [5 tests, 0.05 s]
> sage -t --long src/sage/typeset/__init__.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/typeset/all.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/tests/symbolic-series.py
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 23, in sage.tests.symbolic-series
> Failed example:
>     test(sin(x), 9, 1/362880)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[1]>", line 1, in <module>
>         test(sin(x), Integer(9), Integer(1)/Integer(362880))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>     AssertionError
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 24, in sage.tests.symbolic-series
> Failed example:
>     test(sin(x)+cos(x), 8, 1/40320)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[2]>", line 1, in <module>
>         test(sin(x)+cos(x), Integer(8), Integer(1)/Integer(40320))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 25, in sage.tests.symbolic-series
> Failed example:
>     test(sin(x)*cos(x), 11, -4/155925)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[3]>", line 1, in <module>
>         test(sin(x)*cos(x), Integer(11), -Integer(4)/Integer(155925))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 26, in sage.tests.symbolic-series
> Failed example:
>     test(sin(atan(x)), 27, -1300075/8388608)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[4]>", line 1, in <module>
>         test(sin(atan(x)), Integer(27), -Integer(1300075)/Integer(8388608))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 27, in sage.tests.symbolic-series
> Failed example:
>     test(cos(x/(1-x)), 11, -125929/362880)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[5]>", line 1, in <module>
>         test(cos(x/(Integer(1)-x)), Integer(11), -Integer(125929)/Integer(362880))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 28, in sage.tests.symbolic-series
> Failed example:
>     test(1/(1-x), 99, 1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[6]>", line 1, in <module>
>         test(Integer(1)/(Integer(1)-x), Integer(99), Integer(1))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 29, in sage.tests.symbolic-series
> Failed example:
>     test(x/(1-x-x^2), 35, 9227465)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[7]>", line 1, in <module>
>         test(x/(Integer(1)-x-x**Integer(2)), Integer(35), Integer(9227465))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 30, in sage.tests.symbolic-series
> Failed example:
>     test(x^3/(1-2*x^2), 49, 8388608)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[8]>", line 1, in <module>
>         test(x**Integer(3)/(Integer(1)-Integer(2)*x**Integer(2)), Integer(49), Integer(8388608))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 31, in sage.tests.symbolic-series
> Failed example:
>     test(1/(1-sin(x)), 10, 1382/14175)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[9]>", line 1, in <module>
>         test(Integer(1)/(Integer(1)-sin(x)), Integer(10), Integer(1382)/Integer(14175))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 32, in sage.tests.symbolic-series
> Failed example:
>     test(1/x, -1, 1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[10]>", line 1, in <module>
>         test(Integer(1)/x, -Integer(1), Integer(1))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 33, in sage.tests.symbolic-series
> Failed example:
>     test(1/x/(1-x), 0, 1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[11]>", line 1, in <module>
>         test(Integer(1)/x/(Integer(1)-x), Integer(0), Integer(1))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 34, in sage.tests.symbolic-series
> Failed example:
>     test(sqrt(4-x), 6, -21/2097152)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[12]>", line 1, in <module>
>         test(sqrt(Integer(4)-x), Integer(6), -Integer(21)/Integer(2097152))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>     AssertionError
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 35, in sage.tests.symbolic-series
> Failed example:
>     test((1-x)^(-2/3), 10, 1621477/4782969)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[13]>", line 1, in <module>
>         test((Integer(1)-x)**(-Integer(2)/Integer(3)), Integer(10), Integer(1621477)/Integer(4782969))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 36, in sage.tests.symbolic-series
> Failed example:
>     test(sqrt(1-x), 10, -2431/262144)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[14]>", line 1, in <module>
>         test(sqrt(Integer(1)-x), Integer(10), -Integer(2431)/Integer(262144))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 37, in sage.tests.symbolic-series
> Failed example:
>     test(sqrt(cos(x)), 8, -559/645120)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[15]>", line 1, in <module>
>         test(sqrt(cos(x)), Integer(8), -Integer(559)/Integer(645120))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 38, in sage.tests.symbolic-series
> Failed example:
>     test(cos(x)^(-2/3), 10, 701/127575)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[16]>", line 1, in <module>
>         test(cos(x)**(-Integer(2)/Integer(3)), Integer(10), Integer(701)/Integer(127575))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 39, in sage.tests.symbolic-series
> Failed example:
>     test(log(1+x), 98, -1/98)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[17]>", line 1, in <module>
>         test(log(Integer(1)+x), Integer(98), -Integer(1)/Integer(98))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>     AssertionError
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 40, in sage.tests.symbolic-series
> Failed example:
>     test(log(cos(x)), 12, -691/935550)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[18]>", line 1, in <module>
>         test(log(cos(x)), Integer(12), -Integer(691)/Integer(935550))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>     AssertionError
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 41, in sage.tests.symbolic-series
> Failed example:
>     test(log(1/(1-x)), 48, 1/48)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[19]>", line 1, in <module>
>         test(log(Integer(1)/(Integer(1)-x)), Integer(48), Integer(1)/Integer(48))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 42, in sage.tests.symbolic-series
> Failed example:
>     test(exp(x), 9, 1/362880)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[20]>", line 1, in <module>
>         test(exp(x), Integer(9), Integer(1)/Integer(362880))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 43, in sage.tests.symbolic-series
> Failed example:
>     test(exp(log(1+x)), 0, 1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[21]>", line 1, in <module>
>         test(exp(log(Integer(1)+x)), Integer(0), Integer(1))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 44, in sage.tests.symbolic-series
> Failed example:
>     test(exp(log(1+x)), 1, 1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[22]>", line 1, in <module>
>         test(exp(log(Integer(1)+x)), Integer(1), Integer(1))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 45, in sage.tests.symbolic-series
> Failed example:
>     test(log(exp(x)), 1, 1)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[23]>", line 1, in <module>
>         test(log(exp(x)), Integer(1), Integer(1))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 46, in sage.tests.symbolic-series
> Failed example:
>     test(exp(sin(x)), 10, -2951/3628800)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[24]>", line 1, in <module>
>         test(exp(sin(x)), Integer(10), -Integer(2951)/Integer(3628800))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 47, in sage.tests.symbolic-series
> Failed example:
>     test(cos(x)^sin(x), 16, 1381/2661120)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[25]>", line 1, in <module>
>         test(cos(x)**sin(x), Integer(16), Integer(1381)/Integer(2661120))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 48, in sage.tests.symbolic-series
> Failed example:
>     test(tan(x), 13, 21844/6081075)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[26]>", line 1, in <module>
>         test(tan(x), Integer(13), Integer(21844)/Integer(6081075))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>     AssertionError
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 49, in sage.tests.symbolic-series
> Failed example:
>     test(tan(x/(1-x)), 12, 1303712/14175)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[27]>", line 1, in <module>
>         test(tan(x/(Integer(1)-x)), Integer(12), Integer(1303712)/Integer(14175))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 50, in sage.tests.symbolic-series
> Failed example:
>     test(cot(x), 13, -4/18243225)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[28]>", line 1, in <module>
>         test(cot(x), Integer(13), -Integer(4)/Integer(18243225))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 51, in sage.tests.symbolic-series
> Failed example:
>     test(cot(log(1+x)), 8, 4399/41472)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[29]>", line 1, in <module>
>         test(cot(log(Integer(1)+x)), Integer(8), Integer(4399)/Integer(41472))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 52, in sage.tests.symbolic-series
> Failed example:
>     test(sec(x), 14, 199360981/87178291200)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[30]>", line 1, in <module>
>         test(sec(x), Integer(14), Integer(199360981)/Integer(87178291200))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>     AssertionError
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 53, in sage.tests.symbolic-series
> Failed example:
>     test(sec(x*sqrt(1-x)), 11, -21463/103680)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[31]>", line 1, in <module>
>         test(sec(x*sqrt(Integer(1)-x)), Integer(11), -Integer(21463)/Integer(103680))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 54, in sage.tests.symbolic-series
> Failed example:
>     test(csc(x), 13, 8191/37362124800)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[32]>", line 1, in <module>
>         test(csc(x), Integer(13), Integer(8191)/Integer(37362124800))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 55, in sage.tests.symbolic-series
> Failed example:
>     test(csc(x/(1-x)), 14, 355857510913/100590336000)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[33]>", line 1, in <module>
>         test(csc(x/(Integer(1)-x)), Integer(14), Integer(355857510913)/Integer(100590336000))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 56, in sage.tests.symbolic-series
> Failed example:
>     test(asin(x), 15, 143/10240)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[34]>", line 1, in <module>
>         test(asin(x), Integer(15), Integer(143)/Integer(10240))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 57, in sage.tests.symbolic-series
> Failed example:
>     test(asin(x/(1-x)), 16, 1259743/2048)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[35]>", line 1, in <module>
>         test(asin(x/(Integer(1)-x)), Integer(16), Integer(1259743)/Integer(2048))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 58, in sage.tests.symbolic-series
> Failed example:
>     test(atan(x), 19, -1/19)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[36]>", line 1, in <module>
>         test(atan(x), Integer(19), -Integer(1)/Integer(19))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 59, in sage.tests.symbolic-series
> Failed example:
>     test(atan(x/(1-x)), 33, 65536/33)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[37]>", line 1, in <module>
>         test(atan(x/(Integer(1)-x)), Integer(33), Integer(65536)/Integer(33))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 60, in sage.tests.symbolic-series
> Failed example:
>     test(sinh(x), 9, 1/362880)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[38]>", line 1, in <module>
>         test(sinh(x), Integer(9), Integer(1)/Integer(362880))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 61, in sage.tests.symbolic-series
> Failed example:
>     test(sinh(x/(1-x)), 10, 325249/40320)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[39]>", line 1, in <module>
>         test(sinh(x/(Integer(1)-x)), Integer(10), Integer(325249)/Integer(40320))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 62, in sage.tests.symbolic-series
> Failed example:
>     test(cosh(x), 10, 1/3628800)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[40]>", line 1, in <module>
>         test(cosh(x), Integer(10), Integer(1)/Integer(3628800))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 63, in sage.tests.symbolic-series
> Failed example:
>     test(cosh(x/(1-x)), 11, 3756889/362880)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[41]>", line 1, in <module>
>         test(cosh(x/(Integer(1)-x)), Integer(11), Integer(3756889)/Integer(362880))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 64, in sage.tests.symbolic-series
> Failed example:
>     test(tanh(x), 13, 21844/6081075)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[42]>", line 1, in <module>
>         test(tanh(x), Integer(13), Integer(21844)/Integer(6081075))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 65, in sage.tests.symbolic-series
> Failed example:
>     test(tanh(x/(1-x)), 14, 225979/66825)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[43]>", line 1, in <module>
>         test(tanh(x/(Integer(1)-x)), Integer(14), Integer(225979)/Integer(66825))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 66, in sage.tests.symbolic-series
> Failed example:
>     test(coth(x), 13, 4/18243225)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[44]>", line 1, in <module>
>         test(coth(x), Integer(13), Integer(4)/Integer(18243225))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 67, in sage.tests.symbolic-series
> Failed example:
>     test(coth(x/(1-x)), 14, -3651803/16372125)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[45]>", line 1, in <module>
>         test(coth(x/(Integer(1)-x)), Integer(14), -Integer(3651803)/Integer(16372125))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 68, in sage.tests.symbolic-series
> Failed example:
>     test(sech(x), 16, 3878302429/4184557977600)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[46]>", line 1, in <module>
>         test(sech(x), Integer(16), Integer(3878302429)/Integer(4184557977600))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 69, in sage.tests.symbolic-series
> Failed example:
>     test(sech(x/(1-x)), 16, -34746888589811/4184557977600)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[47]>", line 1, in <module>
>         test(sech(x/(Integer(1)-x)), Integer(16), -Integer(34746888589811)/Integer(4184557977600))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 70, in sage.tests.symbolic-series
> Failed example:
>     test(csch(x), 13, -8191/37362124800)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[48]>", line 1, in <module>
>         test(csch(x), Integer(13), -Integer(8191)/Integer(37362124800))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 71, in sage.tests.symbolic-series
> Failed example:
>     test(csch(x/(1-x)), 14, 2431542527/11176704000)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[49]>", line 1, in <module>
>         test(csch(x/(Integer(1)-x)), Integer(14), Integer(2431542527)/Integer(11176704000))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 72, in sage.tests.symbolic-series
> Failed example:
>     test(atanh(x), 99, 1/99)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[50]>", line 1, in <module>
>         test(atanh(x), Integer(99), Integer(1)/Integer(99))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 73, in sage.tests.symbolic-series
> Failed example:
>     test(atanh(x/(1-x)), 16, 2048)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[51]>", line 1, in <module>
>         test(atanh(x/(Integer(1)-x)), Integer(16), Integer(2048))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 74, in sage.tests.symbolic-series
> Failed example:
>     test(asinh(x), 15, -143/10240)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[52]>", line 1, in <module>
>         test(asinh(x), Integer(15), -Integer(143)/Integer(10240))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> File "src/sage/tests/symbolic-series.py", line 75, in sage.tests.symbolic-series
> Failed example:
>     test(asinh(x/(1-x)), 16, -3179/2048)
> Exception raised:
>     Traceback (most recent call last):
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 672, in _run
>         self.compile_and_execute(example, compiler, test.globs)
>       File "/<<PKGBUILDDIR>>/debian/build/usr/lib/python3/dist-packages/sage/doctest/forker.py", line 1114, in compile_and_execute
>         exec(compiled, globs)
>       File "<doctest sage.tests.symbolic-series[53]>", line 1, in <module>
>         test(asinh(x/(Integer(1)-x)), Integer(16), -Integer(3179)/Integer(2048))
>       File "<doctest sage.tests.symbolic-series[0]>", line 2, in test
>         assert(ex.series(x, coeff+Integer(3)).coefficient(x,coeff) == value)
>       File "sage/symbolic/expression.pyx", line 4439, in sage.symbolic.expression.Expression.series (build/cythonized/sage/symbolic/expression.cpp:27265)
>         sig_on()
>     RuntimeError: Aborted
> **********************************************************************
> 1 item had failures:
>   53 of  55 in sage.tests.symbolic-series
>     [54 tests, 53 failures, 5.23 s]
> sage -t --long src/sage/typeset/character_art.py
>     [101 tests, 1.22 s]
> sage -t --long src/sage/typeset/character_art_factory.py
>     [55 tests, 8.87 s]
> sage -t --long src/sage/typeset/symbols.py
>     [28 tests, 0.02 s]
> sage -t --long src/sage/typeset/unicode_art.py
>     [14 tests, 4.01 s]
> sage -t --long src/sage/version.py
>     [0 tests, 0.00 s]
> sage -t --long src/sage/typeset/ascii_art.py
>     Killed due to abort
> **********************************************************************
> Tests run before process (pid=12308) failed:
> sage: n = var('n') ## line 18 ##
> sage: integrate(n^2/x,x) ## line 19 ##
> n^2*log(x)
> sage: ascii_art(integrate(n^2/x,x)) ## line 21 ##
>  2       
> n *log(x)
> sage: ascii_art(integrate(n^2/(pi*x),x)) ## line 24 ##
>  2       
> n *log(x)
> ---------
>     pi   
> sage: ascii_art(list(Partitions(6))) ## line 29 ##
> [                                                       * ]
> [                                                   **  * ]
> [                                      ***      **  *   * ]
> [                      ****       ***  *    **  **  *   * ]
> [         *****  ****  *     ***  **   *    **  *   *   * ]
> [ ******, *    , **  , *   , ***, *  , *  , **, * , * , * ]
> sage: from sage.repl.interpreter import get_test_shell ## line 40 ##
> sage: shell = get_test_shell() ## line 41 ##
> sage: shell.run_cell('%display ascii_art') ## line 42 ##
> sage: shell.run_cell("i = var('i')") ## line 43 ##
> sage: shell.run_cell('sum(factorial(i)*x^i, i, 0, 10)') ## line 44 ##
>          10           9          8         7        6        5       4      3 
> 3628800*x   + 362880*x  + 40320*x  + 5040*x  + 720*x  + 120*x  + 24*x  + 6*x  
> 
>      2        
> + 2*x  + x + 1
> sage: shell.run_cell('3/(7*x)') ## line 50 ##
>  3 
> ---
> 7*x
> sage: shell.run_cell('list(Compositions(5))') ## line 54 ##
> [ *                                                                       
> [ *  **   *        *                   *                                  
> [ *  *   **  ***   *   **    *         *   **    *          *             
> [ *  *   *   *    **  **   ***  ****   *   *    **   ***    *    **     * 
> [ *, * , * , *  , * , *  , *  , *   , **, ** , ** , **  , ***, *** , ****,
> 
>        ]
>        ]
>        ]
>        ]
>  ***** ]
> sage: shell.run_cell('%display simple') ## line 66 ##
> sage: shell.quit() ## line 67 ##
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 138 ##
> 0
> sage: i = var('i') ## line 176 ##
> sage: ascii_art(sum(pi^i/factorial(i)*x^i, i, 0, oo)) ## line 177 ##
>  pi*x
> e    
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 180 ##
> 0
> sage: ascii_art(integral(exp(x+x^2)/(x+1), x)) ## line 220 ##
>   /          
>  |           
>  |   2       
>  |  x  + x   
>  | e         
>  | ------- dx
>  |  x + 1    
>  |           
> /            
> sage: ident = lambda n: identity_matrix(ZZ, n) ## line 233 ##
> sage: ascii_art(ident(1), ident(2), ident(3), sep=' : ') ## line 234 ##
>               [1 0 0]
>       [1 0]   [0 1 0]
> [1] : [0 1] : [0 0 1]
> sage: ascii_art(ident(2), baseline=-1) + ascii_art(ident(3)) ## line 241 ##
> [1 0][1 0 0]
> [0 1][0 1 0]
>      [0 0 1]
> sage: ascii_art(ident(1), ident(2), ident(3), sep=' -- ', sep_baseline=-1) ## line 248 ##
>                 [1 0 0]
>     -- [1 0] -- [0 1 0]
> [1]    [0 1]    [0 0 1]
> sage: sep_line = ascii_art('\n'.join(' | ' for _ in range(6)), baseline=6) ## line 256 ##
> sage: ascii_art(*Partitions(6), separator=sep_line, sep_baseline=0) ## line 257 ##
>        |       |      |      |     |     |     |    |    |    | *
>        |       |      |      |     |     |     |    |    | ** | *
>        |       |      |      |     |     | *** |    | ** | *  | *
>        |       |      | **** |     | *** | *   | ** | ** | *  | *
>        | ***** | **** | *    | *** | **  | *   | ** | *  | *  | *
> ****** | *     | **   | *    | *** | *   | *   | ** | *  | *  | *
> sage: n = var('n') ## line 267 ##
> sage: ascii_art(sum(binomial(2 * n, n + 1) * x^n, n, 0, oo)) ## line 268 ##
>  /        _________    \ 
> -\2*x + \/ 1 - 4*x  - 1/ 
> -------------------------
>            _________     
>      2*x*\/ 1 - 4*x      
> sage: ascii_art(list(DyckWords(3))) ## line 274 ##
> [                                   /\   ]
> [            /\    /\      /\/\    /  \  ]
> [ /\/\/\, /\/  \, /  \/\, /    \, /    \ ]
> sage: ascii_art(1) ## line 278 ##
> 1
> sage: sig_on_count() # check sig_on/off pairings (virtual doctest) ## line 280 ##
> 0
> 
> **********************************************************************
> sage -t --long src/sage/tests/parigp.py
>     [13 tests, 474.35 s]
> ----------------------------------------------------------------------
> sage -t --long src/sage/calculus/test_sympy.py  # 3 doctests failed
> sage -t --long src/sage/categories/homset.py  # 3 doctests failed
> sage -t --long src/sage/combinat/cluster_algebra_quiver/cluster_seed.py  # 1 doctest failed
> sage -t --long src/sage/combinat/cluster_algebra_quiver/interact.py  # 1 doctest failed
> sage -t --long src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py  # 1 doctest failed
> sage -t --long src/sage/combinat/cluster_algebra_quiver/quiver.py  # 1 doctest failed
> sage -t --long src/sage/combinat/finite_state_machine.py  # 1 doctest failed
> sage -t --long src/sage/combinat/posets/hasse_diagram.py  # 2 doctests failed
> sage -t --long src/sage/combinat/root_system/cartan_type.py  # 4 doctests failed
> sage -t --long src/sage/combinat/root_system/root_lattice_realizations.py  # 1 doctest failed
> sage -t --long src/sage/combinat/tutorial.py  # 4 doctests failed
> sage -t --long src/sage/cpython/dict_del_by_value.pyx  # 2 doctests failed
> sage -t --long src/sage/data_structures/mutable_poset.py  # 1 doctest failed
> sage -t --long src/sage/doctest/forker.py  # 10 doctests failed
> sage -t --long src/sage/dynamics/complex_dynamics/mandel_julia.py  # 3 doctests failed
> sage -t --long src/sage/env.py  # 1 doctest failed
> sage -t --long src/sage/graphs/digraph_generators.py  # 5 doctests failed
> sage -t --long src/sage/graphs/generic_graph.py  # 3 doctests failed
> sage -t --long src/sage/graphs/generators/families.py  # 1 doctest failed
> sage -t --long src/sage/graphs/graph_generators.py  # 1 doctest failed
> sage -t --long src/sage/homology/simplicial_complex_morphism.py  # 1 doctest failed
> sage -t --long src/sage/interacts/test_jupyter.rst  # 1 doctest failed
> sage -t --long src/sage/interfaces/giac.py  # 1 doctest failed
> sage -t --long src/sage/interfaces/macaulay2.py  # Killed due to abort
> sage -t --long src/sage/interfaces/sympy.py  # 1 doctest failed
> sage -t --long src/sage/interfaces/tests.py  # 1 doctest failed
> sage -t --long src/sage/manifolds/calculus_method.py  # 6 doctests failed
> sage -t --long src/sage/manifolds/chart_func.py  # 149 doctests failed
> sage -t --long src/sage/manifolds/chart.py  # 6 doctests failed
> sage -t --long src/sage/manifolds/continuous_map.py  # 6 doctests failed
> sage -t --long src/sage/manifolds/differentiable/affine_connection.py  # 11 doctests failed
> sage -t --long src/sage/manifolds/differentiable/diff_form.py  # 21 doctests failed
> sage -t --long src/sage/manifolds/differentiable/metric.py  # 14 doctests failed
> sage -t --long src/sage/manifolds/differentiable/tensorfield.py  # 31 doctests failed
> sage -t --long src/sage/manifolds/differentiable/tensorfield_paral.py  # 7 doctests failed
> sage -t --long src/sage/manifolds/manifold.py  # 7 doctests failed
> sage -t --long src/sage/manifolds/scalarfield.py  # 91 doctests failed
> sage -t --long src/sage/matrix/matrix_double_dense.pyx  # 1 doctest failed
> sage -t --long src/sage/misc/misc.py  # 1 doctest failed
> sage -t --long src/sage/misc/sphinxify.py  # 4 doctests failed
> sage -t --long src/sage/misc/sageinspect.py  # Killed due to abort
> sage -t --long src/sage/misc/sagedoc.py  # 1 doctest failed
> sage -t --long src/sage/plot/colors.py  # 5 doctests failed
> sage -t --long src/sage/plot/plot3d/base.pyx  # 1 doctest failed
> sage -t --long src/sage/plot/multigraphics.py  # 2 doctests failed
> sage -t --long src/sage/repl/attach.py  # Killed due to abort
> sage -t --long src/sage/repl/display/formatter.py  # Killed due to abort
> sage -t --long src/sage/repl/interface_magic.py  # Killed due to abort
> sage -t --long src/sage/repl/ipython_kernel/install.py  # 2 doctests failed
> sage -t --long src/sage/repl/ipython_kernel/widgets_sagenb.py  # 1 doctest failed
> sage -t --long src/sage/repl/interpreter.py  # Killed due to abort
> sage -t --long src/sage/repl/ipython_extension.py  # Killed due to abort
> sage -t --long src/sage/repl/ipython_tests.py  # Killed due to abort
> sage -t --long src/sage/repl/rich_output/backend_ipython.py  # Killed due to abort
> sage -t --long src/sage/rings/asymptotic/asymptotic_expansion_generators.py  # 2 doctests failed
> sage -t --long src/sage/rings/complex_arb.pyx  # 6 doctests failed
> sage -t --long src/sage/rings/number_field/number_field.py  # 1 doctest failed
> sage -t --long src/sage/rings/power_series_poly.pyx  # 3 doctests failed
> sage -t --long src/sage/rings/power_series_ring.py  # 2 doctests failed
> sage -t --long src/sage/rings/real_arb.pyx  # 2 doctests failed
> sage -t --long src/sage/schemes/hyperelliptic_curves/monsky_washnitzer.py  # Killed due to abort
> sage -t --long src/sage/structure/sequence.py  # 2 doctests failed
> sage -t --long src/sage/symbolic/expression_conversions.py  # 1 doctest failed
> sage -t --long src/sage/structure/sage_object.pyx  # Killed due to abort
> sage -t --long src/sage/symbolic/expression.pyx  # 20 doctests failed
> sage -t --long src/sage/symbolic/relation.py  # 1 doctest failed
> sage -t --long src/sage/symbolic/series.pyx  # 30 doctests failed
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/combinat_doctest.py  # 5 doctests failed
> sage -t --long src/sage/tests/books/computational-mathematics-with-sagemath/calculus_doctest.py  # 3 doctests failed
> sage -t --long src/sage/tests/cmdline.py  # Timed out
> sage -t --long src/sage/tests/symbolic-series.py  # 53 doctests failed
> sage -t --long src/sage/typeset/ascii_art.py  # Killed due to abort
> ----------------------------------------------------------------------
> Total time for all tests: 7139.9 seconds
>     cpu time: 12224.1 seconds
>     cumulative wall time: 14076.1 seconds
> make[4]: Entering directory '/<<PKGBUILDDIR>>'
> Error: 555 tests failed, up to 200 failures are tolerated
> make[4]: *** [debian/rules:211: had-few-failures] Error 1

The full build log is available from:
   http://qa-logs.debian.net/2020/06/20/sagemath_9.0-4_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.



More information about the debian-science-maintainers mailing list