
// Make newform 38.10.e.b in Magma, downloaded from the LMFDB on 24 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_38_e();"
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_38_10_e_b();".
// 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_38_e();"
function MakeCharacter_38_e()
    N := 38;
    order := 9;
    char_gens := [21];
    v := [8];
    // 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_38_e_Hecke(Kf)
    return MakeCharacter_38_e();
end function;


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_38_10_e_b();".
// 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_38_10_e_b( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_38_e();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,10,sign)));
    Vf := Kernel([<3,R![349656115392592711349770458786382034500447781482734209672995427921693505697948333349320948210869321, 21482782649916990565050908748007223134077698686969842315151343978345504683142622211055160679011228, -603205402144133948931821985053627129111894342069196559419501785174511277189394127414021071513898, -11522463033798578090471269427132580331484575949851249174279067106182836795675646208330486075423, 3880465558676128346106457000395330146663168720410606166934753441888014336490962555272938500112, 53753066179293256751929186410672501748772962363780477264748383585192161125356147180269681042, 396855981895309424536567403124287721144276714232243289473175237608347598996166633226279258, 76913429255174339234282285443033237081820174344793798954622556947287186170052179365554298, 784457790083356350114318721529713690144448274224110481998093279756994895789293603778462, 6554060438764618464234796462537932876961415396485018434571331813278505760808809060033, 1456956122447937924200609752612204035191231580567019070162198876386574283647094685197, 3637318692263980216775181775361208479414274176634804767402592188318271256030766640, 456173633944006450267545018993982070149391822416665230471382673158924359192812860, 398224334606358954856034521447293135406498949315587515536905789998761658990162, 22121157089623133969604596307561603279577176214518653063240594786025972522936, -42195376256182683904115355847599142089160383417990307445772357676760820279, -1570756135159087793214049368579631874001971262685058890335846749472884592, 9366245596877813542065928473254712912951590203552131701631755269997118, 128154347880945157972275795930274943844852946938015522561631827847149, -551925363393158348683793929550832156381342240737419865224065851157, 14110775549171479085646509935358742934185701814153644107540020816, -48293950402803998431324220192099095565636495357826039684356961, -318964605649946654776680443808928470289576292344037844137310, -256951934225617343068920007782172114694816040178854912675, 44213586382415566023917892149134216484124621166934028612, 49805398552619414908578092817189318529174772613482844, 874126578382517701570420607658467416692558172991316, -8279908181079482842304526829989261101797868519289, -36013447523768212119166352212954141208600467857, 186279844534313509374773461639907334496696755, 2777457696169628071620589476575425796123473, -1156317539147631303378813726360205247850, 28518598598667705974549640362669414031, 98330790129150764226008277745510859, -33013722917109542922803421989103, 1890165181250084495006162436636, 71396567547733894352403881036, 43979118207524359044982296, 179642251852446379032453, -350423740438538845825, -125660735185656036, 8355856603888425, 339161422461905, -184709850816, -764354085, 7223768, -3432, -33, 1]>],Snew);
    return Vf;
end function;