x = QQ['x'].0
for A in load("/sagedatafor2not4or4not8/li4"):
    E=EllipticCurve(A);
    rho=E.galois_representation();
    if E.has_cm()==False and  rho.is_surjective(2):
        F=factor(E.division_polynomial(4));
        l=len([p for p,e in F if p.degree()==6]);
        if l!=0:
            for p,e in F:
                if p.degree()==6:
                    g(x)=p(x/2)*2^6;
                    f = gp(loads(g(x).dumps()))
                    h=f.polgalois();
                    if h[1] !=48:
                        print E.label(),":", h;
                    
        else:
           G=F/(E.division_polynomial(2));
           for p,e in G:
                               g(x)=p(x/2)*2^3;
                f = gp(loads(g(x).dumps()))
                h=f.polgalois();
                if h[1] !=48:
                    print E.label(),":", h;
print 'done';