HAP_GCOMPLEX_SETUP:=[false];

q1:=[[1,0,0],[0,0,-1],[0,1,1]];
q2:=[[-1,0,0],[0,1,1],[0,0,-1]];
m0 := [ [1,0,0], [0,1,0], [0,0,1] ];
m1 := [ [0,0,1], [0,1,0], [-1,0,0] ];
m2 := [ [-1,0,0], [0,0,-1], [0,-1,0] ];
m3 := [ [1,0,0], [0,0,-1], [0,1,1] ];
m4 := [ [-1,0,0], [0,1,1], [0,0,-1] ];
m5 := [ [0,-1,0], [-1,0,0], [0,0,-1] ];
m6 := [ [0,0,-1], [-1,0,0], [1,1,1] ];
m7 := [ [-1,0,0], [0,1,0], [0,-1,-1] ];
m8 := [ [0,-1,-1], [0,-1,0], [-1,1,0] ];
m9 := [ [-1,0,0], [0,0,1], [0,1,0] ];
m10 := [ [0,0,-1], [-1,0,-1], [0,1,1] ];
m11 := [ [0,1,0], [0,0,1], [1,0,0] ];
m12 := [ [0,0,-1], [0,-1,0], [-1,0,0] ];
m13 := [ [-1,0,0], [0,-1,0], [1,1,1] ];
m14 := [ [-1,0,0], [-1,0,-1], [1,-1,0] ];
m15 := [ [0,1,1], [1,0,1], [0,0,-1] ];

HAP_GCOMPLEX_LIST:=


[ 

#0-cells
[ 
#v1
rec(
          TheMatrixStab := 
           Group([ m1,m2 ]),
          TheRotSubgroup := 
           Group([ m1,m2 ]),
          BoundaryImage := rec(
              ListIFace := [ ],
              ListSign := [  ],
              ListElt := [  ] )
) , 
 
#v2
rec(
          TheMatrixStab := 
           Group([ m3,m4 ]),
          TheRotSubgroup := 
           Group([ m3,m4 ]),
          BoundaryImage := rec(
              ListIFace := [ ],
              ListSign := [  ],
              ListElt := [  ] )
) , 


#v3
rec(
          TheMatrixStab := 
           Group([ m5,m6 ]),
          TheRotSubgroup := 
           Group([ m5,m6 ]),
          BoundaryImage := rec(
              ListIFace := [ ],
              ListSign := [  ],
              ListElt := [  ] )
) , 

#v4
rec(
          TheMatrixStab := 
           Group([ m5,m7 ]),
          TheRotSubgroup := 
           Group([ m5,m7 ]),
          BoundaryImage := rec(
              ListIFace := [ ],
              ListSign := [  ],
              ListElt := [  ] )
) , 

#v5 
rec(
          TheMatrixStab := 
           Group([ m9,m10 ]),
          TheRotSubgroup := 
           Group([ m9,m10 ]),
          BoundaryImage := rec(
              ListIFace := [ ],
              ListSign := [  ],
              ListElt := [  ] )
) 
 
],

#1-cells
[ 

#e1
rec(
          TheMatrixStab := 
           Group([ m9,m2 ]),
          TheRotSubgroup := 
           Group([ m9,m2 ]),
          BoundaryImage := rec(
              ListIFace := [2,1 ],
              ListSign := [1,-1  ],
              ListElt := [m0,m0 ] )
),


#e2
rec(
          TheMatrixStab := 
           Group([ m11,m12 ]),
          TheRotSubgroup := 
           Group([ m11,m12 ]),
          BoundaryImage := rec(
              ListIFace := [3,1 ],
              ListSign := [1,-1  ],
              ListElt := [m0,m0  ] )
),

#e3
rec(
          TheMatrixStab := 
           Group([ m5 ]),
          TheRotSubgroup := 
           Group([ m5 ]),
          BoundaryImage := rec(
              ListIFace := [4,1 ],
              ListSign := [1,-1  ],
              ListElt := [ m0,m0 ] )
),

#e4
rec(
          TheMatrixStab := 
           Group([ m5 ]),
          TheRotSubgroup := 
           Group([ m5 ]),
          BoundaryImage := rec(
              ListIFace := [3,1 ],
              ListSign := [1,-1  ],
              ListElt := [q1,m0  ] )
),

#e5
rec(
          TheMatrixStab := 
           Group([ m9 ]),
          TheRotSubgroup := 
           Group([ m9 ]),
          BoundaryImage := rec(
              ListIFace := [4,1 ],
              ListSign := [1,-1  ],
              ListElt := [q1,m0  ] )
),

#e6
rec(
          TheMatrixStab := 
           Group([ m9,m5 ]),
          TheRotSubgroup := 
           Group([ m9,m5 ]),
          BoundaryImage := rec(
              ListIFace := [5,1 ],
              ListSign := [1,-1  ],
              ListElt := [m0,m0 ] )
),

#e7
rec(
          TheMatrixStab := 
           Group([ m2 ]),
          TheRotSubgroup := 
           Group([ m2 ]),
          BoundaryImage := rec(
              ListIFace := [3,2 ],
              ListSign := [1,-1  ],
              ListElt := [m0,m0  ] )
),

#e8
rec(
          TheMatrixStab := 
           Group([ m9 ]),
          TheRotSubgroup := 
           Group([ m9 ]),
          BoundaryImage := rec(
              ListIFace := [4,2 ],
              ListSign := [1,-1  ],
              ListElt := [q1,m0  ] )
),

#e9
rec(
          TheMatrixStab := 
           Group([ m5,m13 ]),
          TheRotSubgroup := 
           Group([ m5,m13 ]),
          BoundaryImage := rec(
              ListIFace := [4,3 ],
              ListSign := [1,-1  ],
              ListElt := [m0,m0  ] )
),

#e10
rec(
          TheMatrixStab := 
           Group([ m8,m5 ]),
          TheRotSubgroup := 
           Group([ m8,m5 ]),
          BoundaryImage := rec(
              ListIFace := [5,3 ],
              ListSign := [1,-1  ],
              ListElt := [m0,q1  ] )
),

#e11
rec(
          TheMatrixStab := 
           Group([ m15,m9 ]),
          TheRotSubgroup := 
           Group([ m15,m9 ]),
          BoundaryImage := rec(
              ListIFace := [5,4 ],
              ListSign := [1,-1  ],
              ListElt := [m0,q1  ] )
)
],

#2-cells
[

#t1
rec(
          TheMatrixStab := 
           Group([ m2 ]),
          TheRotSubgroup := 
           Group([ m2 ]),
          BoundaryImage := rec(
              ListIFace := [7,2,1 ],
              ListSign := [1,-1,1  ],
              ListElt := [m0,m0,m0 ] )
),

#t2
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [8,3,1 ],
              ListSign := [1,-1,1  ],
              ListElt := [q1^-1,m0,m0  ] )
),

#t3
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [7,4,1 ],
              ListSign := [1,-1,1  ],
              ListElt := [q1,m0,m0 ] )
),

#t4
rec(
          TheMatrixStab := 
           Group([ m9 ]),
          TheRotSubgroup := 
           Group([ m9 ]),
          BoundaryImage := rec(
              ListIFace := [8,5,1],
              ListSign := [1,-1,1, ],
              ListElt := [m0,m0,m0  ] )
),

#t5
rec(
          TheMatrixStab := 
           Group([ m5 ]),
          TheRotSubgroup := 
           Group([ m5 ]),
          BoundaryImage := rec(
              ListIFace := [9,3,2 ],
              ListSign := [1,-1,1],
              ListElt := [m0,m0,m0  ] )
),


#t6
rec(
          TheMatrixStab := 
           Group([ m5 ]),
          TheRotSubgroup := 
           Group([ m5 ]),
          BoundaryImage := rec(
              ListIFace := [9,4,3 ],
              ListSign := [-1,-1,1 ],
              ListElt := [q2^-1*q1,m0,m0  ] )
),


#t7
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [9,5,4 ],
              ListSign := [1,-1,1  ],
              ListElt := [q1,m0,m0 ] )
),

#t8
rec(
          TheMatrixStab := 
           Group([ m5 ]),
          TheRotSubgroup := 
           Group([ m5 ]),
          BoundaryImage := rec(
              ListIFace := [10,6,4],
              ListSign := [1,-1,1 ],
              ListElt := [m0,m0,m0   ] )
),

#t9
rec(
          TheMatrixStab := 
           Group([ m9 ]),
          TheRotSubgroup := 
           Group([ m9 ]),
          BoundaryImage := rec(
              ListIFace := [11,6,5 ],
              ListSign := [1,-1,1 ],
              ListElt := [m0,m0,m0   ] )
),

#t10
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [9,8,7 ],
              ListSign := [1,-1,1 ],
              ListElt := [m0,q1^-1,m0  ] )
),


#t11
rec(
          TheMatrixStab := 
           Group([ m14,m8 ]),
          TheRotSubgroup := 
           Group([ m14,m8 ]),
          BoundaryImage := rec(
              ListIFace := [11,10,9 ],
              ListSign := [1,-1,1 ],
              ListElt := [m0,m0,q1 ] )
)

],

#3-cells
[
#T1
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [10, 5, 2, 1],
              ListSign := [1, -1, 1, -1   ],
              ListElt := [m0,m0,m0,m0  ] )
),

#T2
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [10, 6, 3, 2 ],
              ListSign := [-1, -1, 1, -1 ],
              ListElt := [q2^-1*q1,m0,m0,m0 ] )
),

#T3
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [10, 7, 4, 3  ],
              ListSign := [1, -1, 1, -1  ],
              ListElt := [q1,m0,m0,m0 ] )
),

#T4
rec(
          TheMatrixStab := 
           Group([ m0 ]),
          TheRotSubgroup := 
           Group([ m0 ]),
          BoundaryImage := rec(
              ListIFace := [11, 9, 8, 7 ],
              ListSign := [1, -1, 1, -1  ],
              ListElt := [m0,m0,m0,m0 ] )
)
]

];
