
// Make newform 8023.2.a.c in Magma, downloaded from the LMFDB on 25 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_8023_a();"
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_8023_2_a_c();".
// 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_8023_a();"
function MakeCharacter_8023_a()
    N := 8023;
    order := 1;
    char_gens := [6894, 3054];
    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_8023_a_Hecke(Kf)
    return MakeCharacter_8023_a();
end function;


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_8023_2_a_c();".
// 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_8023_2_a_c( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_8023_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,2,sign)));
    Vf := Kernel([<2,R![928013, -1213588848, 182255174914, -1292120800158, -522749228493324, -4647289364742140, 234358298000974274, 3286247465558489224, -27760824351288976604, -619579271777734226915, 112953770291644456389, 49424892950943468251633, 161998495866948038265677, -1908045072495313564391538, -11250564303336879632617111, 36424892311153705299194123, 377462461006636118131794334, -185989456784880045850633898, -7821762295141694133148509968, -7540229604459027727576185470, 110386494015569389815852812271, 225187121041458105857160481172, -1110604648383819797941284449310, -3469425509303357117840949478118, 8021008932649691065996038736841, 37142761074150471912445857145373, -39104954751271125651445309914663, -302574814678147388507684987825178, 85128505638941986743558555520499, 1960620630484328717100817435687271, 530280418840722426675502172718135, -10372252409680422673043332478815357, -7444231227286393213722503554478871, 45530092606863782862062560286625605, 51237989630170108305623205164699005, -167362863538177078343369053163743888, -258448288045293755903639652291207392, 516443790467686998637764547559488380, 1050082175948202196280244033469364833, -1328859718290308379053694840343327374, -3577925923374348062342297868218948416, 2782304689808532141007081315450525183, 10451819494231436747984712937917583400, -4399832723553069210915885526278421198, -26542604468647596459670723315601519519, 3742214965358882993942715780285081255, 59153787541000042997526507886318666112, 5472055277665922347334839907827293395, -116457414008872694309678898776934220698, -34774713121672778565358969323247792350, 203442351489669894763266093762494430705, 99935638966476275614655657751068509771, -316197525211281693060171071211123156003, -215797235041676857612751325324867364961, 437577798286210086648819461330971456318, 387415854262106110976396888784670125691, -538336693239474347728966498268347927817, -601413727435648368952184044018715395657, 585823227035017648945853136031996888839, 823524405934865566426659676948217521488, -557611838891364540324604197859202773641, -1006388314866242621596084802452460444278, 453091088305370744944969176519331493466, 1105861009961026589450214333236551109675, -295885188050360228524404186323153619228, -1098179890395750384575928421693659952882, 124963150905858004185885624076524507630, 988934434838213489379669733985628599937, 20893796005046443536861784767680826129, -809342664063515367682425534936669435064, -116913319607592768437518292896958217713, 602641144430220921505884308770093475674, 157968056626258752995970040067623454285, -408298973332897922906972892519422521534, -155066585591825266873122363960423024021, 251414359756215887416271610383431225444, 126664632425345946884688012528594323162, -140307180364830460514474929375823941744, -90179880048756014492466133410987221035, 70590052140591247853058076643426750894, 57175634199192078792838923082508619971, -31708970961140352568945798651631385057, -32659411713110530769034109312143045037, 12485111368655096088441204148767515058, 16922547872061506593947104855718338581, -4140970675186463914615052593543447564, -7986670810772759554059449543659958085, 1034987654802834449555761803607243892, 3441319513599932103369116487317677856, -100118791825422882254688771685895296, -1355152892923335335622506882934988668, -84534291402960478941015013698695773, 487642923521925768164905305395813317, 72833812494366654176279309437844448, -160139207830771668770689243708045119, -37817563727084800166483352539361902, 47861022284615985645057959612952009, 15684416354776469967195543924501897, -12956250790184871341463849146684211, -5582205842634001355456734703446723, 3151308133910657501251825818067241, 1754689182469615756488888615373687, -679021358523283195786550150512189, -493940967420649981381728636865569, 126118348038851714444262520824551, 125407733016645712536588534706865, -18938659736528053335219221368834, -28816074041093747085080115132408, 1833402083961900621908602808880, 5998444454426898999631164924247, 80802793767554588745220442379, -1130122133487861000894301863011, -96232697563672776077561216737, 192153892119652071486510199788, 29934446825802254956509918873, -29331835311556261619976883199, -6755005373153736468766628872, 3984781202652117613427681359, 1258468610616640725964382941, -474653168542050069713775543, -201871830170747894455682924, 48208608309569769509886976, 28363964030543183950646194, -3919077090141285319803522, -3514217411852182456417913, 205850369818281465930760, 384289232289836371881994, 3506245944969772043051, -36964400543105830828412, -2626957842617163788797, 3103301265526982694366, 411735728965110329731, -224265425420595024677, -45032161586911912832, 13609753843906726325, 3918607975834935933, -659569291712123452, -281426949025071470, 22242934848301275, 16818468430805768, -191330787899441, -830797652097102, -38201606303112, 33245138925403, 3365205740059, -1034490512422, -170806882729, 22852190801, 6085117386, -260439019, -154620576, -2846172, 2647451, 183204, -25618, -3329, 51, 24, 1]>],Snew);
    return Vf;
end function;