
// Make newform 828.2.o.a in Magma, downloaded from the LMFDB on 16 May 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_828_o();"
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_828_2_o_a();".
// 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_828_o();"
function MakeCharacter_828_o()
    N := 828;
    order := 6;
    char_gens := [415, 461, 649];
    v := [3, 1, 6];
    // 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_828_o_Hecke(Kf)
    return MakeCharacter_828_o();
end function;


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_828_2_o_a();".
// 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_828_2_o_a( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_828_o();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,2,sign)));
    Vf := Kernel([<7,R![37838906282050441003279451160576, -1199865324465280762988172580749312, 11460303584681553004398266736967680, 38755923970609158636669767270793216, -1046487210045350143576108206830911488, -12734376253813453727009260568964759552, 467030781528209603264501613133836779520, -5763579965436844716098770746741841920000, 40903497233769455561011469797461363425280, -175886386324189656450678150864422155075584, 381806888487307306891914354816703132729344, 160339448835254674436829160609122095880192, -2404983352854561879198270609670834200313856, -5439807005214695513804827940023879767458304, 79330792537317008230394774654976830517270528, -281714780790211154729812139966949790341125760, 369289829134152523776106286821805547083671872, 499723219722016119405440005398182499145872768, -2422269214461866438980173204393103161513590720, 1577358695404561234017546953595001969383738528, 7244884447923146989645885695723841041486586320, -15475478553831385975913559131336068496319839952, -2852571124855012902381002638906956559021755744, 44228653527334373589082121428242096582280930680, -34385553108349552827870197492187529277193036060, -68894310195448748878128900659409917040925310472, 121470006956418439481365746687021911057196840594, 44406939691284139062231381770431578475414298724, -233307591278811972789603420111342886542070544475, 59924404560655468522992146553049501740590884464, 308292764963917571147105699143302685278411125258, -222260568423580674849209587264379709509479910904, -293360660512823683179675017412293111124958251492, 372135983067419632808083950779237497549808855628, 190454946302923901340596989222527894662519574672, -442376189667530546994740060338827604634526637824, -52772130174202311832233622909100062634611817774, 414263494219853315630581521570645435550422887328, -58195572718867729960762692849006258558454227318, -319420295935603297598135035202854150890570179556, 111504902414079116781515203842924030684570434310, 207568936448073344063649767309373577947811206444, -112870895627073573138838011871057690081765547232, -115149273113287401539409774339400830967690374492, 86443342123965401239081697171237338227812988363, 54838947612912289587153882053104356702837562140, -54757716941243480174708286208804305196124417226, -22382237506018045174112234886013405484513577060, 29821879058186338857477022950587160248320759294, 7730252948396045983127510888804991284328655692, -14268558076222229647309027338615024529737574908, -2178077305339433104436469799302591982053598380, 6081758436110385216085168817033115348446301471, 446032443554320961786340165787350629884900572, -2332118603414787377381034599666901848423119724, -30037266153175069907215808414934589437909300, 810461973129081425811455672947131888737655798, -27262707811389745469491758232051345012194204, -256707927337190880895625014933819361966085636, 17789410264209276923798526986863543189534464, 74440692305297504965265965674311058624922063, -7159467315171441993741965152466760225249876, -19832800750621840728768030353328715920364146, 2296261069542319729476062486748025541751012, 4868317184555260924962676088680563998694450, -629415475149791858694760483507258855682304, -1103455558854881777628630235717088443192206, 151923384267629202626232264760654978033620, 231345781357484896374465971694710081381151, -32807687209697231495313556824441141447780, -44923973973473454452438683587430039294188, 6399507353053132379876068489774552006392, 8088099181288957421735337519260363562094, -1134650627681442088833695686836514655676, -1351133710556381120199085478183593284726, 183658299853228052136579973964594523852, 209544817850543472885265135310196666498, -27223610505973752442769941829824207872, -30182315734994683110152210678731113800, 3703854150242707431827371931006206536, 4038623916271757232516039146719151967, -463286916968788333247241491213833440, -502078754732516092022883257477963952, 53337895542309456172777048183193448, 57991844163089154434858242820011831, -5656328764139068062797527331261976, -6222484325107752639785364974320986, 552728095137616625195831676455940, 620084118229775109243528091287858, -49771891226340633582260713130616, -57365776817226794707332877998364, 4128815282928728381617411857084, 4924092687569736989532894542097, -315326723328776796723505336896, -391874293870571451670743522990, 22149246374127755185483634748, 28886811132453512990028882430, -1428951900131052187336619712, -1969991899781725747584320916, 84516535170113394302071920, 124107589886727704802133518, -4572076479372795563467920, -7209649619164710853271300, 225554684873698898811936, 385348447352938466704776, -10110116166494030520552, -18899614012683622477398, 409853852568940762548, 847809536343252923934, -14940577521078359580, -34647085440809647878, 486189245983639392, 1283648039442852054, -13991978707180380, -42857136555888404, 351773332050000, 1279749786363060, -7599218967000, -33851715982764, 137816527368, 783346107452, -2026859376, -15593339592, 22853088, 260801214, -177732, -3538956, 732, 36816, 0, -264, 0, 1]>],Snew);
    return Vf;
end function;