// Magma code for the lmfdb family of higher genus curves 3.168-42.0.2-3-7
// The results are stored in a list of records called 'data'

RecFormat:=recformat<group,gp_id, signature,gen_vectors,conj_classes,genus,dimension,r,g0, passport_label,gen_vect_label, is_hyperelliptic, hyp_involution, is_cyclic_trigonal,cyc_auto,full_auto, full_sign,topological_class,braid_class>;

data:=[];

// Create group as a permutation group, and generate data which is the same for all entries.
gp_id:=[168,42];
H:=SmallGroup(gp_id[1],gp_id[2]); n:=#H; LP:=[]; LG:=[g : g in H]; for i in [1..n] do x:=LG[i]; Tx:=[LG[j]*x : j in [1..n]]; permL:=[]; for j in [1..n] do for k in [1..n] do if Tx[j] eq LG[k] then permL[j]:=k;  break; end if; end for; end for; Append(~LP,permL); end for; G:=PermutationGroup<n|LP>; 
signature:=[0,2,3,7];
genus:=3;
r:=#signature-1;
g0:=signature[1];
dim:=3*g0-3+r;
S:=Sym(gp_id[1]);

// Here we add an action to data.
gen_vectors:=[[5, 9, 45, 88, 1, 77, 104, 12, 2, 17, 32, 8, 154, 125, 19, 23, 10, 39, 15, 91, 160, 26, 16, 66, 151, 22, 84, 139, 33, 114, 38, 11, 29, 147, 48, 40, 163, 31, 18, 36, 98, 69, 47, 51, 3, 130, 43, 35, 146, 54, 44, 59, 74, 50, 112, 167, 61, 65, 52, 81, 57, 133, 118, 68, 58, 24, 109, 64, 42, 97, 75, 156, 80, 53, 71, 105, 6, 82, 121, 73, 60, 78, 140, 27, 89, 93, 129, 4, 85, 161, 20, 96, 86, 101, 116, 92, 70, 41, 103, 107, 94, 123, 99, 7, 76, 110, 100, 150, 67, 106, 168, 55, 117, 30, 122, 95, 113, 63, 132, 124, 79, 115, 102, 120, 14, 153, 131, 135, 87, 46, 127, 119, 62, 138, 128, 143, 158, 134, 28, 83, 145, 149, 136, 165, 141, 49, 34, 152, 142, 108, 25, 148, 126, 13, 159, 72, 164, 137, 155, 21, 90, 166, 37, 157, 144, 162, 56, 111], [2, 3, 1, 5, 6, 4, 77, 9, 10, 8, 12, 13, 11, 154, 16, 17, 15, 19, 20, 18, 91, 23, 24, 22, 26, 27, 25, 84, 30, 31, 29, 33, 34, 32, 147, 37, 38, 36, 40, 41, 39, 98, 44, 45, 43, 47, 48, 46, 35, 51, 52, 50, 54, 55, 53, 112, 58, 59, 57, 61, 62, 60, 133, 65, 66, 64, 68, 69, 67, 42, 72, 73, 71, 75, 76, 74, 105, 79, 80, 78, 82, 83, 81, 140, 86, 87, 85, 89, 90, 88, 161, 93, 94, 92, 96, 97, 95, 70, 100, 101, 99, 103, 104, 102, 7, 107, 108, 106, 110, 111, 109, 168, 114, 115, 113, 117, 118, 116, 63, 121, 122, 120, 124, 125, 123, 14, 128, 129, 127, 131, 132, 130, 119, 135, 136, 134, 138, 139, 137, 28, 142, 143, 141, 145, 146, 144, 49, 149, 150, 148, 152, 153, 151, 126, 156, 157, 155, 159, 160, 158, 21, 163, 164, 162, 166, 167, 165, 56], [45, 5, 9, 77, 88, 1, 76, 17, 12, 2, 154, 32, 8, 153, 10, 19, 23, 91, 39, 15, 90, 66, 26, 16, 84, 151, 22, 83, 38, 33, 114, 147, 11, 29, 146, 31, 40, 163, 98, 18, 36, 97, 3, 47, 51, 35, 130, 43, 34, 59, 54, 44, 112, 74, 50, 111, 52, 61, 65, 133, 81, 57, 132, 24, 68, 58, 42, 109, 64, 41, 80, 75, 156, 105, 53, 71, 104, 73, 82, 121, 140, 60, 78, 139, 129, 89, 93, 161, 4, 85, 160, 101, 96, 86, 70, 116, 92, 69, 94, 103, 107, 7, 123, 99, 6, 150, 110, 100, 168, 67, 106, 167, 122, 117, 30, 63, 95, 113, 62, 115, 124, 79, 14, 102, 120, 13, 87, 131, 135, 119, 46, 127, 118, 143, 138, 128, 28, 158, 134, 27, 136, 145, 149, 49, 165, 141, 48, 108, 152, 142, 126, 25, 148, 125, 164, 159, 72, 21, 137, 155, 20, 157, 166, 37, 56, 144, 162, 55]];
cc:=[2,3,5];
gen_vectors_as_perm:=[S!perm : perm in gen_vectors];
passport_label:=1;
gen_vect_label:=1;
is_hyperelliptic:=false;
is_cyclic_trigonal:=false;
Append(~data, rec<RecFormat | group:=G, gp_id:=gp_id, signature:=signature, gen_vectors:=gen_vectors_as_perm, conj_classes:=cc, genus:=genus, dimension:=dim, r:=r, g0:=g0, passport_label:= passport_label,gen_vect_label:=gen_vect_label, is_hyperelliptic:=is_hyperelliptic,is_cyclic_trigonal:=is_cyclic_trigonal >);
