
// Make newform 6013.2.a.d in Magma, downloaded from the LMFDB on 24 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_6013_a();"
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_6013_2_a_d();".
// 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_6013_a();"
function MakeCharacter_6013_a()
    N := 6013;
    order := 1;
    char_gens := [5155, 3438];
    v := [1, 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_6013_a_Hecke(Kf)
    return MakeCharacter_6013_a();
end function;


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_6013_2_a_d();".
// 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_6013_2_a_d( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_6013_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,2,sign)));
    Vf := Kernel([<2,R![2948952, -133527780, -6626596512, 6413236614, 1383252032886, 6336514504006, -71238918563695, -508091783322759, 1423527053490215, 16900530537199761, -6719257138805082, -324987574849467098, -250732605165223443, 4118031434302056187, 6349772469395331824, -36751704230338149097, -80656072021631566045, 239053442965152953137, 692405439833938848237, -1143654821590620496161, -4406625044126335567609, 3915256178319915304122, 21769198600399831350299, -8334201640469750433552, -85848859977483898943619, 1301905501854609594469, 275423144568503917570434, 75483129139982339734284, -728533183862910993375743, -378491219040898926558831, 1603797148619351046948944, 1195182668394017744483232, -2955667658853193658811321, -2872606063955899685632740, 4569766849989412816021177, 5589745626834767187570927, -5909851120845159414729394, -9070946449370782330935315, 6318212146244937298440248, 12489691351991089947751123, -5411975112186602518794852, -14755170187592246750193595, 3388115075083190120112726, 15071025827218344242771154, -961915263859131588022590, -13378700265270865915281377, -1040268203904410975610515, 10356262243147495601207367, 2121061875139393633069670, -7001715248228397457911622, -2277326462569844128842766, 4133356759509480171597371, 1847103685709784100504554, -2124967484192276641591373, -1230833400148553271472652, 945498073211781919163371, 696669921948770961796308, -359587875416656612924928, -340483676409704468287540, 113910118121687163957175, 144955233783317653398534, -28239018404752061067066, -54007363460327053990813, 4388190843497243056309, 17642579276926404146360, 279235887774483530140, -5051216216833623145259, -521683468536984061906, 1264212727783909795110, 236241063060741224467, -275117467621891297307, -75026901828927228293, 51574736531071857077, 19043724549437835666, -8193717706865988537, -4027956946587417730, 1069244392456115969, 721483614644798349, -106560854395311147, -109995675660018571, 6208596354177150, 14251308497615120, 277882353009395, -1558073695658929, -136491187978498, 141813430079613, 21918025308818, -10497247515212, -2407597962724, 605026218194, 200185321529, -24565111824, -12845341279, 466172494, 627877140, 18580870, -22433400, -1950640, 535221, 79784, -6642, -1752, -9, 17, 1]>],Snew);
    return Vf;
end function;