
// Make newform 6046.2.a.f in Magma, downloaded from the LMFDB on 25 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_6046_a();"
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_6046_2_a_f();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose line below.
// The default sign is -1.  You can change this with the optional parameter "sign".
// To make the character of type GrpDrchElt, type "MakeCharacter_6046_a();"
function MakeCharacter_6046_a()
    N := 6046;
    order := 1;
    char_gens := [5];
    v := [1];
    // chi(gens[i]) = zeta^v[i]
    assert UnitGenerators(DirichletGroup(N)) eq char_gens;
    F := CyclotomicField(order);
    chi := DirichletCharacterFromValuesOnUnitGenerators(DirichletGroup(N,F),[F|F.1^e:e in v]);
    return MinimalBaseRingCharacter(chi);
end function;

function MakeCharacter_6046_a_Hecke(Kf)
    return MakeCharacter_6046_a();
end function;


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_6046_2_a_f();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose line below.
// The default sign is -1.  You can change this with the optional parameter "sign".
function MakeNewformModSym_6046_2_a_f( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_6046_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,2,sign)));
    Vf := Kernel([<3,R![12878086144, -68475568128, -2156988928000, 14133424476160, 64748054476800, -623031919932416, 20520114758144, 9287547596451840, -14104021894376576, -63574394738051712, 169203086445451664, 199862911675603104, -973908217146671456, -52851675225350820, 3336801737439791839, -1898311539534376649, -7372916683466671651, 7918420916988810401, 10674766250167470906, -18145754686783232704, -9276382415837851459, 28204330191133619811, 1961534599050285043, -31877149647003182814, 7349364808407600045, 26946358327927521367, -13031470823482561700, -17091121685605790376, 12900742205152661179, 7899167216648635422, -9071923651326398839, -2356352515570639072, 4844804499614834895, 163173335899405997, -2014304465116944766, 278614289057503711, 655353908562012358, -192176115904938255, -164780071523286382, 76598410290447655, 30653247505489300, -22018227074354557, -3643514375080540, 4828183985505256, 58817034429511, -819093594685982, 88063876174120, 106522768824640, -23500082761623, -10223198206948, 3676709200567, 646141302450, -402984538546, -14053868248, 31866881873, -2045248632, -1771781939, 272074210, 62744737, -17139985, -924946, 634367, -25428, -12648, 1451, 75, -21, 1]>,<11,R![66082700728142848926, 5156111896759679010549, 105957109795275335378008, 21077506722088737235696, -7953857660087768834044615, -13731683889635068783118667, 208292506333694185151575795, 300871018553735885525241062, -2463630063529512040377109598, -1854873761008088299402864827, 14671506663375866833189712696, 2945552899664075093418258027, -49093001456797011321576318476, 9968665982226193180381614632, 98854894525659363281834890858, -51553053237276341964680171194, -124144097111705504162678537088, 103751339193247593859191438525, 95407997560243850951041345861, -123029745726000539643080752211, -36921427342933570709527781837, 95123992079447243789972204879, -5149376056505553092721526792, -49349383286435681927392749857, 15833679732820832860586611885, 16758649851804629336974333123, -10283034321006217978957698053, -3182485256470056786923417140, 3920590523317294126409607724, -20879422316836899698792326, -980611554328118225887964541, 215940485871356166245995248, 158183320554514357385830579, -72465502667070000195358864, -13133149876747558708376029, 13821540044189018217703212, -614577805053307774554206, -1704437163203049580462450, 360761680849082806532441, 128661468016138901885488, -56555339812288131464067, -3295036286760254916378, 5272466195405013977004, -492292837129886807814, -307706656746816441032, 72960751933304165649, 9005534755192736071, -5107967685505156962, 165184885784737864, 213732180538486251, -31020118200169104, -4688045011532117, 1562686096908145, -15059461372875, -42335931927458, 4476093533113, 535783980468, -138769252013, 2726822037, 1933829969, -197901519, -6607179, 2474277, -133984, -6491, 1153, -56, 1]>],Snew);
    return Vf;
end function;