
# q-expansion of newform 1386.4.a.o, downloaded from the LMFDB on 22 September 2026.

# We generate the q-expansion using the Hecke eigenvalues a_p at the primes.
# Each a_p is given as a linear combination
# of the following basis for the coefficient ring.

def make_data():

    from sage.all import prod, floor, prime_powers, gcd, QQ, primes_first_n, next_prime, RR

    def discrete_log(elts, gens, mod):
        # algorithm 2.2, page 16 of https://arxiv.org/abs/0903.2785
        def table_gens(gens, mod):
            T = [1]
            n = len(gens)
            r = [None]*n
            s = [None]*n
            for i in range(n):
                beta = gens[i]
                r[i] = 1
                N = len(T)
                while beta not in T:
                    for Tj in T[:N]:
                        T.append((beta*Tj) % mod)
                    beta = (beta*gens[i]) % mod
                    r[i] += 1
                s[i] = T.index(beta)
            return T, r, s
        T, r, s = table_gens(gens, mod)
        n = len(gens)
        N = [ prod(r[:j]) for j in range(n) ]
        Z = lambda s: [ (floor(s/N[j]) % r[j]) for j in range(n)]
        return [Z(T.index(elt % mod)) for elt in elts]
    def extend_multiplicatively(an):
        for pp in prime_powers(len(an)-1):
            for k in range(1, (len(an) - 1)//pp + 1):
                if gcd(k, pp) == 1:
                    an[pp*k] = an[pp]*an[k]
    from sage.all import PolynomialRing, NumberField
    R = PolynomialRing(QQ, "x")
    f = R(poly_data)
    K = NumberField(f, "a")
    betas = [K.gens()[0]**i for i in range(len(poly_data))]
    convert_elt_to_field = lambda elt: sum(c*beta for c, beta in zip(elt, betas))
    # convert aps to K elements
    primes = primes_first_n(len(aps_data))
    good_primes = [p for p in primes if not p.divides(level)]
    aps = map(convert_elt_to_field, aps_data)
    if not hecke_ring_character_values:
        # trivial character
        char_values = dict(zip(good_primes, [1]*len(good_primes)))
    else:
        gens = [elt[0] for elt in hecke_ring_character_values]
        gens_values = [convert_elt_to_field(elt[1]) for elt in hecke_ring_character_values]
        char_values = dict([(
            p,prod(g**k for g, k in zip(gens_values, elt)))
            for p, elt in zip(good_primes, discrete_log(good_primes, gens, level))
            ])
    an_list_bound = next_prime(primes[-1])
    an = [0]*an_list_bound
    an[1] = 1
    
    from sage.all import PowerSeriesRing
    PS = PowerSeriesRing(K, "q")
    for p, ap in zip(primes, aps):
        if p.divides(level):
            euler_factor = [1, -ap]
        else:
            euler_factor = [1, -ap, p**(weight - 1) * char_values[p]]
        k = RR(an_list_bound).log(p).floor() + 1
        foo = (1/PS(euler_factor)).padded_list(k)
        for i in range(1, k):
            an[p**i] = foo[i]
    extend_multiplicatively(an)
    return PS(an)
level = 1386
weight = 4
poly_data = [-48, -1, 1]

# The basis for the coefficient ring is just the power basis
# in the root of the defining polynomial above.
hecke_ring_character_values = None
aps_data = [[-2, 0], [0, 0], [-9, -1], [7, 0], [11, 0], [29, -9], [42, 12], [137, -3], [-84, -14], [39, -29], [20, -12], [-235, 17], [54, -60], [158, 28], [-171, 53], [-510, 8], [-363, -69], [458, 2], [17, -25], [-270, -24], [527, -41], [194, -38], [-270, 186], [1110, 30], [-262, -172], [84, 26], [-196, 36], [1263, 45], [80, 176], [-612, 120], [-496, -4], [30, -354], [-882, 178], [-76, 250], [351, 287], [194, 106], [866, -204], [1169, -241], [2232, -144], [-1998, -160], [594, 346], [2600, -34], [144, -346], [1598, 304], [198, 96], [-4018, -86], [2552, -218], [-1552, -464], [-1578, -114], [1304, 470], [2286, 344], [2781, 183], [1457, 137], [507, 145], [4611, -207], [1923, -483], [-210, 276], [3893, -545], [5852, 312], [7047, 63], [821, -111], [3336, -358], [-3064, 142], [3096, 658], [-226, -232], [7164, -202], [-3628, 644], [-424, 614], [6516, 328], [-415, -97], [-7287, -181], [6144, -344], [-5470, -354], [56, 108], [815, 1657], [9612, -34], [2310, -216], [626, -2156], [-1278, -658], [5294, 1044], [-2061, 609], [2411, -1069], [327, -463], [-9334, 20], [-3187, -277], [-1500, 708], [7716, -344], [1316, -522], [-2376, 1698], [377, 767], [12921, 883], [3732, -576], [-940, 916], [-8421, -1319], [-16105, 613], [-3408, 1360], [-7818, 684], [627, -2439], [2723, -893], [-8434, 1826], [3452, -2054], [-7137, 2755], [-3540, -1368], [-1782, -400], [-4624, 2958], [-14548, 10], [-7353, 2745], [-8484, 942], [9174, -2488], [-7921, -1501], [-10699, -465], [12098, 2094], [-20538, 918], [2762, -370], [-8116, -132], [-5172, 368], [18554, 406], [-2445, 2975], [-20364, 1842], [19887, 269], [-7186, -176], [5120, -3034], [-8016, -1170], [-11898, -2618], [-10054, 2078], [10074, -1328], [7427, 3087], [30675, 3], [11348, -1060], [-1126, 3818], [-1192, -3734], [28911, 433], [-5419, 59], [-12907, 3305], [7782, 2752], [12017, -555], [-11061, 175], [-15529, -2225], [-10251, -3159], [-22929, -853], [12419, -1465], [22137, -803], [-2707, -693], [21627, -2535], [-24652, 2222], [19137, -2459], [26402, 2866], [-576, -5114], [13070, 462], [-12804, 4878], [-10684, 5480], [-273, 977], [7559, 449], [38610, 1514], [29276, -3688], [22356, 702], [-30418, 846], [-13515, 3279], [9938, 3888], [29766, 1712], [-31962, -3158], [-21441, -1501], [-33448, 388], [51303, -711], [2940, 1572], [32124, -3658], [11801, 4815], [-42262, -354], [-62506, 140], [29055, 903], [6939, -2759], [-19900, -2638], [5172, 772], [22076, -2374], [-4312, 4592], [2214, 4050], [57344, -290], [-174, -660], [15695, -3631], [-3769, -2871], [-2011, 2323], [-19404, -864], [10550, 4992], [-21168, -3442], [-34500, -2826], [48315, -2653], [47636, -2968], [-9364, 6028], [-28666, -5668], [-47478, -1638], [-26794, -412], [7569, -5661], [29189, -345], [29121, -4595], [-24693, -1327], [-8967, 3339], [23738, 5152], [-25498, 836], [8856, -4722], [-24054, 6102], [5334, 6912], [-6541, 3165], [572, -3950], [42551, -5137], [-8100, 1200], [-56598, -1312], [35834, -698], [45825, 1243], [-22842, 4284], [-34366, 5338], [50996, -4590], [9285, 10121], [32267, -3723], [44436, 4416], [-13176, 11956], [2240, 7826], [-1954, -4750], [54660, 5198], [62496, -502], [54018, 4788], [-21634, 8694], [-2113, -5907], [-30390, 4350], [31763, 261], [28182, -4586], [60104, 1884], [-61683, -5205], [-13764, 2910], [2951, 2249], [-16539, 2631], [-26566, 708], [2675, 4551], [54794, -5394], [36555, 7599], [51146, -6130], [-79812, 3964], [-14128, 5886], [6411, -8049], [66906, 5346], [-13719, 1157], [-28560, -11580], [3176, 1718], [-99466, 1866], [-30058, 804], [-72900, -4914], [45390, 2334], [57248, -1720], [-12039, -4057], [15050, 11508], [-10521, 3705], [-27790, 4386], [23178, -12336], [-5178, 9720], [60950, -7968], [-30696, 7718], [33264, -9484], [-16711, -4923], [-1657, 1883], [-14859, 3549], [9707, 5083], [-10930, -7586], [45096, 9716], [-71110, 2762], [-12457, 4433], [-2307, -2973], [61502, 1966], [-95922, 2016], [-12021, 1309], [-61438, -8120], [-60654, -4848], [72704, -6738], [18845, 647], [-93550, -2576], [-36934, 4254], [-17317, -11533], [-70714, 8522], [9222, -5174], [-24532, -5124], [4238, 11156], [-65388, 5680], [5154, -8238], [24224, 1648], [36156, 11464], [-117997, -1203], [-3007, 9713], [111546, 2348], [-34009, 1167], [39342, -5420], [-92368, 1064], [-9276, 8998], [-30072, -8754], [-9540, 1708], [86019, 2587], [94920, -5044], [28802, -8646], [-75210, 3920], [-67474, -7558], [-50574, 5360], [-6726, 1714], [-34663, 3961], [-4111, -3915], [-5679, -7807], [-50824, -8248], [86268, -12632], [-70987, -1853], [-44485, 999], [-43164, 11188], [-8812, 5342], [5700, -5514], [42290, 7634], [-60372, 3524], [-44772, 17534], [-123657, -2601], [34100, -14152], [-48192, -5936], [-117190, 2444], [37320, -4948], [-103896, 2140], [-46348, -4278], [-99150, 11848], [-9535, -12131], [-68005, -3253], [-432, -402], [20216, -13632], [71529, -19779], [-79270, 12984], [-4660, 8436], [142280, -4240], [71397, 1847], [-35565, -5921], [55136, -6228], [21318, -17976], [-12763, -8149], [78948, 3088], [38762, -5104], [-162027, -369], [-33949, -17857], [43224, -3806], [-111412, 10058], [31364, 11624], [1010, 19680], [16674, -23902], [-151596, -2706], [132659, 8213], [-21744, -3838], [138951, -13155], [-868, 11410], [-116152, -3672], [77622, 3134], [-74166, 3120], [-122608, 7898], [-63067, 14881], [25758, 24300], [13793, 19219], [159554, 1662], [-15630, -5780], [-67911, 7893], [84630, 2054], [108951, -17333], [-40794, 14632], [-11350, 16022], [-23790, -6728], [-86646, 15276], [-59145, -19155], [27758, -8826], [177239, 2307], [-29748, -4750], [74810, -10110], [42008, 7654], [-141012, 4012], [-66718, 4874], [-94323, 12223], [-66243, 19241], [22232, -23112], [51863, -27161], [73479, 1961], [-211419, -5361], [121751, -5245], [-103650, -2952], [84458, 3864], [17673, 8949], [17610, 3122], [135248, -1820], [-19461, 27783], [-34636, 9850], [115761, -3319], [17081, 30359], [-34750, -184], [130136, -7430], [-7005, -29497], [50525, -20911], [105366, -19464], [34812, 15544], [-25354, -8614], [92658, -16080], [193340, -1458], [169577, 7079], [-188211, 5435], [-21112, 4440], [237495, -6133], [110585, 13275], [-204732, 4508], [-34480, 2048], [136938, 8934], [-66018, 22116], [-19777, 19081], [-19489, -22457], [8658, 19068], [90974, 2286], [95916, -8436], [-42190, -19032], [-93162, -2408], [-19824, -16112], [-24064, 4830], [-144022, 7924], [-192765, 1255], [34671, 25245], [-31966, -19890], [-155910, 8030], [42660, -17788], [46950, 10368], [55685, -18225], [-72576, -3822], [63048, 18076], [-78586, -6288], [-78981, 4991], [16794, -23338], [-199653, 7243], [215930, 2322], [118512, -11108]]
