Did I find the right examples for you? yes no

# all.Gamma0

All Samples(14)  |  Call(5)  |  Derive(0)  |  Import(9)

```        ArithmeticError: The generators [10] must be units modulo 14
"""
from all import Gamma0, Gamma1, SL2Z
if level == 1:
return SL2Z
elif H == 0:
return Gamma0(level)
```
```    Hlist = _list_subgroup(level, H)
if len(Hlist) == euler_phi(level):
return Gamma0(level)

key = (level, tuple(H))
```
```            True
"""
from all import Gamma0, SL2Z
reps1 = Gamma0(self.level()).coset_reps()
for r in reps1:
```

```        from congroup_gamma1 import is_Gamma1
from congroup_gammaH import is_GammaH
from all import Gamma0, Gamma1, GammaH
N = self.level()
if (level%N) and (N%level):
raise ValueError("one level must divide the other")
if is_Gamma0(self):
return Gamma0(level)
```

```        # then self has no elliptic points either.

from all import Gamma0, is_CongruenceSubgroup
if is_CongruenceSubgroup(self):
if self.is_subgroup(Gamma0(self.level())) and Gamma0(self.level()).nu2() == 0:
```
```        # then self has no elliptic points either.

from all import Gamma0, is_CongruenceSubgroup
if is_CongruenceSubgroup(self):
if self.is_subgroup(Gamma0(self.level())) and Gamma0(self.level()).nu3() == 0:
```

```        """

from all import Gamma0

# first deal with special cases
```
```            K = eps.base_ring()
from sage.modular.dims import CohenOesterle
from all import Gamma0
return ZZ( K(Gamma0(N).index() * (k-1)/ZZ(12)) + CohenOesterle(eps,k) )

```
```            [0, 12, 0, 4, 0, 8, 0, 4, 12, 0, 4, 0, 8, 0, 4, 0]
"""
from all import Gamma0

# first deal with special cases
```
```        eps = DirichletGroup(N)(eps)

from all import Gamma0

if eps.is_trivial():
```