local S, T; S := [[ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4 ], [ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, -1/4, -1/4, 1/4, 1/4, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4 ], [ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/4, 1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4 ], [ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4 ], [ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/4, 1/4, 1/4, 1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4 ], [ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, 1/4, 1/4 ], [ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4, 1/4, 1/4 ], [ 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, 1/8, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4, 1/4, 1/4, 1/4, 1/4, -1/4, -1/4 ], [ 1/4, -1/4, 1/4, -1/4, 1/4, -1/4, 1/4, -1/4, -1/2, 1/2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1/4, -1/4, 1/4, -1/4, 1/4, -1/4, 1/4, -1/4, 1/2, -1/2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1/4, 1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, 0, 0, -1/2, 1/2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1/4, 1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, 0, 0, 1/2, -1/2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1/4, 1/4, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, 0, 0, 0, 0, -1/2, 1/2, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1/4, 1/4, 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, 0, 0, 0, 0, 1/2, -1/2, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, 1/4, 0, 0, 0, 0, 0, 0, -1/2, 1/2, 0, 0, 0, 0, 0, 0 ], [ 1/4, -1/4, -1/4, 1/4, 1/4, -1/4, -1/4, 1/4, 0, 0, 0, 0, 0, 0, 1/2, -1/2, 0, 0, 0, 0, 0, 0 ], [ 1/4, -1/4, 1/4, -1/4, -1/4, 1/4, -1/4, 1/4, 0, 0, 0, 0, 0, 0, 0, 0, -1/2, 1/2, 0, 0, 0, 0 ], [ 1/4, -1/4, 1/4, -1/4, -1/4, 1/4, -1/4, 1/4, 0, 0, 0, 0, 0, 0, 0, 0, 1/2, -1/2, 0, 0, 0, 0 ], [ 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1/2, 1/2, 0, 0 ], [ 1/4, 1/4, -1/4, -1/4, -1/4, -1/4, 1/4, 1/4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1/2, -1/2, 0, 0 ], [ 1/4, -1/4, -1/4, 1/4, -1/4, 1/4, 1/4, -1/4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1/2, 1/2 ], [ 1/4, -1/4, -1/4, 1/4, -1/4, 1/4, 1/4, -1/4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1/2, -1/2 ]]; T := [ 1, 1, 1, 1, 1, 1, 1, 1, -E(4), E(4), -E(4), E(4), -E(4), E(4), -E(4), E(4), -E(4), E(4), -E(4), E(4), -E(4), E(4) ]; return rec(S := S, T := T);;