
// Make newform 6017.2.a.f in Magma, downloaded from the LMFDB on 25 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_6017_a();"
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_6017_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_6017_a();"
function MakeCharacter_6017_a()
    N := 6017;
    order := 1;
    char_gens := [3830, 2190];
    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_6017_a_Hecke(Kf)
    return MakeCharacter_6017_a();
end function;


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_6017_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_6017_2_a_f( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_6017_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,2,sign)));
    Vf := Kernel([<2,R![1821051786576, 23956595246716, -258069896129484, -3972632585795867, 13911376545848415, 272901677821121811, -353203369393579966, -10700820239122244177, 2977285447359250791, 274736068020122570544, 76961680898340329367, -4995838704452467114858, -3079799526890062719792, 67754551616016828474370, 56171947041724142232984, -711083275496145660962566, -686810051592611063323055, 5937427962590979795602214, 6252337376918855826847788, -40306131895184622580519630, -44577842786507844361557588, 226348853023120832317725436, 256770416347295661465495981, -1066591418034110244180966896, -1220995356133757509443031160, 4267562554641071398659786993, 4871838211780377821688575323, -14644536340694674842549370073, -16522101437442061252067753410, 43471631579040759132320364035, 48127493577290898748260419657, -112456125987865254955708234493, -121476796071039811711617715812, 255154831058337592653553424588, 267679046113732582321987328916, -510646286563987065827014107025, -518272085045425698178004221182, 905931676293819053829957593167, 886671402129211625304758783233, -1431025223159299436372780116086, -1347000666056478552734691618951, 2020609529353254875376229981046, 1824980861168341600383546893492, -2559316190909241741892651930393, -2213612511541052829785834922548, 2916981156216537006952801158914, 2411988966209155791234999296147, -3000056187378035139306594747737, -2368043312463704933146862087595, 2791256813715070069055923266969, 2100415360923119951268705783834, -2354591833637152589718186563095, -1687125889685263810170612812027, 1804427132040194542845280020181, 1229755626159437118930485196764, -1258440496720658654199474568383, -814906435565245465524521177221, 799949951323647075871855348117, 491696274610260211461734348245, -464095330763923694523559615487, -270501205371033869207969431469, 246012579901554045293793270198, 135835256727194466989775620965, -119267304177079923112226567306, -62319403047787264937775875667, 52920781533480386873804994271, 26140200421769281886266247954, -21503942177487968504204947230, -10029722793903591011932605366, 8005022697974062923770437073, 3521236112274808054557750962, -2730510536638162741618786986, -1131281320551953513421781513, 853419713367871688541174294, 332557976512634751027915962, -244361778514440791642616494, -89421678410886713168662604, 64073618888428751117365683, 21981364095142455134348318, -15375449807976952594686032, -4935758714246163489681216, 3373669759771038152729999, 1011291156509013872213583, -676104825445718412303283, -188812204759606649747793, 123579950369439132189098, 32068783023904884787728, -20566039389607972139928, -4944705041106032603013, 3109637447080978961554, 690441865493782821685, -426119056101336681416, -87046677148381568291, 52760323534193039075, 9873528238195456497, -5881401146558466642, -1003322399657596270, 587746077902503412, 90873583938730296, -52384416500653569, -7290897064359157, 4138306923888323, 514275633925179, -287584449703043, -31596158722312, 17416904751484, 1671110104145, -908527782928, -74948216441, 40207807798, 2794020463, -1479806397, -84226056, 44060514, 1972170, -1019456, -33647, 17194, 372, -188, -2, 1]>,<3,R![-1299498758600224, 639999159358043772, 267123040486556233, -399019482524903838969, 2210196602765092584617, 47262761493299450407993, -242818524860643902426880, -2637633620284245729912944, 10548151581235005619049671, 85055523869728802430699498, -246877341836455282871168945, -1754590256305421790315981844, 3618765305263925884015323894, 24893691967106004570082153689, -36321664439287016698084210523, -256778566838694507895211981191, 264179426246235679311457801161, 2009502697374053149562147721979, -1444569006616448913793489594579, -12330001559741971759070291134666, 6075471877790153323390802927918, 60865087730845900439119478399886, -19858208684651043628853774456297, -246728061867623643656021276446388, 50183684035656871493369299650557, 835108187825667872441780374036410, -94590779262910168081585074896098, -2392728448972710791605591306134996, 115663887256686830964184797099270, 5869956647946810958364341929392890, -18950598114299359669193514966995, -12449389551259193351615966777998372, -324095336357165424561734640979703, 23013283710484598682472903644818264, 977194758946065111389823115680962, -37337634019963748827007376723726946, -1808189041020012754958918572032028, 53484877518757596221813729404381677, 2451924816994692476569776417824122, -67988085169348643375387811272100468, -2467078822532961351949475479375902, 77024581735988955003456443511974503, 1623711937166604931485655702792624, -78057780343999363909323273377908911, -104204520626446228693531395593600, 70981139598032457983933360733527687, -1563049943658869446757469012787021, -58068810836843595796421334806773988, 2800241603961629398140849853846872, 42830921043542611913765065284809791, -3283539622201327323558136840053975, -28533517133236855802534310155871943, 3049665019384860193691831353663723, 17192850610749053592449435674962780, -2382211750940242277637246343297917, -9379913813792582555292539560311225, 1608883945326737507350458556747594, 4636916577677641230963384089956995, -954056100298664273316358136932960, -2077863971292657177978357131875679, 501540535850978515691418153191091, 844092132911427029752153040895704, -235246271370871562712727605958244, -310748409184744954890226247724321, 98897192177765937269211849830210, 103595811989118110413530013774265, -37384166745409204371748370062182, -31233396935259104662524879506329, 12735841818806611029525406489590, 8498811889587820860165619262900, -3916391783971773110856893991809, -2080870531164996952752257687812, 1088153184982722838184321947140, 456376020075186892463401430301, -273302619746550347786683415117, -89043229978586575632839195042, 62050679591641193247842530482, 15284782667009748970462079535, -12729091083429996005614860573, -2263627544574658110774724029, 2357166377420731028783902520, 277905363341235939673548923, -393457574158544602544202343, -25420200785414762287313905, 59080460601390925198860186, 966910137244162803962595, -7958977335601034202334243, 224638557110903230291002, 958525374430296931008393, -67573166663189421239350, -102725139297240917367528, 11491429955488743749839, 9736976836671535971796, -1499919833471068716820, -809558443242471667763, 161448149136983606710, 58351590684347153014, -14699217942986221076, -3581773753039320738, 1142108547956729417, 181650753542719018, -75780212512139832, -7152151576314303, 4272908610077734, 181298951125434, -202739179416260, 259632529499, 7969308234039, -318510794866, -253414638555, 19402279643, 6277323902, -721690198, -113294975, 18521561, 1280446, -324004, -4348, 3517, -91, -18, 1]>],Snew);
    return Vf;
end function;