diff --git a/sage/.run.term-0.term b/sage/.run.term-0.term
index b46964a..2888d8e 100644
--- a/sage/.run.term-0.term
+++ b/sage/.run.term-0.term
@@ -54209,3 +54209,1214 @@ omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18
 [0m [3A[6C[?7h[0m[?12l[?25h[?25l[?7l[0mq[?7h[0m[?12l[?25h[?25l[?7l[0mu[?7h[0m[?12l[?25h[?25l[?7l[0mi[?7h[0m[?12l[?25h[?25l[?7l[0mt[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;16;48;5;152m()[?7h[0m[?12l[?25h[?25l[?7l[12D[0m[J[0;94msage: [0mquit()[12D[0m

 [J[?7h[0m[?12l[?25h[?2004l[23;0t]0;~/Research/2021 De Rham/DeRhamComputation/sage[01;34m~/Research/2021 De Rham/DeRhamComputation/sage[00m$ cd ..
 ]0;~/Research/2021 De Rham/DeRhamComputation[01;34m~/Research/2021 De Rham/DeRhamComputation[00m$ gi[K[Kgit add aux[K[K[Ksuperelliptic_arbitrary_field.ipynb [K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[K[Kage/superelliptic_drw/superelliptic_drw_auxilliaries.sage 
+]0;~/Research/2021 De Rham/DeRhamComputation[01;34m~/Research/2021 De Rham/DeRhamComputation[00m$ ai[K[Kgit add -u
+]0;~/Research/2021 De Rham/DeRhamComputation[01;34m~/Research/2021 De Rham/DeRhamComputation[00m$ git commit - m[1Pm[C "naprawiony problem z uniformizatorem w superelliptic; decomposition_omega8_hpdh dziala"
+[master 995d5f0] naprawiony problem z uniformizatorem w superelliptic; decomposition_omega8_hpdh dziala
+ 7 files changed, 3618 insertions(+), 35 deletions(-)
+ create mode 100644 sage/superelliptic_drw/superelliptic_drw_auxilliaries.sage
+]0;~/Research/2021 De Rham/DeRhamComputation[01;34m~/Research/2021 De Rham/DeRhamComputation[00m$ git push
+Username for 'https://git.wmi.amu.edu.pl': jgarnek
+Password for 'https://jgarnek@git.wmi.amu.edu.pl': 
+Enumerating objects: 22, done.
+Counting objects:   4% (1/22)
Counting objects:   9% (2/22)
Counting objects:  13% (3/22)
Counting objects:  18% (4/22)
Counting objects:  22% (5/22)
Counting objects:  27% (6/22)
Counting objects:  31% (7/22)
Counting objects:  36% (8/22)
Counting objects:  40% (9/22)
Counting objects:  45% (10/22)
Counting objects:  50% (11/22)
Counting objects:  54% (12/22)
Counting objects:  59% (13/22)
Counting objects:  63% (14/22)
Counting objects:  68% (15/22)
Counting objects:  72% (16/22)
Counting objects:  77% (17/22)
Counting objects:  81% (18/22)
Counting objects:  86% (19/22)
Counting objects:  90% (20/22)
Counting objects:  95% (21/22)
Counting objects: 100% (22/22)
Counting objects: 100% (22/22), done.
+Delta compression using up to 4 threads
+Compressing objects:   8% (1/12)
Compressing objects:  16% (2/12)
Compressing objects:  25% (3/12)
Compressing objects:  33% (4/12)
Compressing objects:  41% (5/12)
Compressing objects:  50% (6/12)
Compressing objects:  58% (7/12)
Compressing objects:  66% (8/12)
Compressing objects:  75% (9/12)
Compressing objects:  83% (10/12)
Compressing objects:  91% (11/12)
Compressing objects: 100% (12/12)
Compressing objects: 100% (12/12), done.
+Writing objects:   8% (1/12)
Writing objects:  16% (2/12)
Writing objects:  25% (3/12)
Writing objects:  33% (4/12)
Writing objects:  41% (5/12)
Writing objects:  50% (6/12)
Writing objects:  58% (7/12)
Writing objects:  66% (8/12)
Writing objects:  75% (9/12)
Writing objects:  83% (10/12)
Writing objects:  91% (11/12)
Writing objects: 100% (12/12)
Writing objects: 100% (12/12), 40.37 KiB | 359.00 KiB/s, done.
+Total 12 (delta 10), reused 0 (delta 0)
+remote: . Processing 1 references[K
+remote: Processed 1 references in total[K
+To https://git.wmi.amu.edu.pl/jgarnek/DeRhamComputation.git
+   42ccc4d..995d5f0  master -> master
+]0;~/Research/2021 De Rham/DeRhamComputation[01;34m~/Research/2021 De Rham/DeRhamComputation[00m$ ]0;~/Research/2021 De Rham/DeRhamComputation/sage[01;34m~/Research/2021 De Rham/DeRhamComputation/sage[00m$ 
[K]0;~/Research/2021 De Rham/DeRhamComputation/sage[01;34m~/Research/2021 De Rham/DeRhamComputation/sage[00m$ 
[K]0;~/Research/2021 De Rham/DeRhamComputation/sage[01;34m~/Research/2021 De Rham/DeRhamComputation/sage[00m$ sage
+┌────────────────────────────────────────────────────────────────────┐
+│ SageMath version 9.7, Release Date: 2022-09-19                     │
+│ Using Python 3.10.5. Type "help()" for help.                       │
+└────────────────────────────────────────────────────────────────────┘
+[22;0t]0;IPython: DeRhamComputation/sage[6n[?2004h[?1l[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0md[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l<string>:218: DeprecationWarning: invalid escape sequence '\s'
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l<string>:218: DeprecationWarning: invalid escape sequence '\s'
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0md[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ms[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ma[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ms[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mu[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mp[?7h[0m[?12l[?25h[?25l[?7l[15D[0;94msage: [0mload([0;38;5;160;48;5;231m'super[0m

+[5C[0;38;5;16;48;5;250m super                          superelliptic_cech             superelliptic_drw_form         superelliptic_regular_drw_form supersingular_D               [0m

+[5C[0;38;5;16;48;5;250m superelliptic                  superelliptic_drw/             superelliptic_form             superelliptic_regular_form     supersingular_j               [0m

+[5C[0;38;5;16;48;5;250m superelliptic/                 superelliptic_drw_cech         superelliptic_function         superelliptic_witt                                           [0m

+

+[0m [5A[17C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0m

+[5C[0;38;5;231;48;5;102m super                         [0m

+

+

+[5C[0;38;5;16;48;5;248m <unknown> [4A[C[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231melliptic[0m

+[5C[0;38;5;16;48;5;250m super                         [0m

+[5C[0;38;5;231;48;5;102m superelliptic                 [2A[11D[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m/[0m

+

+[5C[0;38;5;16;48;5;250m superelliptic                 [0m

+[5C[0;38;5;231;48;5;102m superelliptic/                [3A[10D[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mt[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[4A[26C[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231me[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231msts/[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231me[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mx[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mpansion_at_infty.sage[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[?7h[0m[?12l[?25h[?25l[?7l[46D[0;38;5;16;48;5;152m([45C)[?7h[0m[?12l[?25h[?25l[?7l[57D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'superelliptic/tests/expansion_at_infty.sage'[0m)[57D[0m

+[J[?7h[0m[?12l[?25h[?2004lTrue
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[6D[0;94msage: [0m

+

+

+[0m [3A[6C[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('superelliptic/tests/expansion_at_infty.sage')[50D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'superelliptic/tests/expansion_at_infty.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[57D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'superelliptic/tests/expansion_at_infty.sage'[0m)[57D[0m

+[J[?7h[0m[?12l[?25h[?2004lTrue
+True True
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC[0;38;5;241m = superelliptic((x^3 - x)^3 + x^3 - x, 2)[42D[?7h[0m[?12l[?25h[?25l[?7l[0m [?7h[0m[?12l[?25h[?25l[?7l[0m= superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mo[0;38;5;241mm8.is_regular_on_Uinfty()[25D[?7h[0m[?12l[?25h[?25l[?7l[0mm[?7h[0m[?12l[?25h[?25l[?7l[8D[0;94msage: [0mom [0;38;5;241m= ((C.x^28 - C.x^26 + C.x^25 - C.x^24 + C.x^23 - C.x^22 - C.x^21 + C.x^20 + C.x^19 + C.x^18 + C.x^17 + C.x^15 - C.x^14 + C.x^13 + C.x^12 + C.x^11 - C.x^1
[162C0[0m

+[0;94m....: [0;38;5;241m - C.x^8 - C.x^7 + C.x^6 - C.x^5 + C.x^4 + C.x^2 + C.x - C.one)/(C.x^16*C.y - C.x^15*C.y + C.x^14*C.y - C.x^13*C.y + C.x^12*C.y - C.x^11*C.y + C.x^10*C.y - 
[162CC[0m

+[0;94m....: [0;38;5;241m.x^9*C.y - C.x^8*C.y + C.x^7*C.y - C.x^6*C.y + C.x^5*C.y - C.x^4*C.y + C.x^3*C.y - C.x^2*C.y + C.x*C.y))*C.dx[115D[2A[9C[?7h[0m[?12l[?25h[?25l[?7l[0m=[?7h[0m[?12l[?25h[?25l[?7l[0m [?7h[0m[?12l[?25h[?25l[?7l[0m((C.x^[0;38;5;20;1m28[0m - C.x^[0;38;5;20;1m26[0m + C.x^[0;38;5;20;1m25[0m - C.x^[0;38;5;20;1m24[0m + C.x^[0;38;5;20;1m23[0m - C.x^[0;38;5;20;1m22[0m - C.x^[0;38;5;20;1m21[0m + C.x^[0;38;5;20;1m20[0m + C.x^[0;38;5;20;1m19[0m + C.x^[0;38;5;20;1m18[0m + C.x^[0;38;5;20;1m17[0m + C.x^[0;38;5;20;1m15[0m - C.x^[0;38;5;20;1m14[0m + C.x^[0;38;5;20;1m13[0m + C.x^[0;38;5;20;1m12[0m + C.x^[0;38;5;20;1m11[0m - C.x^[0;38;5;20;1m1
[162C0[0m

+[6C[0m - C.x^[0;38;5;20;1m8[0m - C.x^[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m6[0m - C.x^[0;38;5;20;1m5[0m + C.x^[0;38;5;20;1m4[0m + C.x^[0;38;5;20;1m2[0m + C.x - C.one)/(C.x^[0;38;5;20;1m16[0m*C.y - C.x^[0;38;5;20;1m15[0m*C.y + C.x^[0;38;5;20;1m14[0m*C.y - C.x^[0;38;5;20;1m13[0m*C.y + C.x^[0;38;5;20;1m12[0m*C.y - C.x^[0;38;5;20;1m11[0m*C.y + C.x^[0;38;5;20;1m10[0m*C.y - 
[162CC[0m

+[6C[0m.x^[0;38;5;20;1m9[0m*C.y - C.x^[0;38;5;20;1m8[0m*C.y + C.x^[0;38;5;20;1m7[0m*C.y - C.x^[0;38;5;20;1m6[0m*C.y + C.x^[0;38;5;20;1m5[0m*C.y - C.x^[0;38;5;20;1m4[0m*C.y + C.x^[0;38;5;20;1m3[0m*C.y - C.x^[0;38;5;20;1m2[0m*C.y + C.x*C.y))*C.dx[?7h[0m[?12l[?25h[?25l[?7l[2A[115D[0m[J[0;94msage: [0mom = ((C.x^[0;38;5;20;1m28[0m - C.x^[0;38;5;20;1m26[0m + C.x^[0;38;5;20;1m25[0m - C.x^[0;38;5;20;1m24[0m + C.x^[0;38;5;20;1m23[0m - C.x^[0;38;5;20;1m22[0m - C.x^[0;38;5;20;1m21[0m + C.x^[0;38;5;20;1m20[0m + C.x^[0;38;5;20;1m19[0m + C.x^[0;38;5;20;1m18[0m + C.x^[0;38;5;20;1m17[0m + C.x^[0;38;5;20;1m15[0m - C.x^[0;38;5;20;1m14[0m + C.x^[0;38;5;20;1m13[0m + C.x^[0;38;5;20;1m12[0m + C.x^[0;38;5;20;1m11[0m - C.x^[0;38;5;20;1m1
[162C0[0m

+[0;94m....: [0m - C.x^[0;38;5;20;1m8[0m - C.x^[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m6[0m - C.x^[0;38;5;20;1m5[0m + C.x^[0;38;5;20;1m4[0m + C.x^[0;38;5;20;1m2[0m + C.x - C.one)/(C.x^[0;38;5;20;1m16[0m*C.y - C.x^[0;38;5;20;1m15[0m*C.y + C.x^[0;38;5;20;1m14[0m*C.y - C.x^[0;38;5;20;1m13[0m*C.y + C.x^[0;38;5;20;1m12[0m*C.y - C.x^[0;38;5;20;1m11[0m*C.y + C.x^[0;38;5;20;1m10[0m*C.y - 
[162CC[0m

+[0;94m....: [0m.x^[0;38;5;20;1m9[0m*C.y - C.x^[0;38;5;20;1m8[0m*C.y + C.x^[0;38;5;20;1m7[0m*C.y - C.x^[0;38;5;20;1m6[0m*C.y + C.x^[0;38;5;20;1m5[0m*C.y - C.x^[0;38;5;20;1m4[0m*C.y + C.x^[0;38;5;20;1m3[0m*C.y - C.x^[0;38;5;20;1m2[0m*C.y + C.x*C.y))*C.dx[115D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0md[0;38;5;241mecomposition_omega8_hpdh(om)[28D[?7h[0m[?12l[?25h[?25l[?7l[0me[?7h[0m[?12l[?25h[?25l[?7l[0mcomposition_omega8_hpdh[0;38;5;16;48;5;152m([0mom[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[35D[0m[J[0;94msage: [0mdecomposition_omega8_hpdh(om)[35D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega_analytic (T^14 + 2*T^4 + T^2 + 1)/T^18
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+[0m[?7h[0;91m[0m[0m(((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx,
+ ((x^32 + 2*x^30 + 2*x^24 + 2*x^14 + 2*x^8 + 1)/(x^34 + x^26 + x^18))*y)
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('superelliptic/tests/expansion_at_infty.sage')[50D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0md[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ms[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mu[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mp[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231me[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mr[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ml[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ml[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mi[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mp[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mt[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mi[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mc[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m_[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231md[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mr[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[2D[0m[K[?7h[0m[?12l[?25h[?25l[?7l[3D[0m[K[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0m,[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('superelliptic/tests/expansion_at_infty.sage')[50D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0md[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ms[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mu[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mp[?7h[0m[?12l[?25h[?25l[?7l[15D[0;94msage: [0mload([0;38;5;160;48;5;231m'super[0;38;5;241melliptic/tests/expansion_at_infty.sage')[0m

+[5C[0;38;5;16;48;5;250m super                          superelliptic_cech             superelliptic_drw_form         superelliptic_regular_drw_form supersingular_D               [0m

+[5C[0;38;5;16;48;5;250m superelliptic                  superelliptic_drw/             superelliptic_form             superelliptic_regular_form     supersingular_j               [0m

+[5C[0;38;5;16;48;5;250m superelliptic/                 superelliptic_drw_cech         superelliptic_function         superelliptic_witt                                           [0m

+

+[0m [5A[17C[?7h[0m[?12l[?25h[?25l[?7l[0m

+[5C[0;38;5;231;48;5;102m super                         [0m

+

+

+[5C[0;38;5;16;48;5;248m <unknown> [4A[C[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231melliptic_cech[0m[K[0m

+[5C[0;38;5;16;48;5;250m super                         [0;38;5;231;48;5;102m superelliptic_cech            [A[37D[?7h[0m[?12l[?25h[?25l[?7l[4D[0;38;5;160;48;5;231mdrw/[0m

+[36C[0;38;5;16;48;5;250m superelliptic_cech            [0m

+[36C[0;38;5;231;48;5;102m superelliptic_drw/            [2A[37D[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mt[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[4A[30C[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mests/[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ma[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231muxilliary_decompositions_test.sage[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[?7h[0m[?12l[?25h[?25l[?7l[62D[0;38;5;16;48;5;152m([61C)[?7h[0m[?12l[?25h[?25l[?7l[73D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'superelliptic_drw/tests/auxilliary_decompositions_test.sage'[0m)[73D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega_analytic (T^14 + 2*T^4 + T^2 + 1)/T^18
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+True
+True True
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('superelliptic_drw/tests/auxilliary_decompositions_test.sage')[66D[?7h[0m[?12l[?25h[?25l[?7l[0moad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'superelliptic_drw/tests/auxilliary_decompositions_test.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[73D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'superelliptic_drw/tests/auxilliary_decompositions_test.sage'[0m)[73D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega_analytic (T^14 + 2*T^4 + T^2 + 1)/T^18
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+True
+True True
+True True
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h]0;~/Research/2021 De Rham/DeRhamComputation/sage[01;34m~/Research/2021 De Rham/DeRhamComputation/sage[00m$ 
[K]0;~/Research/2021 De Rham/DeRhamComputation/sage[01;34m~/Research/2021 De Rham/DeRhamComputation/sage[00m$ 
[K]0;~/Research/2021 De Rham/DeRhamComputation/sage[01;34m~/Research/2021 De Rham/DeRhamComputation/sage[00m$ sage
+┌────────────────────────────────────────────────────────────────────┐
+│ SageMath version 9.7, Release Date: 2022-09-19                     │
+│ Using Python 3.10.5. Type "help()" for help.                       │
+└────────────────────────────────────────────────────────────────────┘
+[22;0t]0;IPython: DeRhamComputation/sage[6n[?2004h[?1l[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('superelliptic_drw/tests/auxilliary_decompositions_test.sage')[66D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0md[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'superelliptic_drw/tests/auxilliary_decompositions_test.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[63D[0m([61C[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mi[0;38;5;241mnit.sage')[10D[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mn[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mi[?7h[0m[?12l[?25h[?25l[?7l[5D[0;38;5;16;48;5;152m([4C[0;38;5;160;48;5;231mt.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC[0;38;5;241m = superelliptic((x^3 - x)^3 + x^3 - x, 2)[42D[?7h[0m[?12l[?25h[?25l[?7l[0m [?7h[0m[?12l[?25h[?25l[?7l[0m=[?7h[0m[?12l[?25h[?25l[?7l[0m superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mB[0;38;5;241m = C.crystalline_cohomology_basis(prec = 100); autom(B[4]).coordinates(basis=B)[79D[?7h[0m[?12l[?25h[?25l[?7l[0m [?7h[0m[?12l[?25h[?25l[?7l[0m=[?7h[0m[?12l[?25h[?25l[?7l[0m [?7h[0m[?12l[?25h[?25l[?7l[0mC.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega0_lift, omega8_lift [(1/(x^9 + 2*x))*y] d[x] + V(((x^9 + x)/(x^8*y - y)) dx) + dV([(x^9/(x^8 + 2))*y]) [(1/(x^9 + 2*x))*y] d[x] + V(((x^8 + 1)/(x^15*y - x^7*y)) dx) + dV([(1/(x^23 + 2*x^15))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(1/(x^8 + 2))*y] d[x] + V(((-x^20 - x^12 + x^4)/(x^8*y - y)) dx) + dV([(x^12/(x^8 + 2))*y]) [(1/(x^8 + 2))*y] d[x] + V(((x^16 + 1)/(x^20*y - x^12*y)) dx) + dV([(1/(x^20 + 2*x^12))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x/(x^8 + 2))*y] d[x] + V(((x^23 + x^7)/(x^8*y - y)) dx) + dV([(x^15/(x^8 + 2))*y]) [(x/(x^8 + 2))*y] d[x] + V(((x^16 - x^8 - 1)/(x^17*y - x^9*y)) dx) + dV([(1/(x^17 + 2*x^9))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^2/(x^8 + 2))*y] d[x] + V(((x^18 + x^10)/(x^8*y - y)) dx) + dV([(x^18/(x^8 + 2))*y]) [(x^2/(x^8 + 2))*y] d[x] + V(((x^10 + x^2)/(x^8*y - y)) dx) + dV([(1/(x^14 + 2*x^6))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^6/(x^8 + 2))*y] d[x] + V(((-x^38 - x^30 + x^22)/(x^8*y - y)) dx) + dV([(x^30/(x^8 + 2))*y]) [(2/(x^10 + 2*x^2))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^26*y - x^18*y)) dx) + dV([(2/(x^26 + 2*x^18))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(2*x^5/(x^8 + 2))*y] d[x] + V(((-x^27 - x^19)/(x^8*y - y)) dx) + dV([(2*x^27/(x^8 + 2))*y]) 0
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift 0 [(1/(x^12 + 2*x^4))*y] d[x] + V(((x^8 + 1)/(x^24*y - x^16*y)) dx) + dV([(1/(x^32 + 2*x^24))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^3/(x^8 + 2))*y] d[x] + V(((-x^29 - x^21 + x^13)/(x^8*y - y)) dx) + dV([(x^21/(x^8 + 2))*y]) [(2/(x^13 + 2*x^5))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^35*y - x^27*y)) dx) + dV([(2/(x^35 + 2*x^27))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+(1, 1, 0, 2, 1, 2, 1, 2)
+omega_analytic (T^14 + 2*T^4 + T^2 + 1)/T^18
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mNameError[0m                                 Traceback (most recent call last)
+Input [0;32mIn [3][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m B [38;5;241m=[39m C[38;5;241m.[39mcrystalline_cohomology_basis(prec [38;5;241m=[39m Integer([38;5;241m100[39m)); [43mautom[49m[43m([49m[43mB[49m[43m[[49m[43mInteger[49m[43m([49m[38;5;241;43m4[39;49m[43m)[49m[43m][49m[43m)[49m[38;5;241;43m.[39;49m[43mcoordinates[49m[43m([49m[43mbasis[49m[38;5;241;43m=[39;49m[43mB[49m[43m)[49m
+
+File [0;32m<string>:103[0m, in [0;36mcoordinates[0;34m(self, basis)[0m
+
+File [0;32m<string>:85[0m, in [0;36mdiv_by_p[0;34m(self)[0m
+
+[0;31mNameError[0m: name 'decomposition_g8_p2th_power' is not defined
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[17D[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004l^Csage/rings/polynomial/polynomial_zmod_flint.pyx:7: DeprecationWarning: invalid escape sequence '\Z'
+  """
+sage/rings/polynomial/polynomial_zmod_flint.pyx:7: DeprecationWarning: invalid escape sequence '\Z'
+  """
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mKeyboardInterrupt[0m                         Traceback (most recent call last)
+File [0;32m<string>:59[0m, in [0;36m__mul__[0;34m(self, other)[0m
+
+File [0;32m<string>:235[0m, in [0;36mreduction[0;34m(C, g)[0m
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    896[0m if no_extra_args:
+[0;32m--> 897[0m     return mor._call_(x)
+[1;32m    898[0m else:
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:287[0m, in [0;36msage.structure.coerce_maps.NamedConvertMap._call_[0;34m()[0m
+[1;32m    286[0m cdef Map m
+[0;32m--> 287[0m cdef Element e = method(C)
+[1;32m    288[0m if e is None:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial.pyx:198[0m, in [0;36msage.rings.polynomial.multi_polynomial.MPolynomial._polynomial_[0;34m()[0m
+[1;32m    197[0m if var in self._parent.variable_names():
+[0;32m--> 198[0m     return R(self.polynomial(self._parent(var)))
+[1;32m    199[0m else:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial.pyx:419[0m, in [0;36msage.rings.polynomial.multi_polynomial.MPolynomial.polynomial[0;34m()[0m
+[1;32m    418[0m      for e, val in self.dict().iteritems() if not e[ind]}
+[0;32m--> 419[0m v = [B(w)]  # coefficients that don't involve var
+[1;32m    420[0m z = var
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    896[0m if no_extra_args:
+[0;32m--> 897[0m     return mor._call_(x)
+[1;32m    898[0m else:
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/polynomial_ring.py:469[0m, in [0;36mPolynomialRing_general._element_constructor_[0;34m(self, x, check, is_gen, construct, **kwds)[0m
+[1;32m    468[0m     x [38;5;241m=[39m x[38;5;241m.[39mtruncate()
+[0;32m--> 469[0m [38;5;28;01mreturn[39;00m [43mC[49m[43m([49m[38;5;28;43mself[39;49m[43m,[49m[43m [49m[43mx[49m[43m,[49m[43m [49m[43mcheck[49m[43m,[49m[43m [49m[43mis_gen[49m[43m,[49m[43m [49m[43mconstruct[49m[38;5;241;43m=[39;49m[43mconstruct[49m[43m,[49m[43m [49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mkwds[49m[43m)[49m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/polynomial_zmod_flint.pyx:129[0m, in [0;36msage.rings.polynomial.polynomial_zmod_flint.Polynomial_zmod_flint.__init__[0;34m()[0m
+[1;32m    128[0m         pass
+[0;32m--> 129[0m Polynomial_template.__init__(self, parent, x, check, is_gen, construct)
+[1;32m    130[0m 
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/polynomial_template.pxi:157[0m, in [0;36msage.rings.polynomial.polynomial_zmod_flint.Polynomial_template.__init__[0;34m()[0m
+[1;32m    156[0m for deg, coef in x.iteritems():
+[0;32m--> 157[0m     celement_pow(monomial, gen, deg, NULL, (<Polynomial_template>self)._cparent)
+[1;32m    158[0m     celement_mul(monomial, &(<Polynomial_template>self.__class__(parent, coef)).x, monomial, (<Polynomial_template>self)._cparent)
+
+File [0;32m/ext/sage/9.7/src/sage/libs/flint/nmod_poly_linkage.pxi:547[0m, in [0;36msage.rings.polynomial.polynomial_zmod_flint.celement_pow[0;34m()[0m
+[1;32m    546[0m else:
+[0;32m--> 547[0m     sig_on()
+[1;32m    548[0m     nmod_poly_pow(res, x, e)
+
+[0;31mKeyboardInterrupt[0m: 
+
+During handling of the above exception, another exception occurred:
+
+[0;31mAttributeError[0m                            Traceback (most recent call last)
+Input [0;32mIn [5][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m B [38;5;241m=[39m [43mC[49m[38;5;241;43m.[39;49m[43mcrystalline_cohomology_basis[49m[43m([49m[43mprec[49m[43m [49m[38;5;241;43m=[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m100[39;49m[43m)[49m[43m)[49m; autom(B[Integer([38;5;241m4[39m)])[38;5;241m.[39mcoordinates(basis[38;5;241m=[39mB)
+
+File [0;32m<string>:53[0m, in [0;36mcrystalline_cohomology_basis[0;34m(self, prec)[0m
+
+File [0;32m<string>:25[0m, in [0;36mde_rham_witt_lift[0;34m(cech_class, prec)[0m
+
+File [0;32m<string>:15[0m, in [0;36mde_rham_witt_lift_form8[0;34m(omega)[0m
+
+File [0;32m<string>:73[0m, in [0;36mdiffn[0;34m(self, dy_w)[0m
+
+File [0;32m<string>:177[0m, in [0;36mdy_w[0;34m(C)[0m
+
+File [0;32m<string>:149[0m, in [0;36mauxilliary_derivative[0;34m(P)[0m
+
+File [0;32m<string>:55[0m, in [0;36m__rmul__[0;34m(self, other)[0m
+
+File [0;32m<string>:84[0m, in [0;36m__add__[0;34m(self, other)[0m
+
+File [0;32m<string>:31[0m, in [0;36m__add__[0;34m(self, other)[0m
+
+File [0;32m<string>:63[0m, in [0;36m__mul__[0;34m(self, other)[0m
+
+[0;31mAttributeError[0m: 'superelliptic_function' object has no attribute 'form'
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[80D[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[17D[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[80D[0mC[3Csuperelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[43D[0mB[3CC.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004l^C[0;31m---------------------------------------------------------------------------[0m
+[0;31mKeyboardInterrupt[0m                         Traceback (most recent call last)
+Input [0;32mIn [7][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m B [38;5;241m=[39m [43mC[49m[38;5;241;43m.[39;49m[43mcrystalline_cohomology_basis[49m[43m([49m[43mprec[49m[43m [49m[38;5;241;43m=[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m100[39;49m[43m)[49m[43m)[49m; autom(B[Integer([38;5;241m4[39m)])[38;5;241m.[39mcoordinates(basis[38;5;241m=[39mB)
+
+File [0;32m<string>:52[0m, in [0;36mcrystalline_cohomology_basis[0;34m(self, prec)[0m
+
+File [0;32m<string>:98[0m, in [0;36mde_rham_basis[0;34m(self)[0m
+
+File [0;32m<string>:80[0m, in [0;36mbasis_de_rham_degrees[0;34m(self)[0m
+
+File [0;32m<string>:5[0m, in [0;36m__init__[0;34m(self, C, omega, fct)[0m
+
+File [0;32m<string>:95[0m, in [0;36mdiffn[0;34m(self)[0m
+
+File [0;32m<string>:7[0m, in [0;36m__init__[0;34m(self, C, g)[0m
+
+File [0;32m<string>:257[0m, in [0;36mreduction_form[0;34m(C, g)[0m
+
+File [0;32m<string>:236[0m, in [0;36mreduction[0;34m(C, g)[0m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/polynomial_element.pyx:2321[0m, in [0;36msage.rings.polynomial.polynomial_element.Polynomial.__truediv__[0;34m()[0m
+[1;32m   2319[0m # Same parents => bypass coercion
+[1;32m   2320[0m if have_same_parent(left, right):
+[0;32m-> 2321[0m     return (<Element>left)._div_(right)
+[1;32m   2322[0m 
+[1;32m   2323[0m # Try division of polynomial by a scalar
+
+File [0;32m/ext/sage/9.7/src/sage/structure/element.pyx:2739[0m, in [0;36msage.structure.element.RingElement._div_[0;34m()[0m
+[1;32m   2737[0m     except AttributeError:
+[1;32m   2738[0m         raise bin_op_exception('/', self, other)
+[0;32m-> 2739[0m     return frac(self, other)
+[1;32m   2740[0m 
+[1;32m   2741[0m def __divmod__(self, other):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:899[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[0;32m--> 899[0m         return mor._call_with_args(x, args, kwds)
+[1;32m    900[0m 
+[1;32m    901[0m raise TypeError(_LazyString("No conversion defined from %s to %s", (R, self), {}))
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:173[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_with_args[0;34m()[0m
+[1;32m    171[0m else:
+[1;32m    172[0m     if len(kwds) == 0:
+[0;32m--> 173[0m         return C._element_constructor(x, *args)
+[1;32m    174[0m     else:
+[1;32m    175[0m         return C._element_constructor(x, *args, **kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field.py:648[0m, in [0;36mFractionField_generic._element_constructor_[0;34m(self, x, y, coerce)[0m
+[1;32m    646[0m     x, y [38;5;241m=[39m x[38;5;241m.[39mnumerator() [38;5;241m*[39m y[38;5;241m.[39mdenominator(), y[38;5;241m.[39mnumerator() [38;5;241m*[39m x[38;5;241m.[39mdenominator()
+[1;32m    647[0m [38;5;28;01mtry[39;00m:
+[0;32m--> 648[0m     [38;5;28;01mreturn[39;00m [38;5;28;43mself[39;49m[38;5;241;43m.[39;49m[43m_element_class[49m[43m([49m[38;5;28;43mself[39;49m[43m,[49m[43m [49m[43mx[49m[43m,[49m[43m [49m[43my[49m[43m,[49m[43m [49m[43mcoerce[49m[38;5;241;43m=[39;49m[43mcoerce[49m[43m)[49m
+[1;32m    649[0m [38;5;28;01mexcept[39;00m ([38;5;167;01mTypeError[39;00m, [38;5;167;01mValueError[39;00m):
+[1;32m    650[0m     [38;5;28;01mpass[39;00m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:1167[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement_1poly_field.__init__[0;34m()[0m
+[1;32m   1165[0m     1/2/x
+[1;32m   1166[0m """
+[0;32m-> 1167[0m FractionFieldElement.__init__(self, parent, numerator, denominator,
+[1;32m   1168[0m         coerce, reduce)
+[1;32m   1169[0m if not reduce:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:121[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement.__init__[0;34m()[0m
+[1;32m    119[0m if reduce and parent.is_exact():
+[1;32m    120[0m     try:
+[0;32m--> 121[0m         self.reduce()
+[1;32m    122[0m     except ArithmeticError:
+[1;32m    123[0m         pass
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:1239[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement_1poly_field.reduce[0;34m()[0m
+[1;32m   1237[0m if self._is_reduced:
+[1;32m   1238[0m     return
+[0;32m-> 1239[0m super(self.__class__, self).reduce()
+[1;32m   1240[0m self.normalize_leading_coefficients()
+[1;32m   1241[0m 
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:164[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement.reduce[0;34m()[0m
+[1;32m    162[0m     return codomain.coerce(nnum/nden)
+[1;32m    163[0m 
+[0;32m--> 164[0m cpdef reduce(self):
+[1;32m    165[0m     """
+[1;32m    166[0m     Reduce this fraction.
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:198[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement.reduce[0;34m()[0m
+[1;32m    196[0m try:
+[1;32m    197[0m     g = self.__numerator.gcd(self.__denominator)
+[0;32m--> 198[0m     if not g.is_unit():
+[1;32m    199[0m         self.__numerator //= g
+[1;32m    200[0m         self.__denominator //= g
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/polynomial_element_generic.py:1021[0m, in [0;36mPolynomial_generic_domain.is_unit[0;34m(self)[0m
+[1;32m   1019[0m [38;5;28;01mif[39;00m [38;5;28mself[39m[38;5;241m.[39mdegree() [38;5;241m>[39m [38;5;241m0[39m:
+[1;32m   1020[0m     [38;5;28;01mreturn[39;00m [38;5;28;01mFalse[39;00m
+[0;32m-> 1021[0m [38;5;28;01mreturn[39;00m [38;5;28;43mself[39;49m[43m[[49m[38;5;241;43m0[39;49m[43m][49m[38;5;241;43m.[39;49m[43mis_unit[49m[43m([49m[43m)[49m
+
+File [0;32msrc/cysignals/signals.pyx:310[0m, in [0;36mcysignals.signals.python_check_interrupt[0;34m()[0m
+
+[0;31mKeyboardInterrupt[0m: 
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[80D[0mC[3Csuperelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[43D[0mB[3CC.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega0_lift, omega8_lift [(1/(x^9 + 2*x))*y] d[x] + V(((x^9 + x)/(x^8*y - y)) dx) + dV([(x^9/(x^8 + 2))*y]) [(1/(x^9 + 2*x))*y] d[x] + V(((x^8 + 1)/(x^15*y - x^7*y)) dx) + dV([(1/(x^23 + 2*x^15))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(1/(x^8 + 2))*y] d[x] + V(((-x^20 - x^12 + x^4)/(x^8*y - y)) dx) + dV([(x^12/(x^8 + 2))*y]) [(1/(x^8 + 2))*y] d[x] + V(((x^16 + 1)/(x^20*y - x^12*y)) dx) + dV([(1/(x^20 + 2*x^12))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x/(x^8 + 2))*y] d[x] + V(((x^23 + x^7)/(x^8*y - y)) dx) + dV([(x^15/(x^8 + 2))*y]) [(x/(x^8 + 2))*y] d[x] + V(((x^16 - x^8 - 1)/(x^17*y - x^9*y)) dx) + dV([(1/(x^17 + 2*x^9))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^2/(x^8 + 2))*y] d[x] + V(((x^18 + x^10)/(x^8*y - y)) dx) + dV([(x^18/(x^8 + 2))*y]) [(x^2/(x^8 + 2))*y] d[x] + V(((x^10 + x^2)/(x^8*y - y)) dx) + dV([(1/(x^14 + 2*x^6))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^6/(x^8 + 2))*y] d[x] + V(((-x^38 - x^30 + x^22)/(x^8*y - y)) dx) + dV([(x^30/(x^8 + 2))*y]) [(2/(x^10 + 2*x^2))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^26*y - x^18*y)) dx) + dV([(2/(x^26 + 2*x^18))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(2*x^5/(x^8 + 2))*y] d[x] + V(((-x^27 - x^19)/(x^8*y - y)) dx) + dV([(2*x^27/(x^8 + 2))*y]) 0
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift 0 [(1/(x^12 + 2*x^4))*y] d[x] + V(((x^8 + 1)/(x^24*y - x^16*y)) dx) + dV([(1/(x^32 + 2*x^24))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^3/(x^8 + 2))*y] d[x] + V(((-x^29 - x^21 + x^13)/(x^8*y - y)) dx) + dV([(x^21/(x^8 + 2))*y]) [(2/(x^13 + 2*x^5))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^35*y - x^27*y)) dx) + dV([(2/(x^35 + 2*x^27))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+(1, 1, 0, 2, 1, 2, 1, 2)
+omega_analytic (T^14 + 2*T^4 + T^2 + 1)/T^18
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mNameError[0m                                 Traceback (most recent call last)
+Input [0;32mIn [9][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m B [38;5;241m=[39m C[38;5;241m.[39mcrystalline_cohomology_basis(prec [38;5;241m=[39m Integer([38;5;241m100[39m)); [43mautom[49m[43m([49m[43mB[49m[43m[[49m[43mInteger[49m[43m([49m[38;5;241;43m4[39;49m[43m)[49m[43m][49m[43m)[49m[38;5;241;43m.[39;49m[43mcoordinates[49m[43m([49m[43mbasis[49m[38;5;241;43m=[39;49m[43mB[49m[43m)[49m
+
+File [0;32m<string>:103[0m, in [0;36mcoordinates[0;34m(self, basis)[0m
+
+File [0;32m<string>:85[0m, in [0;36mdiv_by_p[0;34m(self)[0m
+
+File [0;32m<string>:52[0m, in [0;36mdecomposition_g8_p2th_power[0;34m(fct)[0m
+
+[0;31mNameError[0m: name 'decomposition_g8_pth_power' is not defined
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[17D[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[80D[0mC[3Csuperelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[43D[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[17D[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega0_lift, omega8_lift [(1/(x^9 + 2*x))*y] d[x] + V(((x^9 + x)/(x^8*y - y)) dx) + dV([(x^9/(x^8 + 2))*y]) [(1/(x^9 + 2*x))*y] d[x] + V(((x^8 + 1)/(x^15*y - x^7*y)) dx) + dV([(1/(x^23 + 2*x^15))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(1/(x^8 + 2))*y] d[x] + V(((-x^20 - x^12 + x^4)/(x^8*y - y)) dx) + dV([(x^12/(x^8 + 2))*y]) [(1/(x^8 + 2))*y] d[x] + V(((x^16 + 1)/(x^20*y - x^12*y)) dx) + dV([(1/(x^20 + 2*x^12))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x/(x^8 + 2))*y] d[x] + V(((x^23 + x^7)/(x^8*y - y)) dx) + dV([(x^15/(x^8 + 2))*y]) [(x/(x^8 + 2))*y] d[x] + V(((x^16 - x^8 - 1)/(x^17*y - x^9*y)) dx) + dV([(1/(x^17 + 2*x^9))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^2/(x^8 + 2))*y] d[x] + V(((x^18 + x^10)/(x^8*y - y)) dx) + dV([(x^18/(x^8 + 2))*y]) [(x^2/(x^8 + 2))*y] d[x] + V(((x^10 + x^2)/(x^8*y - y)) dx) + dV([(1/(x^14 + 2*x^6))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^6/(x^8 + 2))*y] d[x] + V(((-x^38 - x^30 + x^22)/(x^8*y - y)) dx) + dV([(x^30/(x^8 + 2))*y]) [(2/(x^10 + 2*x^2))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^26*y - x^18*y)) dx) + dV([(2/(x^26 + 2*x^18))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(2*x^5/(x^8 + 2))*y] d[x] + V(((-x^27 - x^19)/(x^8*y - y)) dx) + dV([(2*x^27/(x^8 + 2))*y]) 0
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift 0 [(1/(x^12 + 2*x^4))*y] d[x] + V(((x^8 + 1)/(x^24*y - x^16*y)) dx) + dV([(1/(x^32 + 2*x^24))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^3/(x^8 + 2))*y] d[x] + V(((-x^29 - x^21 + x^13)/(x^8*y - y)) dx) + dV([(x^21/(x^8 + 2))*y]) [(2/(x^13 + 2*x^5))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^35*y - x^27*y)) dx) + dV([(2/(x^35 + 2*x^27))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+(1, 1, 0, 2, 1, 2, 1, 2)
+omega_analytic (T^14 + 2*T^4 + T^2 + 1)/T^18
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mArithmeticError[0m                           Traceback (most recent call last)
+Input [0;32mIn [12][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m B [38;5;241m=[39m C[38;5;241m.[39mcrystalline_cohomology_basis(prec [38;5;241m=[39m Integer([38;5;241m100[39m)); [43mautom[49m[43m([49m[43mB[49m[43m[[49m[43mInteger[49m[43m([49m[38;5;241;43m4[39;49m[43m)[49m[43m][49m[43m)[49m[38;5;241;43m.[39;49m[43mcoordinates[49m[43m([49m[43mbasis[49m[38;5;241;43m=[39;49m[43mB[49m[43m)[49m
+
+File [0;32m<string>:103[0m, in [0;36mcoordinates[0;34m(self, basis)[0m
+
+File [0;32m<string>:85[0m, in [0;36mdiv_by_p[0;34m(self)[0m
+
+File [0;32m<string>:67[0m, in [0;36mdecomposition_g8_p2th_power[0;34m(fct)[0m
+
+File [0;32m<string>:60[0m, in [0;36mdecomposition_g8_pth_power[0;34m(fct, prec)[0m
+
+File [0;32m<string>:14[0m, in [0;36m__init__[0;34m(self, C, g)[0m
+
+File [0;32m<string>:228[0m, in [0;36mreduction[0;34m(C, g)[0m
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field.py:638[0m, in [0;36mFractionField_generic._element_constructor_[0;34m(self, x, y, coerce)[0m
+[1;32m    636[0m ring_one [38;5;241m=[39m [38;5;28mself[39m[38;5;241m.[39mring()[38;5;241m.[39mone()
+[1;32m    637[0m [38;5;28;01mtry[39;00m:
+[0;32m--> 638[0m     [38;5;28;01mreturn[39;00m [38;5;28;43mself[39;49m[38;5;241;43m.[39;49m[43m_element_class[49m[43m([49m[38;5;28;43mself[39;49m[43m,[49m[43m [49m[43mx[49m[43m,[49m[43m [49m[43mring_one[49m[43m,[49m[43m [49m[43mcoerce[49m[38;5;241;43m=[39;49m[43mcoerce[49m[43m)[49m
+[1;32m    639[0m [38;5;28;01mexcept[39;00m ([38;5;167;01mTypeError[39;00m, [38;5;167;01mValueError[39;00m):
+[1;32m    640[0m     [38;5;28;01mpass[39;00m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:114[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement.__init__[0;34m()[0m
+[1;32m    112[0m FieldElement.__init__(self, parent)
+[1;32m    113[0m if coerce:
+[0;32m--> 114[0m     self.__numerator   = parent.ring()(numerator)
+[1;32m    115[0m     self.__denominator = parent.ring()(denominator)
+[1;32m    116[0m else:
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:1003[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m   1001[0m 
+[1;32m   1002[0m         try:
+[0;32m-> 1003[0m             return self(str(element))
+[1;32m   1004[0m         except TypeError:
+[1;32m   1005[0m             pass
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:988[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m    986[0m try:
+[1;32m    987[0m     if '/' in element:
+[0;32m--> 988[0m         element = sage_eval(element,d)
+[1;32m    989[0m     else:
+[1;32m    990[0m         element = element.replace("^","**")
+
+File [0;32m/ext/sage/9.7/src/sage/misc/sage_eval.py:198[0m, in [0;36msage_eval[0;34m(source, locals, cmds, preparse)[0m
+[1;32m    196[0m     [38;5;28;01mreturn[39;00m [38;5;28mlocals[39m[[38;5;124m'[39m[38;5;124m_sage_eval_returnval_[39m[38;5;124m'[39m]
+[1;32m    197[0m [38;5;28;01melse[39;00m:
+[0;32m--> 198[0m     [38;5;28;01mreturn[39;00m [38;5;28;43meval[39;49m[43m([49m[43msource[49m[43m,[49m[43m [49m[43msage[49m[38;5;241;43m.[39;49m[43mall[49m[38;5;241;43m.[39;49m[38;5;18;43m__dict__[39;49m[43m,[49m[43m [49m[38;5;28;43mlocals[39;49m[43m)[49m
+
+File [0;32m<string>:1[0m, in [0;36m<module>[0;34m[0m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/big_oh.py:166[0m, in [0;36mO[0;34m(*x, **kwds)[0m
+[1;32m    164[0m [38;5;28;01melif[39;00m [38;5;28mhasattr[39m(x, [38;5;124m'[39m[38;5;124mO[39m[38;5;124m'[39m):
+[1;32m    165[0m     [38;5;28;01mreturn[39;00m x[38;5;241m.[39mO([38;5;241m*[39m[38;5;241m*[39mkwds)
+[0;32m--> 166[0m [38;5;28;01mraise[39;00m [38;5;167;01mArithmeticError[39;00m([38;5;124m"[39m[38;5;124mO([39m[38;5;132;01m%s[39;00m[38;5;124m) not defined[39m[38;5;124m"[39m [38;5;241m%[39m (x,))
+
+[0;31mArithmeticError[0m: O(y^53) not defined
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[17D[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[80D[0mC[3Csuperelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[43D[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[17D[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega0_lift, omega8_lift [(1/(x^9 + 2*x))*y] d[x] + V(((x^9 + x)/(x^8*y - y)) dx) + dV([(x^9/(x^8 + 2))*y]) [(1/(x^9 + 2*x))*y] d[x] + V(((x^8 + 1)/(x^15*y - x^7*y)) dx) + dV([(1/(x^23 + 2*x^15))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(1/(x^8 + 2))*y] d[x] + V(((-x^20 - x^12 + x^4)/(x^8*y - y)) dx) + dV([(x^12/(x^8 + 2))*y]) [(1/(x^8 + 2))*y] d[x] + V(((x^16 + 1)/(x^20*y - x^12*y)) dx) + dV([(1/(x^20 + 2*x^12))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x/(x^8 + 2))*y] d[x] + V(((x^23 + x^7)/(x^8*y - y)) dx) + dV([(x^15/(x^8 + 2))*y]) [(x/(x^8 + 2))*y] d[x] + V(((x^16 - x^8 - 1)/(x^17*y - x^9*y)) dx) + dV([(1/(x^17 + 2*x^9))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^2/(x^8 + 2))*y] d[x] + V(((x^18 + x^10)/(x^8*y - y)) dx) + dV([(x^18/(x^8 + 2))*y]) [(x^2/(x^8 + 2))*y] d[x] + V(((x^10 + x^2)/(x^8*y - y)) dx) + dV([(1/(x^14 + 2*x^6))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^6/(x^8 + 2))*y] d[x] + V(((-x^38 - x^30 + x^22)/(x^8*y - y)) dx) + dV([(x^30/(x^8 + 2))*y]) [(2/(x^10 + 2*x^2))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^26*y - x^18*y)) dx) + dV([(2/(x^26 + 2*x^18))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(2*x^5/(x^8 + 2))*y] d[x] + V(((-x^27 - x^19)/(x^8*y - y)) dx) + dV([(2*x^27/(x^8 + 2))*y]) 0
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift 0 [(1/(x^12 + 2*x^4))*y] d[x] + V(((x^8 + 1)/(x^24*y - x^16*y)) dx) + dV([(1/(x^32 + 2*x^24))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^3/(x^8 + 2))*y] d[x] + V(((-x^29 - x^21 + x^13)/(x^8*y - y)) dx) + dV([(x^21/(x^8 + 2))*y]) [(2/(x^13 + 2*x^5))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^35*y - x^27*y)) dx) + dV([(2/(x^35 + 2*x^27))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+(1, 1, 0, 2, 1, 2, 1, 2)
+decomposition_omega8_hpdh ((x^28 - x^26 + x^25 - x^24 + x^23 - x^22 - x^21 + x^20 + x^19 + x^18 + x^17 + x^15 - x^14 + x^13 + x^12 + x^11 - x^10 - x^8 - x^7 + x^6 - x^5 + x^4 + x^2 + x - 1)/(x^16*y - x^15*y + x^14*y - x^13*y + x^12*y - x^11*y + x^10*y - x^9*y - x^8*y + x^7*y - x^6*y + x^5*y - x^4*y + x^3*y - x^2*y + x*y)) dx
+omega_analytic (T^14 + 2*T^4 + T^2 + 1)/T^18
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+decomposition_g8_p2th_power ((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y
+decomposition_g8_pth_power ((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mArithmeticError[0m                           Traceback (most recent call last)
+Input [0;32mIn [15][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m B [38;5;241m=[39m C[38;5;241m.[39mcrystalline_cohomology_basis(prec [38;5;241m=[39m Integer([38;5;241m100[39m)); [43mautom[49m[43m([49m[43mB[49m[43m[[49m[43mInteger[49m[43m([49m[38;5;241;43m4[39;49m[43m)[49m[43m][49m[43m)[49m[38;5;241;43m.[39;49m[43mcoordinates[49m[43m([49m[43mbasis[49m[38;5;241;43m=[39;49m[43mB[49m[43m)[49m
+
+File [0;32m<string>:103[0m, in [0;36mcoordinates[0;34m(self, basis)[0m
+
+File [0;32m<string>:85[0m, in [0;36mdiv_by_p[0;34m(self)[0m
+
+File [0;32m<string>:70[0m, in [0;36mdecomposition_g8_p2th_power[0;34m(fct)[0m
+
+File [0;32m<string>:62[0m, in [0;36mdecomposition_g8_pth_power[0;34m(fct, prec)[0m
+
+File [0;32m<string>:14[0m, in [0;36m__init__[0;34m(self, C, g)[0m
+
+File [0;32m<string>:228[0m, in [0;36mreduction[0;34m(C, g)[0m
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field.py:638[0m, in [0;36mFractionField_generic._element_constructor_[0;34m(self, x, y, coerce)[0m
+[1;32m    636[0m ring_one [38;5;241m=[39m [38;5;28mself[39m[38;5;241m.[39mring()[38;5;241m.[39mone()
+[1;32m    637[0m [38;5;28;01mtry[39;00m:
+[0;32m--> 638[0m     [38;5;28;01mreturn[39;00m [38;5;28;43mself[39;49m[38;5;241;43m.[39;49m[43m_element_class[49m[43m([49m[38;5;28;43mself[39;49m[43m,[49m[43m [49m[43mx[49m[43m,[49m[43m [49m[43mring_one[49m[43m,[49m[43m [49m[43mcoerce[49m[38;5;241;43m=[39;49m[43mcoerce[49m[43m)[49m
+[1;32m    639[0m [38;5;28;01mexcept[39;00m ([38;5;167;01mTypeError[39;00m, [38;5;167;01mValueError[39;00m):
+[1;32m    640[0m     [38;5;28;01mpass[39;00m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:114[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement.__init__[0;34m()[0m
+[1;32m    112[0m FieldElement.__init__(self, parent)
+[1;32m    113[0m if coerce:
+[0;32m--> 114[0m     self.__numerator   = parent.ring()(numerator)
+[1;32m    115[0m     self.__denominator = parent.ring()(denominator)
+[1;32m    116[0m else:
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:1003[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m   1001[0m 
+[1;32m   1002[0m         try:
+[0;32m-> 1003[0m             return self(str(element))
+[1;32m   1004[0m         except TypeError:
+[1;32m   1005[0m             pass
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:988[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m    986[0m try:
+[1;32m    987[0m     if '/' in element:
+[0;32m--> 988[0m         element = sage_eval(element,d)
+[1;32m    989[0m     else:
+[1;32m    990[0m         element = element.replace("^","**")
+
+File [0;32m/ext/sage/9.7/src/sage/misc/sage_eval.py:198[0m, in [0;36msage_eval[0;34m(source, locals, cmds, preparse)[0m
+[1;32m    196[0m     [38;5;28;01mreturn[39;00m [38;5;28mlocals[39m[[38;5;124m'[39m[38;5;124m_sage_eval_returnval_[39m[38;5;124m'[39m]
+[1;32m    197[0m [38;5;28;01melse[39;00m:
+[0;32m--> 198[0m     [38;5;28;01mreturn[39;00m [38;5;28;43meval[39;49m[43m([49m[43msource[49m[43m,[49m[43m [49m[43msage[49m[38;5;241;43m.[39;49m[43mall[49m[38;5;241;43m.[39;49m[38;5;18;43m__dict__[39;49m[43m,[49m[43m [49m[38;5;28;43mlocals[39;49m[43m)[49m
+
+File [0;32m<string>:1[0m, in [0;36m<module>[0;34m[0m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/big_oh.py:166[0m, in [0;36mO[0;34m(*x, **kwds)[0m
+[1;32m    164[0m [38;5;28;01melif[39;00m [38;5;28mhasattr[39m(x, [38;5;124m'[39m[38;5;124mO[39m[38;5;124m'[39m):
+[1;32m    165[0m     [38;5;28;01mreturn[39;00m x[38;5;241m.[39mO([38;5;241m*[39m[38;5;241m*[39mkwds)
+[0;32m--> 166[0m [38;5;28;01mraise[39;00m [38;5;167;01mArithmeticError[39;00m([38;5;124m"[39m[38;5;124mO([39m[38;5;132;01m%s[39;00m[38;5;124m) not defined[39m[38;5;124m"[39m [38;5;241m%[39m (x,))
+
+[0;31mArithmeticError[0m: O(y^53) not defined
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('init.sage')[16D[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mf[0;38;5;241mor i in lau.exponents():[24D[?7h[0m[?12l[?25h[?25l[?7l[0mf[0;38;5;241m.pth_root()[0m[K[11D[?7h[0m[?12l[?25h[?25l[?7l[8D[0;94msage: [0mff [0;38;5;241m= ((2*C.x^74 + C.x^73 + C.x^71 + 2*C.x^70 + 2*C.x^65 + C.x^64 + C.x^62 + 2*C.x^61 + 2*C.x^56 + C.x^55 + C.x^53 + 2*C.x^52 + C.x^50 + 2*C.x^49 + 2*C.x^47 
[162C+[0m

+[0;94m....: [0;38;5;241m C.x^46 + C.x^44 + 2*C.x^43 + 2*C.x^38 + C.x^37 + C.x^32 + 2*C.x^31 + 2*C.x^29 + C.x^28 + C.x^26 + 2*C.x^25 + C.x^23 + 2*C.x^22 + 2*C.x^17 + C.x^16 + C.x^14
[162C [0m

+[0;94m....: [0;38;5;241m+ 2*C.x^13 + 2*C.x^8 + C.x^7 + C.x^5 + 2*C.x^4 + 2*C.x^2 + C.x)/(C.x^35 + 2*C.x^34 + 2*C.x^32 + C.x^31 + C.x^27 + 2*C.x^25 + 2*C.x^24 + C.x^22 + C.x^19 + C.
[162Cx[0m

+[0;94m....: [0;38;5;241m^16 + C.x^13 + 2*C.x^11 + 2*C.x^10 + C.x^8 + C.x^4 + 2*C.x^3 + 2*C.x + C.one))*C.y[88D[3A[9C[?7h[0m[?12l[?25h[?25l[?7l[0m= [?7h[0m[?12l[?25h[?25l[?7l[0m(([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m77[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m 
[162C+[0m

+[6C[0m [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.
[162Cx[0m

+[6C[0m^[0;38;5;20;1m47[0m + C.x^[0;38;5;20;1m46[0m + C.x^[0;38;5;20;1m44[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + [0;38;5;20;1m1[0m)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[0;38;5;20;1m77[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m))*C.y[0m[K[0m

+[0m [0m[K[A[125C[?7h[0m[?12l[?25h[?25l[?7l[2A[126D[0m[J[0;94msage: [0mff = (([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m77[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m 
[162C+[0m

+[0;94m....: [0m [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.
[162Cx[0m

+[0;94m....: [0m^[0;38;5;20;1m47[0m + C.x^[0;38;5;20;1m46[0m + C.x^[0;38;5;20;1m44[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + [0;38;5;20;1m1[0m)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[0;38;5;20;1m77[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m))*C.y[126D[0m

+[J[?7h[0m[?12l[?25h[?2004l[0;31m---------------------------------------------------------------------------[0m
+[0;31mAttributeError[0m                            Traceback (most recent call last)
+Input [0;32mIn [16][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m ff [38;5;241m=[39m (([43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m87[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m84[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m83[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m82[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m81[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m80[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m78[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m77[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m76[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m75[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m74[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m73[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m72[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m71[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m70[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m68[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m67[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m63[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m60[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m59[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m58[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m57[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m56[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m54[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m53[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m52[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m51[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m50[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m49[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m48[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m47[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m46[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m44[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m43[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m42[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m2[39;49m[43m)[49m[38;5;241;43m*[39;49m[43mC[49m[38;5;241;43m.[39;49m[43mx[49m[38;5;241;43m*[39;49m[38;5;241;43m*[39;49m[43mInteger[49m[43m([49m[38;5;241;43m24[39;49m[43m)[49m[43m [49m[38;5;241;43m+[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m1[39;49m[43m)[49m)[38;5;241m/[39m(C[38;5;241m.[39mx[38;5;241m*[39m[38;5;241m*[39mInteger([38;5;241m93[39m) [38;5;241m+[39m C[38;5;241m.[39mx[38;5;241m*[39m[38;5;241m*[39mInteger([38;5;241m85[39m) [38;5;241m+[39m C[38;5;241m.[39mx[38;5;241m*[39m[38;5;241m*[39mInteger([38;5;241m77[39m) [38;5;241m+[39m Integer([38;5;241m2[39m)[38;5;241m*[39mC[38;5;241m.[39mx[38;5;241m*[39m[38;5;241m*[39mInteger([38;5;241m69[39m) [38;5;241m+[39m Integer([38;5;241m2[39m)[38;5;241m*[39mC[38;5;241m.[39mx[38;5;241m*[39m[38;5;241m*[39mInteger([38;5;241m61[39m) [38;5;241m+[39m Integer([38;5;241m2[39m)[38;5;241m*[39mC[38;5;241m.[39mx[38;5;241m*[39m[38;5;241m*[39mInteger([38;5;241m53[39m)))[38;5;241m*[39mC[38;5;241m.[39my
+
+File [0;32m<string>:38[0m, in [0;36m__add__[0;34m(self, other)[0m
+
+File [0;32m/ext/sage/9.7/src/sage/structure/element.pyx:494[0m, in [0;36msage.structure.element.Element.__getattr__[0;34m()[0m
+[1;32m    492[0m         AttributeError: 'LeftZeroSemigroup_with_category.element_class' object has no attribute 'blah_blah'
+[1;32m    493[0m     """
+[0;32m--> 494[0m     return self.getattr_from_category(name)
+[1;32m    495[0m 
+[1;32m    496[0m cdef getattr_from_category(self, name):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/element.pyx:507[0m, in [0;36msage.structure.element.Element.getattr_from_category[0;34m()[0m
+[1;32m    505[0m     else:
+[1;32m    506[0m         cls = P._abstract_element_class
+[0;32m--> 507[0m     return getattr_from_other_class(self, cls, name)
+[1;32m    508[0m 
+[1;32m    509[0m def __dir__(self):
+
+File [0;32m/ext/sage/9.7/src/sage/cpython/getattr.pyx:361[0m, in [0;36msage.cpython.getattr.getattr_from_other_class[0;34m()[0m
+[1;32m    359[0m     dummy_error_message.cls = type(self)
+[1;32m    360[0m     dummy_error_message.name = name
+[0;32m--> 361[0m     raise AttributeError(dummy_error_message)
+[1;32m    362[0m attribute = <object>attr
+[1;32m    363[0m # Check for a descriptor (__get__ in Python)
+
+[0;31mAttributeError[0m: 'sage.rings.integer.Integer' object has no attribute 'function'
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[6D[0;94msage: [0m(([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m77[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m + [0;38;5;20;1m2[0m*C
[162C.[0m

+[0;94m....: [0mx^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.x^[0;38;5;20;1m47[0m 
[162C+[0m

+[0;94m....: [0m C.x^[0;38;5;20;1m46[0m + C.x^[0;38;5;20;1m44[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[0;38;5;20;1m77[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m))*C.y[125D[125C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[61D[0;38;5;16;48;5;152m([57C[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[58D[0m([57C)[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2A[55D[0;38;5;16;48;5;152m([0m

+

+[59C[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[2A[52D[0m([0m

+

+[59C[0m)[4D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[A[156C[?7h[0m[?12l[?25h[?25l[?7l
[161C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[5D[?7h[0m[?12l[?25h[?25l[?7l[4D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[A[156C[?7h[0m[?12l[?25h[?25l[?7l
[161C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[3D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[0;38;5;210;48;5;88m([0m

+

+[120C[0;38;5;16;48;5;152m)[2A[115D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mf[0;38;5;210;48;5;88m([0m([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[C[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m + [0;38;5;20;1m2[0m*
[162CC[0m

+[6C[0m.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.x^[0;38;5;20;1m47
[162C[0m[K[0m

+[6C[0m+ C.x^[0;38;5;20;1m46[0m + C.x^[C[0;38;5;20;1m4[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[C[0;38;5;20;1m7[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m)[0;38;5;16;48;5;152m)[0m*C.y[2A[119D[?7h[0m[?12l[?25h[?25l[?7l[0mf[0;38;5;210;48;5;88m([0m([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[C[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m + [0;38;5;20;1m2
[162C[0m*[0m

+[6C[0mC.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.x^[0;38;5;20;1m4
[162C7[0m

+[6C[0m + C.x^[0;38;5;20;1m46[0m + C.x^[C[0;38;5;20;1m4[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[C[0;38;5;20;1m7[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m)[0;38;5;16;48;5;152m)[0m*C.y[2A[119D[?7h[0m[?12l[?25h[?25l[?7l[0m [0;38;5;210;48;5;88m([0m([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[C[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m + 
[162C[0;38;5;20;1m2[0m

+[6C[0m*C.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.x^
[162C[0;38;5;20;1m4[0m

+[6C[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m46[0m + C.x^[C[0;38;5;20;1m4[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[C[0;38;5;20;1m7[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m)[0;38;5;16;48;5;152m)[0m*C.y[2A[119D[?7h[0m[?12l[?25h[?25l[?7l[0m=[0;38;5;210;48;5;88m([0m([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[C[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m +
[162C[0m[K[0m

+[6C[0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.x
[162C^[0m

+[6C[0;38;5;20;1m47[0m + C.x^[0;38;5;20;1m46[0m + C.x^[C[0;38;5;20;1m4[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[C[0;38;5;20;1m7[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m)[0;38;5;16;48;5;152m)[0m*C.y[2A[119D[?7h[0m[?12l[?25h[?25l[?7l[0m [0;38;5;210;48;5;88m([0m([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[C[0;38;5;20;1m7[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m 
[162C+[0m

+[6C[0m [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.
[162Cx[0m

+[6C[0m^[0;38;5;20;1m47[0m + C.x^[0;38;5;20;1m46[0m + C.x^[C[0;38;5;20;1m4[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[C[0;38;5;20;1m7[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m)[0;38;5;16;48;5;152m)[0m*C.y[2A[119D[?7h[0m[?12l[?25h[?25l[?7l[11D[0m[J[0;94msage: [0mff = (([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m77[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m 
[162C+[0m

+[0;94m....: [0m [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.
[162Cx[0m

+[0;94m....: [0m^[0;38;5;20;1m47[0m + C.x^[0;38;5;20;1m46[0m + C.x^[0;38;5;20;1m44[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[0;38;5;20;1m77[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m))*C.y[130D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0md[0;38;5;241mecomposition_omega8_hpdh(om)[28D[?7h[0m[?12l[?25h[?25l[?7l[0me[?7h[0m[?12l[?25h[?25l[?7l[0mc[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mmposition_omega8_hpdh[0;38;5;16;48;5;152m([0mom[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[4D[0m([2C[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[20D[0;94msage: [0mdecomposition_[0m

+[20C[0;38;5;16;48;5;250m decomposition_g0_g8         decomposition_g8_p2th_power decomposition_omega0_omega8[0m

+[20C[0;38;5;16;48;5;250m decomposition_g0_p2th_power decomposition_g8_pth_power  decomposition_omega8_hpdh  [0m

+[20C[0;38;5;16;48;5;250m decomposition_g0_pth_power  decomposition_omega0_hpdh                              [0m

+

+[0m [5A[20C[?7h[0m[?12l[?25h[?25l[?7l[0mg0_g8[0m

+[20C[0;38;5;231;48;5;102m decomposition_g0_g8        [0m

+

+

+[20C[0;38;5;16;48;5;248m <unknown> [4A[6D[?7h[0m[?12l[?25h[?25l[?7l[4D[0m8[Cp2th_power[0m

+[20C[0;38;5;16;48;5;250m decomposition_g0_g8        [0;38;5;231;48;5;102m decomposition_g8_p2th_power[A[43D[?7h[0m[?12l[?25h[?25l[?7l[9D[0mth_power[0m[K[0m

+[48C[0;38;5;16;48;5;250m decomposition_g8_p2th_power[0m

+[48C[0;38;5;231;48;5;102m decomposition_g8_pth_power [2A[44D[?7h[0m[?12l[?25h[?25l[?7l[0m([0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[4A[32C[?7h[0m[?12l[?25h[?25l[?7l[0mf[?7h[0m[?12l[?25h[?25l[?7l[0mf[?7h[0m[?12l[?25h[?25l[?7l[3D[0;38;5;16;48;5;152m([2C)[?7h[0m[?12l[?25h[?25l[?7l[36D[0m[J[0;94msage: [0mdecomposition_g8_pth_power(ff)[36D[0m

+[J[?7h[0m[?12l[?25h[?2004ldecomposition_g8_pth_power ((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mArithmeticError[0m                           Traceback (most recent call last)
+Input [0;32mIn [18][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m [43mdecomposition_g8_pth_power[49m[43m([49m[43mff[49m[43m)[49m
+
+File [0;32m<string>:62[0m, in [0;36mdecomposition_g8_pth_power[0;34m(fct, prec)[0m
+
+File [0;32m<string>:14[0m, in [0;36m__init__[0;34m(self, C, g)[0m
+
+File [0;32m<string>:228[0m, in [0;36mreduction[0;34m(C, g)[0m
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field.py:638[0m, in [0;36mFractionField_generic._element_constructor_[0;34m(self, x, y, coerce)[0m
+[1;32m    636[0m ring_one [38;5;241m=[39m [38;5;28mself[39m[38;5;241m.[39mring()[38;5;241m.[39mone()
+[1;32m    637[0m [38;5;28;01mtry[39;00m:
+[0;32m--> 638[0m     [38;5;28;01mreturn[39;00m [38;5;28;43mself[39;49m[38;5;241;43m.[39;49m[43m_element_class[49m[43m([49m[38;5;28;43mself[39;49m[43m,[49m[43m [49m[43mx[49m[43m,[49m[43m [49m[43mring_one[49m[43m,[49m[43m [49m[43mcoerce[49m[38;5;241;43m=[39;49m[43mcoerce[49m[43m)[49m
+[1;32m    639[0m [38;5;28;01mexcept[39;00m ([38;5;167;01mTypeError[39;00m, [38;5;167;01mValueError[39;00m):
+[1;32m    640[0m     [38;5;28;01mpass[39;00m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:114[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement.__init__[0;34m()[0m
+[1;32m    112[0m FieldElement.__init__(self, parent)
+[1;32m    113[0m if coerce:
+[0;32m--> 114[0m     self.__numerator   = parent.ring()(numerator)
+[1;32m    115[0m     self.__denominator = parent.ring()(denominator)
+[1;32m    116[0m else:
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:1003[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m   1001[0m 
+[1;32m   1002[0m         try:
+[0;32m-> 1003[0m             return self(str(element))
+[1;32m   1004[0m         except TypeError:
+[1;32m   1005[0m             pass
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:988[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m    986[0m try:
+[1;32m    987[0m     if '/' in element:
+[0;32m--> 988[0m         element = sage_eval(element,d)
+[1;32m    989[0m     else:
+[1;32m    990[0m         element = element.replace("^","**")
+
+File [0;32m/ext/sage/9.7/src/sage/misc/sage_eval.py:198[0m, in [0;36msage_eval[0;34m(source, locals, cmds, preparse)[0m
+[1;32m    196[0m     [38;5;28;01mreturn[39;00m [38;5;28mlocals[39m[[38;5;124m'[39m[38;5;124m_sage_eval_returnval_[39m[38;5;124m'[39m]
+[1;32m    197[0m [38;5;28;01melse[39;00m:
+[0;32m--> 198[0m     [38;5;28;01mreturn[39;00m [38;5;28;43meval[39;49m[43m([49m[43msource[49m[43m,[49m[43m [49m[43msage[49m[38;5;241;43m.[39;49m[43mall[49m[38;5;241;43m.[39;49m[38;5;18;43m__dict__[39;49m[43m,[49m[43m [49m[38;5;28;43mlocals[39;49m[43m)[49m
+
+File [0;32m<string>:1[0m, in [0;36m<module>[0;34m[0m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/big_oh.py:166[0m, in [0;36mO[0;34m(*x, **kwds)[0m
+[1;32m    164[0m [38;5;28;01melif[39;00m [38;5;28mhasattr[39m(x, [38;5;124m'[39m[38;5;124mO[39m[38;5;124m'[39m):
+[1;32m    165[0m     [38;5;28;01mreturn[39;00m x[38;5;241m.[39mO([38;5;241m*[39m[38;5;241m*[39mkwds)
+[0;32m--> 166[0m [38;5;28;01mraise[39;00m [38;5;167;01mArithmeticError[39;00m([38;5;124m"[39m[38;5;124mO([39m[38;5;132;01m%s[39;00m[38;5;124m) not defined[39m[38;5;124m"[39m [38;5;241m%[39m (x,))
+
+[0;31mArithmeticError[0m: O(y^53) not defined
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mdecomposition_g8_pth_power[0;38;5;16;48;5;152m([0mff[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0m,[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0m [0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0mp[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0mr[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0me[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0mc[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0m [0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0m=[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0m [0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;20;1m2[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;20;1m0[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;20;1m0[0;38;5;210;48;5;88m)[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[48D[0m[J[0;94msage: [0mdecomposition_g8_pth_power(ff, prec = [0;38;5;20;1m200[0m)[48D[0m

+[J[?7h[0m[?12l[?25h[?2004ldecomposition_g8_pth_power ((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mArithmeticError[0m                           Traceback (most recent call last)
+Input [0;32mIn [19][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m [43mdecomposition_g8_pth_power[49m[43m([49m[43mff[49m[43m,[49m[43m [49m[43mprec[49m[43m [49m[38;5;241;43m=[39;49m[43m [49m[43mInteger[49m[43m([49m[38;5;241;43m200[39;49m[43m)[49m[43m)[49m
+
+File [0;32m<string>:62[0m, in [0;36mdecomposition_g8_pth_power[0;34m(fct, prec)[0m
+
+File [0;32m<string>:14[0m, in [0;36m__init__[0;34m(self, C, g)[0m
+
+File [0;32m<string>:228[0m, in [0;36mreduction[0;34m(C, g)[0m
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field.py:638[0m, in [0;36mFractionField_generic._element_constructor_[0;34m(self, x, y, coerce)[0m
+[1;32m    636[0m ring_one [38;5;241m=[39m [38;5;28mself[39m[38;5;241m.[39mring()[38;5;241m.[39mone()
+[1;32m    637[0m [38;5;28;01mtry[39;00m:
+[0;32m--> 638[0m     [38;5;28;01mreturn[39;00m [38;5;28;43mself[39;49m[38;5;241;43m.[39;49m[43m_element_class[49m[43m([49m[38;5;28;43mself[39;49m[43m,[49m[43m [49m[43mx[49m[43m,[49m[43m [49m[43mring_one[49m[43m,[49m[43m [49m[43mcoerce[49m[38;5;241;43m=[39;49m[43mcoerce[49m[43m)[49m
+[1;32m    639[0m [38;5;28;01mexcept[39;00m ([38;5;167;01mTypeError[39;00m, [38;5;167;01mValueError[39;00m):
+[1;32m    640[0m     [38;5;28;01mpass[39;00m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/fraction_field_element.pyx:114[0m, in [0;36msage.rings.fraction_field_element.FractionFieldElement.__init__[0;34m()[0m
+[1;32m    112[0m FieldElement.__init__(self, parent)
+[1;32m    113[0m if coerce:
+[0;32m--> 114[0m     self.__numerator   = parent.ring()(numerator)
+[1;32m    115[0m     self.__denominator = parent.ring()(denominator)
+[1;32m    116[0m else:
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:1003[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m   1001[0m 
+[1;32m   1002[0m         try:
+[0;32m-> 1003[0m             return self(str(element))
+[1;32m   1004[0m         except TypeError:
+[1;32m   1005[0m             pass
+
+File [0;32m/ext/sage/9.7/src/sage/structure/parent.pyx:897[0m, in [0;36msage.structure.parent.Parent.__call__[0;34m()[0m
+[1;32m    895[0m if mor is not None:
+[1;32m    896[0m     if no_extra_args:
+[0;32m--> 897[0m         return mor._call_(x)
+[1;32m    898[0m     else:
+[1;32m    899[0m         return mor._call_with_args(x, args, kwds)
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:161[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    159[0m             print(type(C), C)
+[1;32m    160[0m             print(type(C._element_constructor), C._element_constructor)
+[0;32m--> 161[0m         raise
+[1;32m    162[0m 
+[1;32m    163[0m cpdef Element _call_with_args(self, x, args=(), kwds={}):
+
+File [0;32m/ext/sage/9.7/src/sage/structure/coerce_maps.pyx:156[0m, in [0;36msage.structure.coerce_maps.DefaultConvertMap_unique._call_[0;34m()[0m
+[1;32m    154[0m cdef Parent C = self._codomain
+[1;32m    155[0m try:
+[0;32m--> 156[0m     return C._element_constructor(x)
+[1;32m    157[0m except Exception:
+[1;32m    158[0m     if print_warnings:
+
+File [0;32m/ext/sage/9.7/src/sage/rings/polynomial/multi_polynomial_libsingular.pyx:988[0m, in [0;36msage.rings.polynomial.multi_polynomial_libsingular.MPolynomialRing_libsingular._element_constructor_[0;34m()[0m
+[1;32m    986[0m try:
+[1;32m    987[0m     if '/' in element:
+[0;32m--> 988[0m         element = sage_eval(element,d)
+[1;32m    989[0m     else:
+[1;32m    990[0m         element = element.replace("^","**")
+
+File [0;32m/ext/sage/9.7/src/sage/misc/sage_eval.py:198[0m, in [0;36msage_eval[0;34m(source, locals, cmds, preparse)[0m
+[1;32m    196[0m     [38;5;28;01mreturn[39;00m [38;5;28mlocals[39m[[38;5;124m'[39m[38;5;124m_sage_eval_returnval_[39m[38;5;124m'[39m]
+[1;32m    197[0m [38;5;28;01melse[39;00m:
+[0;32m--> 198[0m     [38;5;28;01mreturn[39;00m [38;5;28;43meval[39;49m[43m([49m[43msource[49m[43m,[49m[43m [49m[43msage[49m[38;5;241;43m.[39;49m[43mall[49m[38;5;241;43m.[39;49m[38;5;18;43m__dict__[39;49m[43m,[49m[43m [49m[38;5;28;43mlocals[39;49m[43m)[49m
+
+File [0;32m<string>:1[0m, in [0;36m<module>[0;34m[0m
+
+File [0;32m/ext/sage/9.7/src/sage/rings/big_oh.py:166[0m, in [0;36mO[0;34m(*x, **kwds)[0m
+[1;32m    164[0m [38;5;28;01melif[39;00m [38;5;28mhasattr[39m(x, [38;5;124m'[39m[38;5;124mO[39m[38;5;124m'[39m):
+[1;32m    165[0m     [38;5;28;01mreturn[39;00m x[38;5;241m.[39mO([38;5;241m*[39m[38;5;241m*[39mkwds)
+[0;32m--> 166[0m [38;5;28;01mraise[39;00m [38;5;167;01mArithmeticError[39;00m([38;5;124m"[39m[38;5;124mO([39m[38;5;132;01m%s[39;00m[38;5;124m) not defined[39m[38;5;124m"[39m [38;5;241m%[39m (x,))
+
+[0;31mArithmeticError[0m: O(y^203) not defined
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[6D[0;94msage: [0mf[0;38;5;241mf = ((2*C.x^87 + 2*C.x^84 + C.x^83 + C.x^82 + C.x^81 + C.x^80 + 2*C.x^78 + 2*C.x^77 + C.x^76 + 2*C.x^75 + 2*C.x^74 + C.x^73 + C.x^72 + 2*C.x^71 + 2*C.x^70 
[162C+[0m

+[0;94m....: [0;38;5;241m 2*C.x^68 + 2*C.x^67 + C.x^63 + C.x^60 + 2*C.x^59 + 2*C.x^58 + 2*C.x^57 + 2*C.x^56 + C.x^54 + C.x^53 + 2*C.x^52 + C.x^51 + C.x^50 + 2*C.x^49 + 2*C.x^48 + C.
[162Cx[0m

+[0;94m....: [0;38;5;241m^47 + C.x^46 + C.x^44 + C.x^43 + C.x^42 + 2*C.x^24 + C.one)/(C.x^93 + C.x^85 + C.x^77 + 2*C.x^69 + 2*C.x^61 + 2*C.x^53))*C.y[130D[2A[7C[?7h[0m[?12l[?25h[?25l[?7l[0mf[?7h[0m[?12l[?25h[?25l[?7l[0m.[0;38;5;241mpth_root()[0m[K[0m

+[0m [0m[K[0m

+[0m [0m[K[2A[8C[?7h[0m[?12l[?25h[?25l[?7l[0ma[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0mn[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0ml[?7h[0m[?12l[?25h[?25l[?7l[0my[?7h[0m[?12l[?25h[?25l[?7l[0mt[?7h[0m[?12l[?25h[?25l[?7l[0mi[?7h[0m[?12l[?25h[?25l[?7l[0mc[?7h[0m[?12l[?25h[?25l[?7l[0m_[?7h[0m[?12l[?25h[?25l[?7l[0mp[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0mt[?7h[0m[?12l[?25h[?25l[?7l[0mr[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;16;48;5;152m()[?7h[0m[?12l[?25h[?25l[?7l[2D[0m([0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0mr[?7h[0m[?12l[?25h[?25l[?7l[0mt[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0me[?7h[0m[?12l[?25h[?25l[?7l[0mx[?7h[0m[?12l[?25h[?25l[?7l[0mp[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0mn[?7h[0m[?12l[?25h[?25l[?7l[0ms[?7h[0m[?12l[?25h[?25l[?7l[0mi[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mn[?7h[0m[?12l[?25h[?25l[?7l[0m_[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0mt[?7h[0m[?12l[?25h[?25l[?7l[0m_[?7h[0m[?12l[?25h[?25l[?7l[0mi[?7h[0m[?12l[?25h[?25l[?7l[0mn[?7h[0m[?12l[?25h[?25l[?7l[0mf[?7h[0m[?12l[?25h[?25l[?7l[0mt[?7h[0m[?12l[?25h[?25l[?7l[0my[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;16;48;5;152m()[?7h[0m[?12l[?25h[?25l[?7l[29D[0m[J[0;94msage: [0mff.expansion_at_infty()[29D[0m

+[J[?7h[0m[?12l[?25h[?2004l[0m[?7h[0;91m[0m[0m2*t^3 + 2*t^9 + t^11 + t^13 + t^15 + t^17 + 2*t^21 + O(t^23)
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mff.expansion_at_infty[0;38;5;16;48;5;152m()[?7h[0m[?12l[?25h[?25l[?7l[2D[0;38;5;210;48;5;88m([?7h[0m[?12l[?25h[?25l[?7l[0m()[20D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[2D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0ma[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mu[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mr[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0me[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mn[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mt[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0m_[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0ma[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mn[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0ma[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0ml[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0my[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mt[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mi[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mc[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0m_[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mp[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0ma[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mr[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0mt[Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[0m([Cf.expansion_at_infty()[23D[?7h[0m[?12l[?25h[?25l[?7l[2C[?7h[0m[?12l[?25h[?25l[?7l[19C[0;38;5;210;48;5;88m([0;38;5;16;48;5;152m)[2D[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;16;48;5;152m([C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[24D[0;38;5;16;48;5;152m([21C[0m()[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[52D[0m[J[0;94msage: [0mlaurent_analytic_part(ff.expansion_at_infty())[52D[0m

+[J[?7h[0m[?12l[?25h[?2004l[0m[?7h[0;91m[0m[0m0
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mlaurent_analytic_part[0;38;5;16;48;5;152m([0mff.expansion_at_infty()[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[52D[0m[J[0;94msage: [0mlaurent_analytic_part(ff.expansion_at_infty())[52D[0m

+[J[?7h[0m[?12l[?25h[?2004l[0m[?7h[0;91m[0m[0m0
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241maurent_analytic_part(ff.expansion_at_infty())[45D[?7h[0m[?12l[?25h[?25l[?7l[0mo[0;38;5;241mad('init.sage')[0m[K[15D[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0md[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ms[0;38;5;241muperelliptic_drw/tests/auxilliary_decompositions_test.sage')[60D[?7h[0m[?12l[?25h[?25l[?7l[3D[0;38;5;16;48;5;152m([2C[0;38;5;160;48;5;231muperelliptic_drw/tests/auxilliary_decompositions_test.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[63D[0m([61C[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231ms[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mu[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mp[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231me[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mr[?7h[0m[?12l[?25h[?25l[?7l[35D[0;94msage: [0mload([0;38;5;160;48;5;231m'superelliptic_drw/superelliptic_[0m

+[44C[0;38;5;16;48;5;250m sup…perelliptic_drw_auxilliaries.sage sup…perelliptic_drw_form.sage        [0m

+[44C[0;38;5;16;48;5;250m sup…perelliptic_drw_cech.sage         sup…perelliptic_witt.sage            [0m

+

+

+[0m [5A[44C[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mdrw_auxilliaries.sage[0m

+[44C[0;38;5;231;48;5;102m sup…perelliptic_drw_auxilliaries.sage[0m

+

+[44C[0;38;5;16;48;5;248m <unknown> [3A[10C[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[3A[65C[?7h[0m[?12l[?25h[?25l[?7l[56D[0;38;5;16;48;5;152m([55C)[?7h[0m[?12l[?25h[?25l[?7l[67D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'superelliptic_drw/superelliptic_drw_auxilliaries.sage'[0m)[67D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[6D[0;94msage: [0m

+

+

+

+[0m [4A[6C[?7h[0m[?12l[?25h[?25l[?7l[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'superelliptic_drw/superelliptic_drw_auxilliaries.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[60D[0maurent_analytic_part[0;38;5;16;48;5;152m([0mff.expansion_at_infty()[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[46D[0mff.expansion_at_infty[C[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[23D[0mdecom[Cosition_g8_pth_power[0;38;5;16;48;5;152m([0mff, prec = [0;38;5;20;1m200[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[13D[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m, prec = [0;38;5;20;1m200[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[13D[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[36D[0m[J[0;94msage: [0mdecomposition_g8_pth_power(ff)[36D[0m

+[J[?7h[0m[?12l[?25h[?2004ldecomposition_g8_pth_power ((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y
+[0m[?7h[0;91m[0m[0m(((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y,
+ 0)
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC[0;38;5;241m = superelliptic((x^3 - x)^3 + x^3 - x, 2)[42D[?7h[0m[?12l[?25h[?25l[?7l[0m = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[43D[0mdecomposition_g8_pth_power[0;38;5;16;48;5;152m([0mff[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[30D[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'superelliptic_drw/superelliptic_drw_auxilliaries.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[60D[0maurent_analytic_part[0;38;5;16;48;5;152m([0mff.expansion_at_infty()[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[46D[0mff.expansion_at_infty[C[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[23D[0mdecom[Cosition_g8_pth_power[0;38;5;16;48;5;152m([0mff, prec = [0;38;5;20;1m200[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[13D[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[36D[0;94msage: [0mff = (([0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m87[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m84[0m + C.x^[0;38;5;20;1m83[0m + C.x^[0;38;5;20;1m82[0m + C.x^[0;38;5;20;1m81[0m + C.x^[0;38;5;20;1m80[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m78[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m77[0m + C.x^[0;38;5;20;1m76[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m75[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m74[0m + C.x^[0;38;5;20;1m73[0m + C.x^[0;38;5;20;1m72[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m71[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m70[0m 
[162C+[0m

+[0;94m....: [0m [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m68[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m67[0m + C.x^[0;38;5;20;1m63[0m + C.x^[0;38;5;20;1m60[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m59[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m58[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m57[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m56[0m + C.x^[0;38;5;20;1m54[0m + C.x^[0;38;5;20;1m53[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m52[0m + C.x^[0;38;5;20;1m51[0m + C.x^[0;38;5;20;1m50[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m49[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m48[0m + C.
[162Cx[0m

+[0;94m....: [0m^[0;38;5;20;1m47[0m + C.x^[0;38;5;20;1m46[0m + C.x^[0;38;5;20;1m44[0m + C.x^[0;38;5;20;1m43[0m + C.x^[0;38;5;20;1m42[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m24[0m + C.one)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[0;38;5;20;1m77[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m))*C.y[130D[130C[?7h[0m[?12l[?25h[?25l[?7l[71D[0;38;5;20;1m1[0m)/(C.x^[0;38;5;20;1m93[0m + C.x^[0;38;5;20;1m85[0m + C.x^[0;38;5;20;1m77[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m69[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m61[0m + [0;38;5;20;1m2[0m*C.x^[0;38;5;20;1m53[0m))*C.y[0m[K[?7h[0m[?12l[?25h[?25l[?7l[2A[120D[0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[0m[K[0m

+[0m [0m[K[0m

+[0m [0m[K[2A[85C[?7h[0m[?12l[?25h[?25l[?7l[80D[0mload[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'init.sage'[0;38;5;16;48;5;152m)[0m[K[?7h[0m[?12l[?25h[?25l[?7l[17D[0mC = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[43D[0mB[3CC.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega0_lift, omega8_lift [(1/(x^9 + 2*x))*y] d[x] + V(((x^9 + x)/(x^8*y - y)) dx) + dV([(x^9/(x^8 + 2))*y]) [(1/(x^9 + 2*x))*y] d[x] + V(((x^8 + 1)/(x^15*y - x^7*y)) dx) + dV([(1/(x^23 + 2*x^15))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(1/(x^8 + 2))*y] d[x] + V(((-x^20 - x^12 + x^4)/(x^8*y - y)) dx) + dV([(x^12/(x^8 + 2))*y]) [(1/(x^8 + 2))*y] d[x] + V(((x^16 + 1)/(x^20*y - x^12*y)) dx) + dV([(1/(x^20 + 2*x^12))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x/(x^8 + 2))*y] d[x] + V(((x^23 + x^7)/(x^8*y - y)) dx) + dV([(x^15/(x^8 + 2))*y]) [(x/(x^8 + 2))*y] d[x] + V(((x^16 - x^8 - 1)/(x^17*y - x^9*y)) dx) + dV([(1/(x^17 + 2*x^9))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^2/(x^8 + 2))*y] d[x] + V(((x^18 + x^10)/(x^8*y - y)) dx) + dV([(x^18/(x^8 + 2))*y]) [(x^2/(x^8 + 2))*y] d[x] + V(((x^10 + x^2)/(x^8*y - y)) dx) + dV([(1/(x^14 + 2*x^6))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^6/(x^8 + 2))*y] d[x] + V(((-x^38 - x^30 + x^22)/(x^8*y - y)) dx) + dV([(x^30/(x^8 + 2))*y]) [(2/(x^10 + 2*x^2))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^26*y - x^18*y)) dx) + dV([(2/(x^26 + 2*x^18))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(2*x^5/(x^8 + 2))*y] d[x] + V(((-x^27 - x^19)/(x^8*y - y)) dx) + dV([(2*x^27/(x^8 + 2))*y]) 0
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift 0 [(1/(x^12 + 2*x^4))*y] d[x] + V(((x^8 + 1)/(x^24*y - x^16*y)) dx) + dV([(1/(x^32 + 2*x^24))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^3/(x^8 + 2))*y] d[x] + V(((-x^29 - x^21 + x^13)/(x^8*y - y)) dx) + dV([(x^21/(x^8 + 2))*y]) [(2/(x^13 + 2*x^5))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^35*y - x^27*y)) dx) + dV([(2/(x^35 + 2*x^27))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+(1, 1, 0, 2, 1, 2, 1, 2)
+decomposition_omega8_hpdh ((x^28 - x^26 + x^25 - x^24 + x^23 - x^22 - x^21 + x^20 + x^19 + x^18 + x^17 + x^15 - x^14 + x^13 + x^12 + x^11 - x^10 - x^8 - x^7 + x^6 - x^5 + x^4 + x^2 + x - 1)/(x^16*y - x^15*y + x^14*y - x^13*y + x^12*y - x^11*y + x^10*y - x^9*y - x^8*y + x^7*y - x^6*y + x^5*y - x^4*y + x^3*y - x^2*y + x*y)) dx
+[0;31m---------------------------------------------------------------------------[0m
+[0;31mNameError[0m                                 Traceback (most recent call last)
+Input [0;32mIn [26][0m, in [0;36m<cell line: 1>[0;34m()[0m
+[0;32m----> 1[0m B [38;5;241m=[39m C[38;5;241m.[39mcrystalline_cohomology_basis(prec [38;5;241m=[39m Integer([38;5;241m100[39m)); [43mautom[49m[43m([49m[43mB[49m[43m[[49m[43mInteger[49m[43m([49m[38;5;241;43m4[39;49m[43m)[49m[43m][49m[43m)[49m[38;5;241;43m.[39;49m[43mcoordinates[49m[43m([49m[43mbasis[49m[38;5;241;43m=[39;49m[43mB[49m[43m)[49m
+
+File [0;32m<string>:103[0m, in [0;36mcoordinates[0;34m(self, basis)[0m
+
+File [0;32m<string>:83[0m, in [0;36mdiv_by_p[0;34m(self)[0m
+
+File [0;32m<string>:33[0m, in [0;36mdecomposition_omega8_hpdh[0;34m(omega, prec)[0m
+
+[0;31mNameError[0m: name 'T' is not defined
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('superelliptic_drw/superelliptic_drw_auxilliaries.sage')[60D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0mad[0;38;5;16;48;5;152m([0;38;5;160;48;5;231m'superelliptic_drw/superelliptic_drw_auxilliaries.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[67D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'superelliptic_drw/superelliptic_drw_auxilliaries.sage'[0m)[67D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0ml[0;38;5;241moad('superelliptic_drw/superelliptic_drw_auxilliaries.sage')[60D[?7h[0m[?12l[?25h[?25l[?7l[0mo[?7h[0m[?12l[?25h[?25l[?7l[0ma[?7h[0m[?12l[?25h[?25l[?7l[0md[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231m'[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mi[0;38;5;241mnit.sage')[0m[K[10D[?7h[0m[?12l[?25h[?25l[?7l[0;38;5;160;48;5;231mn[?7h[0m[?12l[?25h[?25l[?7l[4D[0;38;5;16;48;5;152m([3C[0;38;5;160;48;5;231mit.sage'[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[23D[0m[J[0;94msage: [0mload([0;38;5;160;48;5;231m'init.sage'[0m)[23D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC[0;38;5;241m = superelliptic((x^3 - x)^3 + x^3 - x, 2)[42D[?7h[0m[?12l[?25h[?25l[?7l[0m = superelliptic[0;38;5;16;48;5;152m([0m(x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[49D[0m[J[0;94msage: [0mC = superelliptic((x^[0;38;5;20;1m3[0m - x)^[0;38;5;20;1m3[0m + x^[0;38;5;20;1m3[0m - x, [0;38;5;20;1m2[0m)[49D[0m

+[J[?7h[0m[?12l[?25h[?2004l[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mB[0;38;5;241m = C.crystalline_cohomology_basis(prec = 100); autom(B[4]).coordinates(basis=B)[79D[?7h[0m[?12l[?25h[?25l[?7l[0m = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates[0;38;5;16;48;5;152m([0mbasis=B[0;38;5;16;48;5;152m)[?7h[0m[?12l[?25h[?25l[?7l[86D[0m[J[0;94msage: [0mB = C.crystalline_cohomology_basis(prec = [0;38;5;20;1m100[0m); autom(B[[0;38;5;20;1m4[0m]).coordinates(basis=B)[86D[0m

+[J[?7h[0m[?12l[?25h[?2004lomega0_lift, omega8_lift [(1/(x^9 + 2*x))*y] d[x] + V(((x^9 + x)/(x^8*y - y)) dx) + dV([(x^9/(x^8 + 2))*y]) [(1/(x^9 + 2*x))*y] d[x] + V(((x^8 + 1)/(x^15*y - x^7*y)) dx) + dV([(1/(x^23 + 2*x^15))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(1/(x^8 + 2))*y] d[x] + V(((-x^20 - x^12 + x^4)/(x^8*y - y)) dx) + dV([(x^12/(x^8 + 2))*y]) [(1/(x^8 + 2))*y] d[x] + V(((x^16 + 1)/(x^20*y - x^12*y)) dx) + dV([(1/(x^20 + 2*x^12))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x/(x^8 + 2))*y] d[x] + V(((x^23 + x^7)/(x^8*y - y)) dx) + dV([(x^15/(x^8 + 2))*y]) [(x/(x^8 + 2))*y] d[x] + V(((x^16 - x^8 - 1)/(x^17*y - x^9*y)) dx) + dV([(1/(x^17 + 2*x^9))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^2/(x^8 + 2))*y] d[x] + V(((x^18 + x^10)/(x^8*y - y)) dx) + dV([(x^18/(x^8 + 2))*y]) [(x^2/(x^8 + 2))*y] d[x] + V(((x^10 + x^2)/(x^8*y - y)) dx) + dV([(1/(x^14 + 2*x^6))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^6/(x^8 + 2))*y] d[x] + V(((-x^38 - x^30 + x^22)/(x^8*y - y)) dx) + dV([(x^30/(x^8 + 2))*y]) [(2/(x^10 + 2*x^2))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^26*y - x^18*y)) dx) + dV([(2/(x^26 + 2*x^18))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(2*x^5/(x^8 + 2))*y] d[x] + V(((-x^27 - x^19)/(x^8*y - y)) dx) + dV([(2*x^27/(x^8 + 2))*y]) 0
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift 0 [(1/(x^12 + 2*x^4))*y] d[x] + V(((x^8 + 1)/(x^24*y - x^16*y)) dx) + dV([(1/(x^32 + 2*x^24))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+omega0_lift, omega8_lift [(x^3/(x^8 + 2))*y] d[x] + V(((-x^29 - x^21 + x^13)/(x^8*y - y)) dx) + dV([(x^21/(x^8 + 2))*y]) [(2/(x^13 + 2*x^5))*y] d[x] + V(((-x^16 + x^8 + 1)/(x^35*y - x^27*y)) dx) + dV([(2/(x^35 + 2*x^27))*y])
+result.omega8 == compare True
+result.omega8 - compare 0
+(1, 1, 0, 2, 1, 2, 1, 2)
+decomposition_omega8_hpdh ((x^28 - x^26 + x^25 - x^24 + x^23 - x^22 - x^21 + x^20 + x^19 + x^18 + x^17 + x^15 - x^14 + x^13 + x^12 + x^11 - x^10 - x^8 - x^7 + x^6 - x^5 + x^4 + x^2 + x - 1)/(x^16*y - x^15*y + x^14*y - x^13*y + x^12*y - x^11*y + x^10*y - x^9*y - x^8*y + x^7*y - x^6*y + x^5*y - x^4*y + x^3*y - x^2*y + x*y)) dx
+omega_analytic t^-18 + t^-16 + 2*t^-14 + t^-4
+omega_analytic.expansion_at_infty() t^-18 + t^-16 + 2*t^-14 + t^-4 + O(t^32)
+omega_analytic ((x^72 + x^71 - x^70 + x^65 - x^64 - x^62 - x^56 - x^55 - x^49 - x^48 + x^47 - x^46 - x^40 - x^38 - x^32 - x^31 - x^24 + x^23 - x^22 - x^16 - x^14 - x^8 - x^7 + 1)/(x^60*y)) dx
+omega8 ((x^78 - x^76 - x^75 - x^74 + x^73 + x^72 - x^71 - x^69 - x^67 - x^66 + x^65 - x^64 + x^63 - x^60 + x^59 + x^58 - x^57 - x^56 + x^55 - x^54 + x^48 - x^47 + x^46 + x^45 - x^44 + x^43 - x^42 + x^41 - x^40 + x^39 - x^38 - x^29 + x^28 - x^27 + x^26 - x^25 + x^24 - x^23 + x^22 + x^21 - x^20 + x^19 - x^18 + x^17 - x^16 - x^15 - x^14 - x^13 + x^12 - x^11 + x^10 - x^9 + x^8 - x^7 - x^6 + x^5 - x^4 + x^3 - x^2 + x - 1)/(x^75*y - x^74*y + x^73*y - x^72*y + x^71*y - x^70*y + x^69*y - x^68*y - x^67*y + x^66*y - x^65*y + x^64*y - x^63*y + x^62*y - x^61*y + x^60*y)) dx
+dh ((x^24 + x^22 - x^16 + x^14 - x^8 + 1)/(x^18*y)) dx
+omega8.expansion_at_infty() 1 + t^2 + 2*t^4 + t^6 + t^8 + 2*t^12 + 2*t^16 + t^18 + t^20 + 2*t^22 + t^32 + 2*t^40 + t^48 + O(t^50)
+decomposition_g8_p2th_power ((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y
+decomposition_g8_pth_power ((2*x^87 + 2*x^84 + x^83 + x^82 + x^81 + x^80 + 2*x^78 + 2*x^77 + x^76 + 2*x^75 + 2*x^74 + x^73 + x^72 + 2*x^71 + 2*x^70 + 2*x^68 + 2*x^67 + x^63 + x^60 + 2*x^59 + 2*x^58 + 2*x^57 + 2*x^56 + x^54 + x^53 + 2*x^52 + x^51 + x^50 + 2*x^49 + 2*x^48 + x^47 + x^46 + x^44 + x^43 + x^42 + 2*x^24 + 1)/(x^93 + x^85 + x^77 + 2*x^69 + 2*x^61 + 2*x^53))*y
+decomposition_g8_pth_power 0
+aux.omega0.omega.cartier() - aux.f.f.pth_root().diffn() == aux.omega8.omega.cartier() True
+[0m[?7h[0;91m[0m[0m[4, 1, 3, 2, 1, 8, 1, 2]
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC[0;38;5;241m = superelliptic((x^3 - x)^3 + x^3 - x, 2)[42D[?7h[0m[?12l[?25h[?25l[?7l[0m.[0;38;5;241muniformizer().diffn().e[Cpansion_at_infty(prec = 220)[52D[?7h[0m[?12l[?25h[?25l[?7l[8D[0;94msage: [0mC.[0;38;5;241muniformizer().diffn().expansion_at_infty(prec = 220)[0m

+[8C[0;38;5;16;48;5;250m  C.a_number                               C.cartier_matrix                         C.de_rham_basis                           [0m

+[8C[0;38;5;16;48;5;250m  C.base_ring                              C.characteristic                         C.degrees_de_rham0                        [0m

+[8C[0;38;5;16;48;5;250m  C.basis_de_rham_degrees                  C.cohomology_of_structure_sheaf_basis    C.degrees_de_rham1                       >[0m

+[8C[0;38;5;16;48;5;250m  C.basis_holomorphic_differentials_degree C.crystalline_cohomology_basis           C.degrees_holomorphic_differentials       [0m

+[0m [5A[8C[?7h[0m[?12l[?25h[?25l[?7l[0ma_number[0m[K[0m

+[9C[0;38;5;231;48;5;102m C.a_number                              [0m

+

+

+

+[8C[0;38;5;16;48;5;248m <unknown> [5A[3D[?7h[0m[?12l[?25h[?25l[?7l[8D[0mcartier_matrix[0m

+[9C[0;38;5;16;48;5;250m C.a_number                              [0;38;5;231;48;5;102m C.cartier_matrix                        [A[69D[?7h[0m[?12l[?25h[?25l[?7l[14D[0mde_rham[Cb[Csis[0m[K[0m

+[50C[0;38;5;16;48;5;250m C.cartier_matrix                        [0;38;5;231;48;5;102m C.de_rham_basis                         [A[111D[?7h[0m[?12l[?25h[?25l[?7l[12D[0mr[Cfrobenius_matrix[0m

+[8C[0;38;5;16;48;5;250m [3Ccartier_matrix[27Cde_rham[Cb[Csis [28C[0;38;5;231;48;5;102mr[Cfrobenius_matrix[0m

+[8C[0;38;5;16;48;5;250m [3Ccharacteristic[27Cdeg[Cees_de_rham0[26Cx              [0m

+[8C[0;38;5;16;48;5;250m<[3Ccohomology_of[Cstructure_sheaf_basis[6Cdegrees_de[Crham1                   [7Cy_w            [0m

+[8C[0;38;5;16;48;5;250m [3Ccrystalline_co[Comology_basis          [3Cdegrees_holom[Crphic_differentials[8Cexpon[Cnt                         [4A[100D[?7h[0m[?12l[?25h[?25l[?7l[19D[0mfct_field[0m[K[0m

+[12C[0;38;5;16;48;5;250mde_rham[Cb[Csis [28Cr[Cfrobenius_matrix[22C[0;38;5;231;48;5;102mfct_field          [0m

+[12C[0;38;5;16;48;5;250mdeg[Cees_de_rham0[26Cx              [25Cfinal_type[0m

+[12C[0;38;5;16;48;5;250mdegrees_de[Crham1                   [7Cy_w            [25Cfrobenius_matrix[0m

+[12C[0;38;5;16;48;5;250mdegrees_holom[Crphic_differentials[8Cexpon[Cnt                         [8Cgenus   [4A[85D[?7h[0m[?12l[?25h[?25l[?7l[9D[0mholomorphic_differentials_basis[0m

+[13C[0;38;5;16;48;5;250mr[Cfrobenius_matrix[22Cfct_field          [22C[0;38;5;231;48;5;102mholomorphic_differentials_basis[0m

+[13C[0;38;5;16;48;5;250mx              [25Cfinal_type[31Cis_smooth [0m

+[13C[0;38;5;16;48;5;250my_w            [25Cfrobenius_matrix[25Cnb_of_pt[2Cat_infty[0m

+[12C[0;38;5;16;48;5;250mexpon[Cnt                         [8Cgenus   [33Cone  [4A[60D[?7h[0m[?12l[?25h[?25l[?7l[31D[0mp_rank[0m[K[0m

+[12C[0;38;5;16;48;5;250mfct_field          [22Cholomorphic_differentials_basis[10C[0;38;5;231;48;5;102mp_rank                         [0m

+[12C[0;38;5;16;48;5;250mfinal_type[31Cis_smooth [31Cpolyn[Cmial[0m

+[12C[0;38;5;16;48;5;250mfrobenius_matrix[25Cnb_of_pt[2Cat_infty[23Cuniformizer       [0m

+[12C[0;38;5;16;48;5;250mgenus   [33Cone  [36Cverschiebung_matrix[4A[99D[?7h[0m[?12l[?25h[?25l[?7l[6D[0mx[0m[K[0m

+[12C[0;38;5;16;48;5;250mholomorphic_differentials_basis[10Cp_rank                         [10C[0;38;5;231;48;5;102mx     [33C[0;38;5;16;48;5;250m [0m

+[12C[0;38;5;16;48;5;250mis_smooth [31Cpolyn[Cmial[31Cy         [29C [0m

+[12C[0;38;5;16;48;5;250mnb_of_pt[2Cat_infty[23Cuniformizer       [20C                                         [C [0m

+[12C[0;38;5;16;48;5;250mone  [36Cverschiebung_matrix[19C                                         [C [4A[125D[?7h[0m[?12l[?25h[?25l[?7l[0mp_rank[0m

+[50C[0;38;5;231;48;5;102m C.p_rank                                [0;38;5;16;48;5;250m C.x                                     [A[118D[?7h[0m[?12l[?25h[?25l[?7l[6D[0mholomorphic_differentials_basis[0m

+[9C[0;38;5;231;48;5;102m C.holomorphic_differentials_basis       [0;38;5;16;48;5;250m C.p_rank                                [A[52D[?7h[0m[?12l[?25h[?25l[?7l[31D[0mfct_field[0m[K[0m

+[12C[0;38;5;231;48;5;102mfct_field                      [10C[0;38;5;16;48;5;250mholomorphic_differentials_basis[10Cp_rank[33C [0m

+[12C[0;38;5;16;48;5;250mfinal_type[31Cis_sm[Coth [31Cpolynomial[29C [0m

+[12C[0;38;5;16;48;5;250mfrobeniu[2Cmatrix  [23Cnb_of_pts_at_infty[20C C.uniformizer                           [C>[0m

+[12C[0;38;5;16;48;5;250mgenus[36Cone                [19C C.verschiebung_matrix                   [C [4A[117D[?7h[0m[?12l[?25h[?25l[?7l[9D[0mdr_frobenius_matrix[0m

+[12C[0;38;5;231;48;5;102mdr_frobenius_matrix[22C[0;38;5;16;48;5;250mfct_field                      [10Cholomorphic_differentials_basis[0m

+[12C[0;38;5;16;48;5;250mdx        [31Cfinal_type[31Cis_sm[Coth [0m

+[12C[0;38;5;16;48;5;250mdy_w            [25Cfrobeniu[2Cmatrix  [23Cnb_of_pts_at_infty[0m

+[12C[0;38;5;16;48;5;250mexponent[33Cgenus[36Cone                [4A[86D[?7h[0m[?12l[?25h[?25l[?7l[18D[0me[Crham_basis[0m[K[0m

+[13C[0;38;5;231;48;5;102me[Crham_basis      [22C[0;38;5;16;48;5;250mdr_frobenius_matrix[22Cfct_field                      [0m

+[13C[0;38;5;16;48;5;250megrees_de_rham0[25Cdx        [31Cfinal_type[0m

+[13C[0;38;5;16;48;5;250megrees_de_rham1[25Cdy_w            [25Cfrobeniu[2Cmatrix  [0m

+[12C[0;38;5;16;48;5;250mdegre[Cs_holomorphic_differentials[8Cexponent[33Cgenus[4A[78D[?7h[0m[?12l[?25h[?25l[?7l[13D[0mcartier[Cm[Ctrix[0m

+[12C[0;38;5;231;48;5;102mcartier[Cm[Ctrix[28C[0;38;5;16;48;5;250me[Crham_basis      [22Cdr_frobenius_matrix[0m

+[12C[0;38;5;16;48;5;250mcha[Cacteristic  [26Cegrees_de_rham0[25Cdx        [0m

+[12C[0;38;5;16;48;5;250mcohomology[Cof_structure_sheaf_basis[7Cegrees_de_rham1[25Cdy_w            [0m

+[12C[0;38;5;16;48;5;250mcrystalline_c[Chomology_basis     [8Cdegre[Cs_holomorphic_differentials[8Cexponent[4A[80D[?7h[0m[?12l[?25h[?25l[?7l[14D[0ma_number[0m[K[0m

+[8C[0;38;5;16;48;5;250m [3C[0;38;5;231;48;5;102ma_number      [27C[0;38;5;16;48;5;250mcartier[Cm[Ctrix[28Ce[Crham_basis      [0m

+[8C[0;38;5;16;48;5;250m [3Cbase_ring     [27Ccha[Cacteristic  [26Cegrees_de_rham0[0m

+[8C[0;38;5;16;48;5;250m [3Cbasis_de_rham[Cdegrees              [6Ccohomology[Cof_structure_sheaf_basis[7Cegrees_de_rham1[0m

+[8C[0;38;5;16;48;5;250m [3Cbasis_holomorp[Cic_differentials_degree[3Ccrystalline_c[Chomology_basis     [8Cdegre[Cs_holomorphic_differentials[4A[111D[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[8D[0mbase_ring[0m

+[9C[0;38;5;16;48;5;250m C.a_number                              [0m

+[9C[0;38;5;231;48;5;102m C.base_ring                             [2A[33D[?7h[0m[?12l[?25h[?25l[?7l[6D[0mis_de_rham_degrees[0m

+

+[9C[0;38;5;16;48;5;250m C.base_ring                             [0m

+[9C[0;38;5;231;48;5;102m C.basis_de_rham_degrees                 [3A[21D[?7h[0m[?12l[?25h[?25l[?7l[15D[0mholomorphic_differentials_degree[0m

+

+

+[9C[0;38;5;16;48;5;250m C.basis_de_rham_degrees                 [0m

+[9C[0;38;5;231;48;5;102m C.basis_holomorphic_differentials_degree[4A[4D[?7h[0m[?12l[?25h[?25l[?7l[38D[0mc[Crtier_matrix[0m[K[0m

+[50C[0;38;5;231;48;5;102m C.cartier_matrix                        [0m

+

+

+[9C[0;38;5;16;48;5;250m C.basis_holomorphic_differentials_degree[4A[28D[?7h[0m[?12l[?25h[?25l[?7l[13D[0mharacterist[Cc[0m

+[50C[0;38;5;16;48;5;250m C.cartier_matrix                        [0m

+[50C[0;38;5;231;48;5;102m C.characteristic                        [2A[69D[?7h[0m[?12l[?25h[?25l[?7l[13D[0martier_matr[Cx[0m

+[50C[0;38;5;231;48;5;102m C.cartier_matrix                        [0m

+[50C[0;38;5;16;48;5;250m C.characteristic                        [2A[69D[?7h[0m[?12l[?25h[?25l[?7l[14D[0ma_number[0m[K[0m

+[9C[0;38;5;231;48;5;102m C.a_number                              [0;38;5;16;48;5;250m C.cartier_matrix                        [A[75D[?7h[0m[?12l[?25h[?25l[?7l[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[0m

+[C[0m[K[5A[14C[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[0mC[0;38;5;241m = superelliptic((x^3 - x)^3 + x^3 - x, 2)[42D[?7h[0m[?12l[?25h[?25l[?7l[0m.[0;38;5;241muniformizer().diffn().e[Cpansion_at_infty(prec = 220)[52D[?7h[0m[?12l[?25h[?25l[?7l[0mg[0m[K[?7h[0m[?12l[?25h[?25l[?7l[0me[?7h[0m[?12l[?25h[?25l[?7l[0mn[?7h[0m[?12l[?25h[?25l[?7l[0mu[?7h[0m[?12l[?25h[?25l[?7l[0ms[?7h[0m[?12l[?25h[?25l[?7l[0m([?7h[0m[?12l[?25h[?25l[?7l[0;38;5;16;48;5;152m()[?7h[0m[?12l[?25h[?25l[?7l[15D[0m[J[0;94msage: [0mC.genus()[15D[0m

+[J[?7h[0m[?12l[?25h[?2004l[0m[?7h[0;91m[0m[0m4
+[6n[?2004h[?25l[0m[?7l[0m[J[0;94msage: [6D[6C[?7h[0m[?12l[?25h[?25l[?7l[?7h[0m[?12l[?25h[?25l[?7l[6D[0;94msage: [0m

+

+

+[0m [3A[6C[?7h[0m[?12l[?25h[?25l[?7l[0mf[0;38;5;241mf.expansion_at_infty()[22D[?7h[0m[?12l[?25h[?25l[?7l[0mo[0;38;5;241mr i i[C lau.expo[Cents():[23D[?7h[0m[?12l[?25h[?25l[?7l[2D[0;38;5;28;1mfor[?7h[0m[?12l[?25h[?25l[?7l[0m [?7h[0m[?12l[?25h[?25l[?7l[0m[K[?7h[0m[?12l[?25h[?25l[?7l[3D[0mfo[0m[K[?7h[0m[?12l[?25h
\ No newline at end of file
diff --git a/sage/auxilliaries/laurent_analytic_part.sage b/sage/auxilliaries/laurent_analytic_part.sage
new file mode 100644
index 0000000..aeea0ff
--- /dev/null
+++ b/sage/auxilliaries/laurent_analytic_part.sage
@@ -0,0 +1,16 @@
+def laurent_analytic_part(series):
+    F = base_ring(parent(series))
+    Ft.<t> = LaurentSeriesRing(F)
+    result = Ft(0)
+    for i in series.exponents():
+        if i<0:
+            result += series[i]*t^i
+    return result
+
+def laurent_integral(series):
+    F = base_ring(parent(series))
+    Ft.<t> = LaurentSeriesRing(F)
+    result = Ft(0)
+    for i in series.exponents():
+        result += series[i]*(t^i).integral()
+    return result
\ No newline at end of file
diff --git a/sage/superelliptic/superelliptic_class.sage b/sage/superelliptic/superelliptic_class.sage
index 7b3fd1d..60ce5cb 100644
--- a/sage/superelliptic/superelliptic_class.sage
+++ b/sage/superelliptic/superelliptic_class.sage
@@ -216,7 +216,7 @@ class superelliptic:
 def reduction(C, g):
     '''Auxilliary. Given a superelliptic curve C : y^m = f(x) and a polynomial g(x, y)
     it replaces repeteadly all y^m's in g(x, y) by f(x). As a result
-    you obtain \sum_{i = 0}^{m-1} y^i g_i(x).'''
+    you obtain sum_{i = 0}^{m-1} y^i g_i(x).'''
     p = C.characteristic
     F = C.base_ring
     Rxy.<x, y> = PolynomialRing(F, 2)
diff --git a/sage/superelliptic/tests/expansion_at_infty.sage b/sage/superelliptic/tests/expansion_at_infty.sage
new file mode 100644
index 0000000..e55df39
--- /dev/null
+++ b/sage/superelliptic/tests/expansion_at_infty.sage
@@ -0,0 +1,14 @@
+p = 3
+F = GF(3)
+Rx.<x> = PolynomialRing(F)
+f = x^3 - x
+m = 2
+C = superelliptic(f, m)
+xx = C.x.expansion_at_infty(prec = 200)
+yy = C.y.expansion_at_infty(prec = 200)
+r = f.degree()
+delta = GCD(m, r)
+R = r/delta
+M = m/delta
+print(yy^2 == f(x = xx))
+print(xx.valuation() == -M, yy.valuation() == -R)
\ No newline at end of file
diff --git a/sage/superelliptic_drw/regular_form.sage b/sage/superelliptic_drw/regular_form.sage
new file mode 100644
index 0000000..8603428
--- /dev/null
+++ b/sage/superelliptic_drw/regular_form.sage
@@ -0,0 +1,102 @@
+class superelliptic_regular_form:
+    def __init__(self, A, B):
+        self.dx = A
+        self.dy = B
+        self.curve = A.curve
+        
+    def __repr__(self):
+        if self.dx.function == 0:
+            return "(" + str(self.dy) + ") dy"
+        if self.dy.function == 0:
+            return "("+str(self.dx) + ") dx"
+        return "("+str(self.dx) + ") dx + (" + str(self.dy) + ") dy"
+    
+    def form(self):
+        C = self.curve
+        return self.dx*C.dx + self.dy*C.y.diffn()
+    
+    def int(self):
+        '''Regular integral. Works only for hyperelliptics.'''
+        C = self.curve
+        f = C.polynomial
+        if C.exponent != 2:
+            raise ValueError("Works only for hyperelliptics.")
+        F = C.base_ring
+        Rx.<x> = PolynomialRing(F)
+        Fxy, Rxy, x, y = C.fct_field
+        if self.dx == 0*C.x and self.dy == 0*C.x:
+            return 0*C.x
+        #which = random.choice([0, 1])
+        P = self.dx.function
+        Q = self.dy.function
+        Py, Px = P.quo_rem(y) #P = y*Py + Px
+        Qy, Qx = Q.quo_rem(y)
+        result = superelliptic_function(C, Rx(Px + 1/2*Qy*f.derivative()).integral())
+        numerator = Rx(2*f*Py + f.derivative()*Qx)
+        # Now numerator = 2W' f + W f'. We are looking for W. Then result is W*y.
+        W = Rx(0)
+        while(numerator != 0):
+            d = numerator.degree()
+            r = f.degree()
+            n_lead = numerator.leading_coefficient()
+            f_lead = Rx(f).leading_coefficient()
+            a = d - (r-1)
+            if a >= 0:
+                W_coeff = F(n_lead/f_lead)*F((2*a + r)^(-1))
+                W += W_coeff*Rx(x^a)
+                numerator -= 2*f*(W_coeff*Rx(x^a)).derivative() + (W_coeff*Rx(x^a))*f.derivative()
+                numerator = Rx(numerator)
+            if a < 0:
+                W += Rx(numerator/f.derivative())
+                numerator = Rx(0)
+        result = result + superelliptic_function(C, y*W)
+        return result
+
+class superelliptic_regular_drw_form:
+    def __init__(self, A, B, omega, h2):
+        self.dx = A
+        self.dy = B
+        self.omega = omega
+        self.h2 = h2
+        self.curve = A.curve
+        
+    def form(self):
+        C = self.curve
+        A = self.dx
+        B = self.dy
+        h2 = self.h2
+        omega = self.omega
+        form1 = superelliptic_drw_form(A, omega, h2)
+        form2 = B.teichmuller()*C.y.teichmuller().diffn()
+        
+    def __repr__(self):
+        return "[" + str(self.dx) + "] d[x] + [" + str(self.dy) + "] d[y] + V(" + str(self.omega) + ") + dV(" + str(self.h2) + ")"
+        
+def regular_drw_form(omega):
+    C = omega.curve
+    omega_aux = omega.r()
+    omega_aux = omega_aux.regular_form()
+    aux = omega - omega_aux.dx.teichmuller()*C.x.teichmuller().diffn() - omega_aux.dy.teichmuller()*C.y.teichmuller().diffn()
+    result = superelliptic_regular_drw_form(omega_aux.dx, omega_aux.dy, aux.omega, aux.h2)
+    return result
+
+superelliptic_drw_form.regular_form = regular_drw_form
+
+def regular_form(omega):
+    '''Given a form omega regular on U0, present it as P(x, y) dx + Q(x, y) dy for some polynomial P, Q.
+    The output is A(x)*y, B(x), where omega = A(x) y dx + B(x) dy'''
+    C = omega.curve
+    f = C.polynomial
+    Fxy, Rxy, x, y = C.fct_field
+    F = C.base_ring
+    Rx.<x> = PolynomialRing(F)
+    fct = omega.form
+    if fct.denominator() == y:
+        fct = fct.numerator()
+        integral_part, fct = fct.quo_rem(y)
+        d, A, B = xgcd(f, f.derivative())
+        return superelliptic_regular_form(superelliptic_function(C, integral_part + A*fct*y), superelliptic_function(C,2*B*fct))
+    if fct.denominator() == 1:
+        return superelliptic_regular_form(superelliptic_function(C, fct), 0*C.x)
+        
+superelliptic_form.regular_form = regular_form
\ No newline at end of file
diff --git a/sage/superelliptic_drw/superelliptic_drw_auxilliaries.sage b/sage/superelliptic_drw/superelliptic_drw_auxilliaries.sage
index 7061da7..ed9b8da 100644
--- a/sage/superelliptic_drw/superelliptic_drw_auxilliaries.sage
+++ b/sage/superelliptic_drw/superelliptic_drw_auxilliaries.sage
@@ -20,6 +20,7 @@ def decomposition_omega0_hpdh(omega):
     return (omega1, fct)
 
 def decomposition_omega8_hpdh(omega, prec = 50):
+    print('decomposition_omega8_hpdh', omega)
     '''Decompose omega = (regular on U8) + h^(p-1) dh, so that Cartier(omega) = (regular on U8) + dh.
     Result: (regular on U8, h)'''
     C = omega.curve
@@ -28,15 +29,11 @@ def decomposition_omega8_hpdh(omega, prec = 50):
     F = C.base_ring
     p = C.characteristic
     Rt.<t> = LaurentSeriesRing(F)
-    RT.<T> = PolynomialRing(F)
-    FT = FractionField(RT)
-    omega_analytic = FT(laurent_analytic_part(omega.expansion_at_infty(prec = prec))(t = T))
+    omega_analytic = Rt(laurent_analytic_part(omega.expansion_at_infty(prec = prec)))
     print('omega_analytic', omega_analytic)
     Cv = C.uniformizer()
     v = Fxy(Cv.function)
-    omega_analytic = Fxy(omega_analytic(T = v))
-    print('expansions', superelliptic_function(C, omega_analytic).expansion_at_infty(prec = prec), '\n', Cv.diffn().expansion_at_infty(prec = prec), 
-         '\n', (superelliptic_function(C, omega_analytic)*Cv.diffn()).expansion_at_infty(prec = prec))
+    omega_analytic = Fxy(omega_analytic(t = v))
     omega_analytic = superelliptic_function(C, omega_analytic)*Cv.diffn()
     print('omega_analytic.expansion_at_infty()', omega_analytic.expansion_at_infty(prec = prec))
     print('omega_analytic', omega_analytic)
@@ -46,4 +43,27 @@ def decomposition_omega8_hpdh(omega, prec = 50):
     print('dh', dh)
     h = dh.int()
     print('omega8.expansion_at_infty()', omega8.expansion_at_infty(prec = prec))
-    return (omega8, h)
\ No newline at end of file
+    return (omega8, h)
+
+def decomposition_g8_pth_power(fct, prec = 50):
+    print('decomposition_g8_pth_power', fct)
+    '''Decompose fct as g8 + A^p, if possible. Output: (g8, A).'''
+    C = fct.curve
+    F = C.base_ring
+    Rt.<t> = LaurentSeriesRing(F)
+    Fxy, Rxy, x, y = C.fct_field
+    A = laurent_analytic_part(fct.expansion_at_infty(prec = prec))
+    Cv = C.uniformizer()
+    v = Cv.function
+    A = A(t = v)
+    A = superelliptic_function(C, A)
+    A = A.pth_root()
+    g8 = fct - A^p
+    return (g8, A)
+
+def decomposition_g8_p2th_power(fct):
+    print('decomposition_g8_p2th_power', fct)
+    '''Decompose fct as g8 + A^(p^2), if possible. Output: (g8, A).'''
+    g0, A = decomposition_g8_pth_power(fct)
+    A0, A1 = decomposition_g8_pth_power(A)
+    return (g0 + A0^p, A1)
\ No newline at end of file
diff --git a/sage/superelliptic_drw/superelliptic_drw_cech.sage b/sage/superelliptic_drw/superelliptic_drw_cech.sage
index 04ec0e0..3bb9a1d 100644
--- a/sage/superelliptic_drw/superelliptic_drw_cech.sage
+++ b/sage/superelliptic_drw/superelliptic_drw_cech.sage
@@ -78,23 +78,15 @@ class superelliptic_drw_cech:
         # Now we can reduce: (... + dV(h2), V(f), ...) --> (..., V(f - h2), ...)
         aux.f -= aux.omega0.h2.verschiebung()
         aux.omega0.h2 = 0*C.x
-        
-        if aux.omega8.h2.expansion_at_infty().valuation() >= 0:
-            aux.f += aux.omega8.h2.verschiebung()
-            aux.omega8.h2 = 0*C.x
-            print('aux', aux)
-            # Now aux should be of the form (V(omega1), V(f), V(omega2))
-            # Thus aux = p*(Cartier(omega1), p-th_root(f), Cartier(omega2))
-            aux_divided_by_p = superelliptic_cech(C, aux.omega0.omega.cartier(), aux.f.f.pth_root())
-            print('aux_divided_by_p', aux_divided_by_p)
-            print('is regular', aux_divided_by_p.omega0.is_regular_on_U0(), aux_divided_by_p.omega8.is_regular_on_Uinfty())
-            print('aux.omega0.omega.cartier() - aux.f.f.pth_root().diffn() == aux.omega8.omega.cartier()', aux.omega0.omega.cartier() - aux.f.f.pth_root().diffn() == aux.omega8.omega.cartier())
-            return aux_divided_by_p
-        else:
-            print('aux.omega8.omega', aux.omega8.omega)
-            print('aux.omega8.h2', aux.omega8.h2)
-            print('second_patch(aux.omega8.h2.diffn()).is_regular_on_U0()', second_patch(aux.omega8.h2.diffn()).is_regular_on_U0())
-            raise ValueError("aux.omega8.h2.expansion_at_infty().valuation() < 0:", aux.omega8.h2.expansion_at_infty())
+        # Now the same for aux.omega8
+        aux.omega8.omega, fct = decomposition_omega8_hpdh(aux.omega8.omega)
+        aux.omega8.h2 += fct^p
+        aux.omega8.h2 = decomposition_g8_p2th_power(aux.omega8.h2)[0]
+        aux.f += aux.omega8.h2.verschiebung()
+        aux.omega8.h2 = 0*C.x
+        print('aux.omega0.omega.cartier() - aux.f.f.pth_root().diffn() == aux.omega8.omega.cartier()', aux.omega0.omega.cartier() - aux.f.f.pth_root().diffn() == aux.omega8.omega.cartier())
+        aux_divided_by_p = superelliptic_cech(C, aux.omega0.omega.cartier(), aux.f.f.pth_root())
+        return aux_divided_by_p
         
     def coordinates(self, basis = 0):
         C = self.curve
diff --git a/sage/superelliptic_drw/tests/auxilliary_decompositions_test.sage b/sage/superelliptic_drw/tests/auxilliary_decompositions_test.sage
new file mode 100644
index 0000000..4e8bba7
--- /dev/null
+++ b/sage/superelliptic_drw/tests/auxilliary_decompositions_test.sage
@@ -0,0 +1,14 @@
+p = 3
+F = GF(3)
+Rx.<x> = PolynomialRing(F)
+C = superelliptic((x^3 - x)^3 + x^3 - x, 2)
+Fxy, Rxy, x, y = C.fct_field
+om = ((C.x^28 - C.x^26 + C.x^25 - C.x^24 + C.x^23 - C.x^22 - C.x^21 + C.x^20 + C.x^19 + C.x^18 + C.x^17 + C.x^15 - C.x^14 + C.x^13 + C.x^12 + C.x^11 - C.x^10 - C.x^8 - C.x^7 + C.x^6 - C.x^5 + C.x^4 + C.x^2 + C.x - C.one)/(C.x^16*C.y - C.x^15*C.y + C.x^14*C.y - C.x^13*C.y + C.x^12*C.y - C.x^11*C.y + C.x^10*C.y - C.x^9*C.y - C.x^8*C.y + C.x^7*C.y - C.x^6*C.y + C.x^5*C.y - C.x^4*C.y + C.x^3*C.y - C.x^2*C.y + C.x*C.y))*C.dx
+om1, A = decomposition_omega8_hpdh(om)
+print(om1.is_regular_on_Uinfty() and om.cartier() == om1.cartier() + A.diffn())
+ff = ((2*C.x^74 + C.x^73 + C.x^71 + 2*C.x^70 + 2*C.x^65 + C.x^64 + C.x^62 + 2*C.x^61 + 2*C.x^56 + C.x^55 + C.x^53 + 2*C.x^52 + C.x^50 + 2*C.x^49 + 2*C.x^47 +  C.x^46 + C.x^44 + 2*C.x^43 + 2*C.x^38 + C.x^37 + C.x^32 + 2*C.x^31 + 2*C.x^29 + C.x^28 + C.x^26 + 2*C.x^25 + C.x^23 + 2*C.x^22 + 2*C.x^17 + C.x^16 + C.x^14 + 2*C.x^13 + 2*C.x^8 + C.x^7 + C.x^5 + 2*C.x^4 + 2*C.x^2 + C.x)/(C.x^35 + 2*C.x^34 + 2*C.x^32 + C.x^31 + C.x^27 + 2*C.x^25 + 2*C.x^24 + C.x^22 + C.x^19 + C.x^16 + C.x^13 + 2*C.x^11 + 2*C.x^10 + C.x^8 + C.x^4 + 2*C.x^3 + 2*C.x + C.one))*C.y
+ff1, ff2 = decomposition_g0_p2th_power(ff)
+print(ff == ff1 + ff2^(p^2), ff1.function in Rxy)
+om = ((C.x^18 - C.x^10 - C.x^9 + C.x)/C.y) * C.dx
+om1, h = decomposition_omega0_hpdh(om)
+print(om.cartier() == om1.cartier() + h.diffn(), om1.is_regular_on_U0())
\ No newline at end of file
diff --git a/sage/tests.sage b/sage/tests.sage
index e5d7ba2..791d236 100644
--- a/sage/tests.sage
+++ b/sage/tests.sage
@@ -1,12 +1,14 @@
 load('init.sage')
+#print("Expansion at infty test:")
+#load('superelliptic/tests/expansion_at_infty.sage')
 #print("superelliptic form coordinates test:")
 #load('superelliptic/tests/form_coordinates_test.sage')
 #print("p-th root test:")
 #load('superelliptic/tests/pth_root_test.sage')
 #print("not working! superelliptic p rank test:")
 #load('superelliptic/tests/p_rank_test.sage')
-print("a-number test:")
-load('superelliptic/tests/a_number_test.sage')
+#print("a-number test:")
+#load('superelliptic/tests/a_number_test.sage')
 #print("as_cover_test:")
 #load('as_covers/tests/as_cover_test.sage')
 #print("group_action_matrices_test:")
