//Standard generators of L2(17) are a and b where a has order 2, b has order 3
//and ab has order 17.
//Standard generators of the double cover 2.L2(17) = SL2(17) are preimages A and
//B where B has order 3 and AB has order 17.
_LR := rec < recformat< F: GrpFP, AI: SeqEnum, G: GrpMat > |
      F := FreeGroup(2) >;
_LR`AI := [ [a^-1, (b*a)^3*(b^-1*a*b*a)^2] ]
             where a is (_LR`F).1 where b is (_LR`F).2;
//three constituents, all fixed by _LR`AI[1][1]
_LR`G := sub<GL(48,Integers()) |
\[ -1,-1,0,0,-1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1,0,
1,0,1,0,0,0,0,1,0,0,1,0,1,0,0,0,0,0,0,-1,0,0,0,0,0,
1,0,1,-1,1,1,1,0,0,0,0,0,1,0,-1,-1,0,0,-1,0,0,-1,-1,
-1,0,-1,0,0,0,0,0,-1,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,-1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,
0,0,1,1,-1,0,1,0,0,0,0,0,-1,0,0,0,0,0,-1,0,0,0,0,0,
0,0,0,1,0,0,1,1,0,0,0,0,1,0,0,0,-1,0,0,0,0,0,0,0,1,
1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,
-1,1,0,-1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
-1,0,0,-1,-1,0,0,0,0,-1,0,0,0,1,0,0,0,0,0,0,0,1,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,-1,-1,0,-1,0,
0,0,1,0,0,0,0,1,-1,-1,0,1,0,1,0,1,0,0,0,0,0,0,0,0,1,
0,0,1,0,-1,1,0,0,0,0,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,-1,-1,1,0,
-2,0,0,0,0,1,0,0,0,1,0,0,1,1,2,0,0,0,0,0,0,-1,1,0,
-1,0,1,0,0,0,-1,0,1,-1,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,
1,0,0,0,-1,-1,0,0,0,0,0,0,-1,0,-1,0,0,0,0,0,0,0,0,-1,
1,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,-1,1,0,-1,0,0,0,
0,0,0,0,0,1,0,-1,1,1,0,0,1,1,1,0,0,0,0,0,0,0,1,0,0,
0,1,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,-1,0,0,0,0,0,-1,
0,0,0,1,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,-1,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,-1,0,0,0,
1,0,0,0,-1,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,-1,1,0,-1,0,
-1,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-1,0,-1,1,0,-1,0,2,0,1,0,-1,0,-1,0,
0,0,0,0,-1,0,-1,0,0,0,0,0,0,1,-1,0,1,1,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,-1,0,0,-1,0,1,1,0,0,
1,0,0,1,1,2,0,0,0,0,0,0,-1,1,1,-1,0,1,0,0,1,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-1,1,0,0,1,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,1,
0,0,0,0,0,0,0,0,0,0,1,0,-1,1,0,0,0,0,0,0,0,1,0,0,0,
0,-1,-1,1,0,0,0,0,0,0,-1,0,0,0,0,1,0,0,0,1,0,0,1,0,
1,0,1,0,-1,0,0,0,0,0,1,0,1,0,0,0,0,0,0,-1,0,0,0,0,0,
0,0,-1,0,0,0,0,0,0,1,0,0,0,-1,0,-1,-1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,-1,0,0,0,0,0,0,
0,0,-1,0,0,0,-1,0,1,0,1,1,1,0,-1,-1,0,0,0,0,-1,0,-1,
0,0,0,0,0,0,0,-1,0,0,0,-1,0,0,0,-1,-1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-1,0,0,0,0,-1,0,1,0,0,0,0,-1,-1,-1,0,-1,0,-1,-1,0,-1,
0,-1,0,0,0,1,0,-1,0,0,0,-1,0,0,0,0,0,0,0,-1,0,0,0,0,
0,0,-1,0,0,0,0,-1,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,
1,1,0,0,-1,1,0,-2,0,0,0,0,0,1,0,0,0,0,-1,2,0,1,0,0,
0,-1,0,0,-1,0,1,-1,-1,1,0,0,0,-1,0,0,0,1,-1,0,0,0,0,
0,0,0,0,0,1,0,0,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,
1,0,0,0,1,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,
-1,0,1,1,0,0,0,0,0,0,0,0,-1,1,-1,0,0,0,-1,-1,0,0,0,0,
0,0,0,1,0,0,1,1,0,0,0,0,1,0,0,0,-1,0,0,0,0,0,0,0,0,
0,-1,0,1,0,-1,0,0,0,0,0,1,0,0,0,0,0,1,0,1,0,0,0,1,0,
0,0,1,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,-1,-1,0,0,0,0,0,-1,0,0,0,0,0,
0,0,-1,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,
0,0,-1,1,0,0,0,0,0,0,-1,0,0,0,0,0,-1,0,1,0,0,0,0,0,
0,-1,0,0,0,1,1,0,0,0,1,0,1,1,1,1,0,0,0,0,0,0,0,1,1,
-1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,-1,
0,0,0,1,0,1,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,
0,0,-1,0,0,0,0,1,0,0,0,0,0,0,-1,1,0,0,0,0,0,-1,-2,0,
0,0,0,0,0,0,-1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-1,0,0,0,0,0,0,-1,-1,0,0,0,0,0,0,0,0,0,
-1,-1,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,-1,1,0,0,
0,0,0,0,0,0,-1,0,0,0,0,0,0,1,1,-1,0,0,0,0,0,-1,0,0,
0,1,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,-1,0,0,0,
0,0,1,0,0,1,0,0,0,0,0,-1,0,-1,0,0,0,0,-1,0,2,0,0,1,
0,0,-1,-1,0,0,0,0,-1,0,-2,0,1,0,-1,0,0,1,-1,-1,2,0,-1,
0,0,0,0,0,0,0,0,0,0,0,0,0,1,-2,0,-1,-1,-1,0,0,1,0,0,
-1,-2,0,0,-1,0,1,0,1,0,1,0,-1,0,0,1,0,0,-1,1,0,-1,1,
0,0,1,0,0,0,0,-1,0,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,
0,1,-1,0,0,0,-1,0,0,-1,-1,-2,0,0,0,0,0,0,0,-1,-1,1,-1,
-2,0,-1,0,0,0,0,1,0,0,0,0,0,0,-1,-1,1,-1,0,-1,0,0,0,
0,0,-1,-1,0,1,1,0,0,0,-1,1,0,1,0,0,0,0,0,0,0,0,0,0,
0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,-1,0,0,0,0,0,1,0,
0,1,0,0,-1,-1,0,0,0,1,0,0,-1,0,0,0,0,0,0,0,0,0,-1,0,
0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,-1,0,0,
-1,-1,0,0,0,0,0,0,0,1,1,1,0,-1,0,0,-1,0,-1,1,1,-1,0,
1,0,0,0,0,0,0,0,0,0,0,0,0,-1,-1,1,0,0,0,0,1,0,-2,0,
0,0,0,1,1,1,0,1,0,1,2,1,2,0,0,0,0,0,0,0,1,0,0,0,1,
0,0,0,0,0,0,-1,0,0,0,0,-1,0,0,0,1,0,0,0,0,0,0,0,-1,
1,0,1,-1,-1,1,0,0,-1,1,0,0,0,0,0,-1,0,0,0,-1,1,0,-1,
1,0,0,0,0,0,0,-1,0,0,0,-1,0,-1,-1,1,1,1,0,1,0,0,-2,0,
0,0,1,1,0,0,0,1,0,0,1,1,1,0,0,0,-1,0,0,0,1,0,1,0,1,
0,0,0,0,0,0,-1,0,0,-1,0,0 ],
\[ 0,1,-1,0,0,-1,0,-1,0,1,0,0,0,0,0,0,-1,0,0,1,-1,-1,
0,-1,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,2,0,0,1,0,0,0,-1,0,0,0,1,1,0,0,0,1,0,1,1,0,0,
0,1,0,-1,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,1,
-1,0,-1,0,-1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,
0,0,0,0,1,0,0,0,-1,-1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,0,1,
0,0,0,-1,1,0,-1,0,0,0,-1,-1,0,0,0,0,0,0,1,0,0,0,0,0,
-1,-1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,-1,0,0,0,0,
0,0,0,0,0,0,0,0,0,1,-1,0,1,0,1,0,0,-1,-1,0,0,1,-1,0,
0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-1,0,0,0,-1,0,0,0,0,1,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,-1,0,-1,0,0,0,0,0,0,
1,0,0,-1,0,-1,0,0,-1,-1,1,0,1,0,0,-1,-1,0,0,0,-1,0,0,
-1,0,1,0,0,-1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,1,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,
1,0,0,0,0,0,-1,0,1,1,1,0,0,-1,0,0,0,0,0,0,0,0,0,0,1,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,1,1,-1,0,0,0,0,0,0,1,0,0,0,0,-1,0,0,0,
-1,0,0,-1,0,-1,0,-1,0,1,0,0,0,0,0,-1,0,-1,0,0,0,0,0,
0,1,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,1,0,0,0,0,1,0,-1,0,0,0,0,0,0,0,-1,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,-1,0,-1,1,0,-1,0,0,0,0,0,0,0,0,1,0,-1,1,1,0,0,1,1,
1,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,-1,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,
-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,-1,0,0,
0,0,0,-1,0,0,0,0,0,0,0,-1,0,0,0,-1,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,
1,0,0,0,-1,0,-1,-1,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,
0,0,0,0,1,0,0,0,0,-1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,-1,
0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,1,0,0,0,0,0,0,0,0,
-1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,1,0,-1,-1,0,0,0,0,0,1,0,0,0,-1,-2,
0,0,0,-1,-1,0,-1,0,-1,0,-1,0,1,0,0,0,0,-1,0,0,-1,0,1,
0,0,0,0,0,0,1,-1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,
0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,
0,0,0,1,0,0,0,0,-1,0,0,0,0,-1,0,-1,0,-1,0,0,0,1,1,1,
0,0,1,0,0,0,0,0,0,1,-1,0,0,0,0,0,0,1,0,0,0,-1,-1,0,
0,0,0,0,0,0,0,0,1,0,-1,0,0,0,0,0,0,1,0,0,0,-1,-1,0,
0,0,-1,0,-1,-1,-1,-1,0,0,0,0,0,0,0,-1,-1,1,0,-1,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,
0,-1,0,0,0,-1,0,-1,0,1,0,0,0,0,0,0,-1,1,0,-1,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,-1,0,1,0,0,0,0,0,-1,0,
0,0,0,0,-1,0,-1,0,0,0,-1,0,0,0,-1,0,1,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,
0,1,-1,0,0,0,0,0,0,-1,0,1,0,0,0,0,0,-1,0,0,0,0,0,0,
0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,
0,0,1,0,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,
0,0,0,0,-1,0,0,-1,0,0,-1,-1,0,0,0,0,0,0,0,-1,0,-1,0,
0,0,-1,0,-1,0,0,-1,-1,0,0,0,-1,0,1,0,0,0,0,-1,0,0,0,
0,0,0,0,0,0,-1,0,0,0,0,0,0,-1,0,1,0,0,1,1,0,-1,0,0,
0,0,0,-1,0,-1,0,0,0,-1,0,0,1,-1,-1,1,0,0,0,0,-1,0,0,
0,0,0,0,0,0,0,-1,-1,1,1,0,1,0,0,0,-1,0,0,0,0,1,0,1,
0,1,0,0,1,0,1,0,0,-1,-1,0,0,0,-1,1,1,0,1,0,-1,0,0,0,
0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,-1,0,
0,1,0,0,0,0,0,0,0,1,1,0,0,0,2,-2,0,0,0,0,1,0,0,0,0,
0,0,0,-1,0,-1,0,-1,1,0,-1,0,0,0,0,0,0,0,0,0,-1,0,0,0,
0,-1,0,1,1,1,-1,0,-1,-1,0,0,1,-1,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,1,1,0,2,-1,0,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,
1,0,-1,-1,-1,1,1,0,1,0,0,-1,0,-1,0,0,0,0,0,-1,0,0,0,
0,-1,0,0,0,-1,0,-1,1,0,0,0,-1,0,1,0,0,0,0,0,0,0,1,0,
-1,0,0,1,1,0,-1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-1,0,0,-1,0,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,1,1,0,0,0,-1,0,0,1,-1,0,0,-1,0,0,0,0,0,0,0,0,1,0,
0,0,0,0,-1,0,0,-1,0,0,0,1,0,0,0,-1,0,0,0,0,0,0,-1,-1,
1,0,1,0,0,-1,-1,0,0,0,-2,1,0,-1,0,0,0,0,0,0,0,0,1,0,
0,0,1,1,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,-1,0,0,0,-1,
1,0,1,0,0,1,0,0,0,1,0,-1,0,-1,0,0,1,0,0,1,1,0,1,0,0,
0,0,0,0,-1,0,-1,0,-1,0,-1,-1,0,0,0,1,0,1,-1,0,0,0,-1,
1,1,1,0,-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,
0 ] >;

return _LR;
