_, p := HasAttribute(FldPr, "Precision");
AssertAttribute(FldPr, "Precision", 2 * p);
for j in [-10 .. 10] do
    print j;
    x := j eq 0 select zero else one/j;
    for k in [10 .. 1 by -1] do
	print k;
	y := one/k;
	z := x + i*y;
	jl := jInvariant(z);
	f := WeberF(z);
	f2 := WeberF2(z);
	fjl := (f^24 - 16)^3 / f^24;
	f2jl := (f2^24 + 16)^3 / f2^24;
	if Norm(jl - fjl) gt epsilon then
	    print "ERROR: jell vs wf: ", z, Norm(jl - fjl);
	end if;
	if Norm(jl - f2jl) gt epsilon then
	    print "ERROR: jell vs wf2: ", z, Norm(jl - f2jl);
	end if;
	if Norm(fjl - f2jl) gt epsilon then
	    print "ERROR: wf vs wf2: ", z, Norm(fjl - f2jl);
	end if;
    end for;
end for;
AssertAttribute(FldPr, "Precision", p);
