
// Make newform 1161.4.a.b in Magma, downloaded from the LMFDB on 02 May 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_1161_a();"
// To make the coeffs of the qexp of the newform in the Hecke field type "qexpCoeffs();"
// To make the newform (type ModFrm), type "MakeNewformModFrm_1161_4_a_b();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose lines below.
// The precision argument determines an initial guess on how many Fourier coefficients to use.
// This guess is increased enough to uniquely determine the newform.
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_1161_4_a_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 ConvertToHeckeField(input: pass_field := false, Kf := [])
    if not pass_field then
        poly := [-4513968, 0, 18361080, 0, -25868668, 0, 15660730, 0, -4705529, 0, 758449, 0, -68750, 0, 3500, 0, -93, 0, 1];
        Kf := NumberField(Polynomial([elt : elt in poly]));
        AssignNames(~Kf, ["nu"]);
    end if;
    Rf_num := [[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [-10, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, -32241017136600, 0, 32544207126892, 0, 9904415105342, 0, -7505452394047, 0, 1282788017669, 0, -89733464197, 0, 2435722531, 0, -2354262, 0, -619900], [109404399184848, 0, -238355279875928, 0, 143171821341020, 0, -34466687609650, 0, 3197099673809, 0, -28670161858, 0, -12529431608, 0, 688025844, 0, -10835053, 0], [-147909664091376, 0, 363897282000040, 0, -240002439786532, 0, 70446628857278, 0, -10782754193455, 0, 919692434726, 0, -43942071200, 0, 1097581308, 0, -11140453, 0], [-15060596118480, 0, 42773823534424, 0, -35037165796996, 0, 11779948371650, 0, -1880547320671, 0, 157928315675, 0, -7173468755, 0, 166707999, 0, -1553710, 0], [58366350326448, 0, -103831892698824, 0, 40958626180660, 0, -3941193188454, 0, -606245233981, 0, 154243520938, 0, -12251000568, 0, 425032444, 0, -5464679, 0], [56547201581424, 0, -143301380052328, 0, 109767767142364, 0, -37533866935970, 0, 6551352276823, 0, -626828900438, 0, 33179631692, 0, -907556112, 0, 9975265, 0], [346159643354064, 0, -846125852242616, 0, 617734383768140, 0, -200666157078106, 0, 33412787278469, 0, -3074141232994, 0, 157801324048, 0, -4216852452, 0, 45545639, 0], [-157668923229840, 0, 404611889059064, 0, -294373797732492, 0, 93639918635626, 0, -15327743161021, 0, 1390089023154, 0, -70391010736, 0, 1856636804, 0, -19811343, 0], [0, -89198971908048, 0, 275326489877336, 0, -187450791447980, 0, 58573018818802, 0, -9845403594797, 0, 934183440034, 0, -49679082664, 0, 1371407676, 0, -15224375], [0, -2592235855275120, 0, 5819143082346088, 0, -4615303885551796, 0, 1616817682810766, 0, -284855197784863, 0, 27309476543414, 0, -1443946532720, 0, 39408176316, 0, -432093685], [0, 2298692263452912, 0, -5802835105022632, 0, 4615303885551796, 0, -1616817682810766, 0, 284855197784863, 0, -27309476543414, 0, 1443946532720, 0, -39408176316, 0, 432093685], [0, -2072049304726224, 0, 5906093084092808, 0, -4694666761804988, 0, 1600443805742182, 0, -269935325902577, 0, 24584425222786, 0, -1232460494656, 0, 31965602856, 0, -334620155], [0, 4213537447701744, 0, -10909035963965896, 0, 8275167239840356, 0, -2778856660846118, 0, 477910112373355, 0, -45252421874582, 0, 2378706351368, 0, -64767472932, 0, 709743649], [0, -18396364095648720, 0, 48860552980313080, 0, -36723621737301196, 0, 12171885137192810, 0, -2064247469962429, 0, 192806509873874, 0, -10008500564912, 0, 269545535076, 0, -2926647823], [0, -8098993154851056, 0, 19515332171856776, 0, -13996354032269972, 0, 4502086559745142, 0, -746396688840731, 0, 68397323352670, 0, -3491875868752, 0, 92699773260, 0, -994291001]];
    Rf_basisdens := [1, 1, 1, 1019248582716, 603999160128, 603999160128, 75499895016, 201333053376, 150999790032, 603999160128, 201333053376, 1164855523104, 16307977323456, 16307977323456, 8153988661728, 5435992441152, 16307977323456, 5435992441152];
    Rf_basisnums := ChangeUniverse([[z : z in elt] : elt in Rf_num], Kf);
    Rfbasis := [Rf_basisnums[i]/Rf_basisdens[i] : i in [1..Degree(Kf)]];
    inp_vec := Vector(Rfbasis)*ChangeRing(Transpose(Matrix([[elt : elt in row] : row in input])),Kf);
    return Eltseq(inp_vec);
end function;


// To make the character of type GrpDrchElt, type "MakeCharacter_1161_a();"
function MakeCharacter_1161_a()
    N := 1161;
    order := 1;
    char_gens := [947, 433];
    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_1161_a_Hecke(Kf)
    return MakeCharacter_1161_a();
end function;


function ExtendMultiplicatively(weight, aps, character)
    prec := NextPrime(NthPrime(#aps)) - 1; // we will able to figure out a_0 ... a_prec
    primes := PrimesUpTo(prec);
    prime_powers := primes;
    assert #primes eq #aps;
    log_prec := Floor(Log(prec)/Log(2)); // prec < 2^(log_prec+1)
    F := Universe(aps);
    FXY<X, Y> := PolynomialRing(F, 2);
    // 1/(1 - a_p T + p^(weight - 1) * char(p) T^2) = 1 + a_p T + a_{p^2} T^2 + ...
    R<T> := PowerSeriesRing(FXY : Precision := log_prec + 1);
    recursion := Coefficients(1/(1 - X*T + Y*T^2));
    coeffs := [F!0: i in [1..(prec+1)]];
    coeffs[1] := 1; //a_1
    for i := 1 to #primes do
        p := primes[i];
        coeffs[p] := aps[i];
        b := p^(weight - 1) * F!character(p);
        r := 2;
        p_power := p * p;
        //deals with powers of p
        while p_power le prec do
            Append(~prime_powers, p_power);
            coeffs[p_power] := Evaluate(recursion[r + 1], [aps[i], b]);
            p_power *:= p;
            r +:= 1;
        end while;    
    end for;
    Sort(~prime_powers);
    for pp in prime_powers do
        for k := 1 to Floor(prec/pp) do
            if GCD(k, pp) eq 1 then
                coeffs[pp*k] := coeffs[pp]*coeffs[k];
            end if;
        end for;
    end for;
    return coeffs;
end function;


function qexpCoeffs()
    // To make the coeffs of the qexp of the newform in the Hecke field type "qexpCoeffs();"
    weight := 4;
    raw_aps := [[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0], [-3, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, -2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, -1, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, -1, 0, -2, 0, 0, 0, 0, 0, 0, 0, 1, -1, 2, 1, -1, 0, 0], [-11, 0, -2, 0, 1, 1, -1, 0, -2, -1, 1, 0, 0, 0, 0, 0, 0, 0], [0, -2, 0, -1, 0, 0, 0, 0, 0, 0, 0, 2, -1, 2, -1, 0, -1, 0], [0, -19, 0, 1, 0, 0, 0, 0, 0, 0, 0, -2, -3, 0, 1, 1, 0, -2], [-28, 0, -5, 0, 3, 3, 2, 2, -1, 2, 1, 0, 0, 0, 0, 0, 0, 0], [-5, 0, -8, 0, 0, -4, 3, -2, -7, 2, 0, 0, 0, 0, 0, 0, 0, 0], [0, -12, 0, 0, 0, 0, 0, 0, 0, 0, 0, -5, 0, 9, -4, 6, 8, 2], [-43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, -31, 0, 4, 0, 0, 0, 0, 0, 0, 0, -6, 0, 2, 0, 2, -4, 5], [0, -23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 1, 1, 7, 2, -6], [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 7, 8, 24, 0, -7, -7, -2], [-97, 0, 6, 0, 5, -3, 8, -9, 2, -1, -1, 0, 0, 0, 0, 0, 0, 0], [-155, 0, -13, 0, 5, -1, -9, 4, 4, 2, 1, 0, 0, 0, 0, 0, 0, 0], [0, -33, 0, -1, 0, 0, 0, 0, 0, 0, 0, -3, 13, 1, -7, 8, 0, 5], [-11, 0, 8, 0, 8, -8, -3, -8, -15, 10, -2, 0, 0, 0, 0, 0, 0, 0], [-191, 0, 31, 0, 13, -1, -11, -6, 0, -2, 3, 0, 0, 0, 0, 0, 0, 0], [0, -59, 0, -4, 0, 0, 0, 0, 0, 0, 0, -2, -4, 3, 2, -13, 8, -4], [0, -57, 0, -5, 0, 0, 0, 0, 0, 0, 0, 6, 17, 14, -3, -17, -9, 0], [-180, 0, 69, 0, -2, 3, -15, 11, -1, 3, 1, 0, 0, 0, 0, 0, 0, 0], [0, -26, 0, -7, 0, 0, 0, 0, 0, 0, 0, 5, -6, -22, 14, 1, 8, -9], [-273, 0, 3, 0, 8, 14, 26, -11, 3, 3, 12, 0, 0, 0, 0, 0, 0, 0], [0, -69, 0, 11, 0, 0, 0, 0, 0, 0, 0, 13, 15, -20, 1, 3, -12, 14], [-37, 0, 39, 0, -37, -8, 7, 22, -17, -12, -10, 0, 0, 0, 0, 0, 0, 0], [0, 7, 0, -14, 0, 0, 0, 0, 0, 0, 0, -9, -27, 4, 23, 2, 0, -3], [-232, 0, 56, 0, 8, 12, 22, -8, 6, 4, 22, 0, 0, 0, 0, 0, 0, 0], [0, 155, 0, -2, 0, 0, 0, 0, 0, 0, 0, 14, -2, 22, 6, 1, -14, 12], [0, -7, 0, -2, 0, 0, 0, 0, 0, 0, 0, -9, -2, 46, -12, -40, 8, 15], [-408, 0, -5, 0, 0, 1, -19, 2, -25, -9, 1, 0, 0, 0, 0, 0, 0, 0], [0, 158, 0, -40, 0, 0, 0, 0, 0, 0, 0, -18, -37, 7, -39, 9, 17, 29], [-677, 0, 64, 0, -16, -26, 1, 16, -29, -44, -26, 0, 0, 0, 0, 0, 0, 0], [-251, 0, 26, 0, -19, 26, -28, 48, -65, -15, -18, 0, 0, 0, 0, 0, 0, 0], [-368, 0, 32, 0, -4, -21, -7, 2, 13, -2, 13, 0, 0, 0, 0, 0, 0, 0], [0, 337, 0, 2, 0, 0, 0, 0, 0, 0, 0, 42, -8, -1, -8, 18, -6, -19], [0, 165, 0, 22, 0, 0, 0, 0, 0, 0, 0, -47, 29, 36, 9, 31, -14, 14], [0, -77, 0, 27, 0, 0, 0, 0, 0, 0, 0, -50, 26, 73, -26, -2, 34, 21], [-226, 0, 1, 0, 28, -15, 28, -17, 7, 49, -1, 0, 0, 0, 0, 0, 0, 0], [0, 173, 0, 7, 0, 0, 0, 0, 0, 0, 0, -2, -9, 94, 37, -18, 26, -31], [-677, 0, 18, 0, 15, 95, 53, 17, -3, -29, 13, 0, 0, 0, 0, 0, 0, 0], [0, -3, 0, -2, 0, 0, 0, 0, 0, 0, 0, 12, 22, 28, -8, -17, -46, 20], [-492, 0, -76, 0, -40, -69, -32, -57, 43, -36, -23, 0, 0, 0, 0, 0, 0, 0], [-372, 0, -10, 0, 57, -22, -29, -23, -10, 51, -46, 0, 0, 0, 0, 0, 0, 0], [-1450, 0, 85, 0, -56, 24, -20, 29, 118, -1, 4, 0, 0, 0, 0, 0, 0, 0], [0, 275, 0, 52, 0, 0, 0, 0, 0, 0, 0, -19, 31, 170, -17, -5, -32, -8], [-459, 0, -46, 0, -87, -8, -45, 46, -2, -39, -32, 0, 0, 0, 0, 0, 0, 0], [0, -111, 0, -33, 0, 0, 0, 0, 0, 0, 0, -45, -30, -45, -44, -6, -2, -5], [0, 530, 0, 62, 0, 0, 0, 0, 0, 0, 0, -23, -5, -82, 21, -29, -46, 13], [-1378, 0, 28, 0, 61, 76, 55, -58, 60, 49, -14, 0, 0, 0, 0, 0, 0, 0], [0, 105, 0, 15, 0, 0, 0, 0, 0, 0, 0, -6, 8, 38, -32, 15, 54, -14], [0, 498, 0, 58, 0, 0, 0, 0, 0, 0, 0, -84, -1, -35, 19, -25, 14, -71], [0, -63, 0, 50, 0, 0, 0, 0, 0, 0, 0, -72, -99, -3, -109, 101, 32, -36], [0, -39, 0, -55, 0, 0, 0, 0, 0, 0, 0, -2, -76, -249, -24, 52, 58, -19], [-787, 0, -102, 0, 10, -48, -65, 54, 159, 2, 10, 0, 0, 0, 0, 0, 0, 0], [-1605, 0, -33, 0, -69, 38, 45, 93, 89, 30, 16, 0, 0, 0, 0, 0, 0, 0], [0, 654, 0, -81, 0, 0, 0, 0, 0, 0, 0, 114, -25, -82, 7, -65, 8, -17], [-271, 0, 81, 0, -127, -104, -65, 87, -1, -122, -84, 0, 0, 0, 0, 0, 0, 0], [0, 590, 0, 49, 0, 0, 0, 0, 0, 0, 0, -55, -23, -339, -57, -9, 20, 31], [249, 0, -154, 0, 2, 89, 79, 5, -38, -28, -3, 0, 0, 0, 0, 0, 0, 0], [0, 708, 0, 15, 0, 0, 0, 0, 0, 0, 0, 65, -42, -160, 46, -44, -24, -46], [-2023, 0, 40, 0, 95, -55, -42, -89, -24, -93, 13, 0, 0, 0, 0, 0, 0, 0], [0, -30, 0, -58, 0, 0, 0, 0, 0, 0, 0, 113, -210, -199, 28, 46, 2, 12], [-1618, 0, 40, 0, -5, 22, -66, -64, 60, 17, -50, 0, 0, 0, 0, 0, 0, 0], [582, 0, 58, 0, -65, -134, -62, 94, -274, -137, -22, 0, 0, 0, 0, 0, 0, 0], [0, 993, 0, 17, 0, 0, 0, 0, 0, 0, 0, 75, 142, -80, 44, -94, -88, 31], [-1405, 0, -171, 0, -143, -119, 55, 74, -26, 32, -61, 0, 0, 0, 0, 0, 0, 0], [0, 408, 0, 25, 0, 0, 0, 0, 0, 0, 0, 21, 45, 59, 23, -35, -52, 63], [0, 507, 0, 10, 0, 0, 0, 0, 0, 0, 0, 7, 245, 56, 109, 7, -140, 60], [-1449, 0, 126, 0, 102, -104, -35, -136, -55, 78, -10, 0, 0, 0, 0, 0, 0, 0], [2048, 0, 493, 0, 21, 84, -40, 75, -110, 84, 106, 0, 0, 0, 0, 0, 0, 0], [613, 0, -168, 0, 10, -224, -35, 6, -17, -68, -74, 0, 0, 0, 0, 0, 0, 0], [0, 317, 0, -185, 0, 0, 0, 0, 0, 0, 0, -99, -213, 135, -43, -24, 96, -1], [0, 576, 0, -134, 0, 0, 0, 0, 0, 0, 0, 107, 116, 80, 64, 6, 26, -134], [1470, 0, -276, 0, 5, -45, -24, 29, -293, -141, -47, 0, 0, 0, 0, 0, 0, 0], [0, 380, 0, 13, 0, 0, 0, 0, 0, 0, 0, -61, -15, -539, -59, 149, -20, -45], [1418, 0, -168, 0, 35, -122, -35, -198, -32, 123, 54, 0, 0, 0, 0, 0, 0, 0], [0, 410, 0, -74, 0, 0, 0, 0, 0, 0, 0, -149, 89, 454, -51, 90, -32, 138], [-1792, 0, -30, 0, -300, -119, 10, 183, 51, -176, -27, 0, 0, 0, 0, 0, 0, 0], [0, -656, 0, -38, 0, 0, 0, 0, 0, 0, 0, -104, -12, -182, 26, -77, -68, -55], [2295, 0, 105, 0, -41, 50, -105, 129, -247, -204, -44, 0, 0, 0, 0, 0, 0, 0], [-1817, 0, -186, 0, -76, 41, 145, 125, -108, 50, -107, 0, 0, 0, 0, 0, 0, 0], [0, 59, 0, -29, 0, 0, 0, 0, 0, 0, 0, -75, 107, 152, -119, 50, 94, 139], [0, -465, 0, -103, 0, 0, 0, 0, 0, 0, 0, -126, 26, -8, 54, -131, -18, 118], [-529, 0, -98, 0, -148, -65, -83, 57, -416, -98, -15, 0, 0, 0, 0, 0, 0, 0], [0, -457, 0, -50, 0, 0, 0, 0, 0, 0, 0, -87, -171, -386, -107, 183, 44, 84], [1219, 0, 409, 0, 4, -118, 124, 126, 101, 9, -72, 0, 0, 0, 0, 0, 0, 0], [0, -307, 0, 49, 0, 0, 0, 0, 0, 0, 0, 209, 53, 35, 173, -88, 86, -105], [0, -546, 0, -24, 0, 0, 0, 0, 0, 0, 0, -93, 149, 159, 61, 201, 64, -153], [1124, 0, -502, 0, 0, -95, -6, -199, 319, 156, 63, 0, 0, 0, 0, 0, 0, 0], [0, 707, 0, -20, 0, 0, 0, 0, 0, 0, 0, 259, 142, 365, 122, -121, 34, 14], [202, 0, 31, 0, 253, 113, 150, -41, 151, 190, -5, 0, 0, 0, 0, 0, 0, 0], [0, -446, 0, 251, 0, 0, 0, 0, 0, 0, 0, 238, -23, -226, 3, -15, -180, -31], [0, 740, 0, 120, 0, 0, 0, 0, 0, 0, 0, 256, 345, -141, 131, -176, -132, -190], [0, -33, 0, 183, 0, 0, 0, 0, 0, 0, 0, 30, -49, -267, -67, 296, -58, 89], [557, 0, -366, 0, -145, 265, 215, 279, 204, 7, -37, 0, 0, 0, 0, 0, 0, 0], [738, 0, -63, 0, 113, 40, 325, -29, 497, 206, 138, 0, 0, 0, 0, 0, 0, 0], [-2993, 0, -716, 0, 68, -174, -229, -214, -487, -186, -106, 0, 0, 0, 0, 0, 0, 0], [0, -622, 0, -193, 0, 0, 0, 0, 0, 0, 0, -287, -349, -101, -159, 23, 22, -25], [0, -841, 0, 51, 0, 0, 0, 0, 0, 0, 0, -54, 38, 709, -122, -201, -205, 82], [0, -1714, 0, 62, 0, 0, 0, 0, 0, 0, 0, -2, -2, -284, 50, -310, 10, 48], [-402, 0, -613, 0, 11, -122, -289, 110, 116, -16, -40, 0, 0, 0, 0, 0, 0, 0], [4078, 0, -286, 0, 93, 118, -59, 4, -388, 87, -72, 0, 0, 0, 0, 0, 0, 0], [0, -1767, 0, -268, 0, 0, 0, 0, 0, 0, 0, 49, -303, 268, 57, 159, 118, -130], [0, -47, 0, 324, 0, 0, 0, 0, 0, 0, 0, -351, 231, -446, 53, 159, 68, 2], [0, 238, 0, -68, 0, 0, 0, 0, 0, 0, 0, 171, 133, 413, -89, 30, 130, -58], [-635, 0, 291, 0, -78, 131, -100, -26, -178, 143, 29, 0, 0, 0, 0, 0, 0, 0], [-2686, 0, -1228, 0, 39, 132, -44, -93, 266, 3, 248, 0, 0, 0, 0, 0, 0, 0], [2167, 0, -273, 0, -123, -299, -82, -216, -101, 116, -249, 0, 0, 0, 0, 0, 0, 0], [0, -451, 0, 130, 0, 0, 0, 0, 0, 0, 0, -380, 360, -106, -80, 169, 250, 90], [-4372, 0, -123, 0, 9, 276, 154, 15, -472, 36, 160, 0, 0, 0, 0, 0, 0, 0], [-1940, 0, -804, 0, 75, 178, 158, -176, 167, 1, 174, 0, 0, 0, 0, 0, 0, 0], [0, -308, 0, 44, 0, 0, 0, 0, 0, 0, 0, 176, 16, 350, 332, -190, -284, 66], [904, 0, 456, 0, 235, -221, 43, -339, 217, 185, 135, 0, 0, 0, 0, 0, 0, 0], [0, 1152, 0, 217, 0, 0, 0, 0, 0, 0, 0, 194, 307, -236, -113, -57, 6, 161], [0, -405, 0, -128, 0, 0, 0, 0, 0, 0, 0, -55, -660, -627, 264, 114, -56, -93], [0, 130, 0, -151, 0, 0, 0, 0, 0, 0, 0, -34, 564, 433, -70, -245, -424, 221], [-1271, 0, -1232, 0, 136, -68, 64, -313, 273, 22, -184, 0, 0, 0, 0, 0, 0, 0], [-1677, 0, 513, 0, -17, -233, -229, 134, -262, -38, -133, 0, 0, 0, 0, 0, 0, 0], [0, -942, 0, -296, 0, 0, 0, 0, 0, 0, 0, -75, 75, 88, -105, -15, 85, 101], [0, 363, 0, -86, 0, 0, 0, 0, 0, 0, 0, -239, 237, 266, 55, -355, -34, -30], [-2423, 0, 763, 0, 436, 365, 239, -34, -339, 333, 73, 0, 0, 0, 0, 0, 0, 0], [0, 1866, 0, 76, 0, 0, 0, 0, 0, 0, 0, 5, 118, -345, 304, -136, -102, -74], [-4061, 0, 909, 0, 538, 276, 235, -509, 983, 241, -66, 0, 0, 0, 0, 0, 0, 0], [0, 1241, 0, -142, 0, 0, 0, 0, 0, 0, 0, -351, -193, -80, -69, -156, 229, 83], [-5549, 0, -106, 0, -377, -428, -87, -107, -37, -315, 48, 0, 0, 0, 0, 0, 0, 0], [-579, 0, 694, 0, -297, 232, -102, 78, 995, 183, -34, 0, 0, 0, 0, 0, 0, 0], [-5223, 0, -706, 0, -119, -286, -5, -228, 441, -43, -212, 0, 0, 0, 0, 0, 0, 0], [0, -464, 0, 312, 0, 0, 0, 0, 0, 0, 0, 61, -13, 440, 253, 28, -116, 30], [-6004, 0, -872, 0, 243, 266, 160, -328, -190, -355, 54, 0, 0, 0, 0, 0, 0, 0], [-995, 0, 1275, 0, -240, 364, -150, 311, 531, -293, 214, 0, 0, 0, 0, 0, 0, 0], [0, -920, 0, 311, 0, 0, 0, 0, 0, 0, 0, -315, -362, -26, -194, 75, 48, 115], [-5081, 0, -360, 0, 475, 511, 626, 92, 280, 539, 197, 0, 0, 0, 0, 0, 0, 0], [0, 3615, 0, -138, 0, 0, 0, 0, 0, 0, 0, 231, 175, 863, -61, 203, 96, 220], [-2625, 0, -293, 0, 54, -290, -480, 23, 327, -171, -336, 0, 0, 0, 0, 0, 0, 0], [0, 2492, 0, -364, 0, 0, 0, 0, 0, 0, 0, 169, 409, -164, 31, -330, -254, 56], [0, 1742, 0, 142, 0, 0, 0, 0, 0, 0, 0, 207, 443, 16, 131, -112, 174, -20], [-6527, 0, 597, 0, 299, -368, -100, -33, -174, 104, -186, 0, 0, 0, 0, 0, 0, 0], [0, -1313, 0, 239, 0, 0, 0, 0, 0, 0, 0, -388, -522, 3, -338, 302, 366, 13], [-2197, 0, 326, 0, -176, 8, -291, -260, 77, 108, -206, 0, 0, 0, 0, 0, 0, 0], [0, -1090, 0, 78, 0, 0, 0, 0, 0, 0, 0, 67, -527, -814, 51, 607, 176, -267], [-2672, 0, 1975, 0, -155, -58, 390, 65, 304, -162, 150, 0, 0, 0, 0, 0, 0, 0], [0, -1873, 0, -118, 0, 0, 0, 0, 0, 0, 0, 32, -163, 389, 57, -409, -24, -332], [-1133, 0, 2766, 0, 38, -444, -280, -171, 77, -62, 104, 0, 0, 0, 0, 0, 0, 0], [0, -3929, 0, -104, 0, 0, 0, 0, 0, 0, 0, 294, -236, 330, 308, -129, -356, -86], [-4064, 0, 625, 0, -18, 247, -452, -196, -97, -203, 183, 0, 0, 0, 0, 0, 0, 0], [0, 43, 0, 156, 0, 0, 0, 0, 0, 0, 0, -349, -406, -1795, -206, 121, 86, -60], [-1923, 0, -421, 0, -522, -860, -31, -13, -62, 315, -348, 0, 0, 0, 0, 0, 0, 0], [0, 852, 0, -5, 0, 0, 0, 0, 0, 0, 0, -63, -249, 745, 41, -415, 46, -185], [-8325, 0, 1444, 0, -530, -412, -439, 360, -653, -396, -44, 0, 0, 0, 0, 0, 0, 0], [0, -1034, 0, -130, 0, 0, 0, 0, 0, 0, 0, -527, 434, -1123, -232, 328, 174, 154], [-3535, 0, 503, 0, -128, -38, 60, 345, -1013, -541, 78, 0, 0, 0, 0, 0, 0, 0], [0, -2517, 0, -264, 0, 0, 0, 0, 0, 0, 0, -76, -806, 156, -460, 233, 268, 268], [-10989, 0, 411, 0, -347, 394, -161, 251, 829, 288, -30, 0, 0, 0, 0, 0, 0, 0], [0, -2415, 0, -181, 0, 0, 0, 0, 0, 0, 0, -447, -809, 140, 17, 150, 368, 49], [-7, 0, 18, 0, -21, -151, 408, -539, -1004, 373, -55, 0, 0, 0, 0, 0, 0, 0], [0, 1567, 0, -747, 0, 0, 0, 0, 0, 0, 0, 496, 462, -853, 434, -410, -100, 197], [0, -3157, 0, -608, 0, 0, 0, 0, 0, 0, 0, 293, -185, -105, 667, -517, -78, 8], [0, 1888, 0, 200, 0, 0, 0, 0, 0, 0, 0, 324, 473, -414, -223, 184, 276, 266], [-4651, 0, 1661, 0, 679, 205, -299, -30, 516, 82, 87, 0, 0, 0, 0, 0, 0, 0], [0, 2798, 0, 209, 0, 0, 0, 0, 0, 0, 0, 661, 721, -429, -127, -430, -297, -26], [0, 2298, 0, -218, 0, 0, 0, 0, 0, 0, 0, 728, 222, -20, 682, -432, -242, -70], [0, -2340, 0, -172, 0, 0, 0, 0, 0, 0, 0, -53, -446, -1067, -338, 234, 564, 134], [-20964, 0, -696, 0, 105, 482, -24, -200, 586, -77, -282, 0, 0, 0, 0, 0, 0, 0], [556, 0, -280, 0, 391, 913, 667, 29, 875, 741, 257, 0, 0, 0, 0, 0, 0, 0], [-9230, 0, -751, 0, 125, 136, 270, -33, -1238, 100, 174, 0, 0, 0, 0, 0, 0, 0], [0, 753, 0, -110, 0, 0, 0, 0, 0, 0, 0, 329, -670, -2575, -102, -47, 224, -242], [0, -6698, 0, 299, 0, 0, 0, 0, 0, 0, 0, 179, 746, 1312, -426, 253, -236, 199], [-664, 0, -679, 0, -1016, -490, -37, 811, 460, -165, -384, 0, 0, 0, 0, 0, 0, 0], [0, 3721, 0, 35, 0, 0, 0, 0, 0, 0, 0, 448, -157, 50, -549, 268, -180, -281], [2604, 0, 777, 0, -557, 170, -535, 624, 278, -158, 22, 0, 0, 0, 0, 0, 0, 0], [-12103, 0, 382, 0, 209, 277, -333, 179, 741, -207, -63, 0, 0, 0, 0, 0, 0, 0], [0, -1778, 0, -363, 0, 0, 0, 0, 0, 0, 0, -2, -789, 138, -81, 177, 390, -151], [-11662, 0, -2252, 0, 836, 288, -529, -528, -463, 176, 286, 0, 0, 0, 0, 0, 0, 0], [0, -1052, 0, -630, 0, 0, 0, 0, 0, 0, 0, -521, -868, -719, 548, -248, 224, 40], [-16711, 0, -1629, 0, -64, 450, 226, 161, -1695, -433, -28, 0, 0, 0, 0, 0, 0, 0], [-3424, 0, -265, 0, 182, -472, 717, -71, 1046, 447, -42, 0, 0, 0, 0, 0, 0, 0], [3520, 0, -227, 0, -351, -380, -807, 323, -1209, -494, -336, 0, 0, 0, 0, 0, 0, 0], [0, -4187, 0, 664, 0, 0, 0, 0, 0, 0, 0, -240, -931, 211, -411, 2, 79, -147], [5469, 0, 2679, 0, -1, -316, -165, -551, 627, -74, -164, 0, 0, 0, 0, 0, 0, 0], [0, -1571, 0, 146, 0, 0, 0, 0, 0, 0, 0, 682, 587, -518, 195, 1, -186, -212], [0, 87, 0, 709, 0, 0, 0, 0, 0, 0, 0, -320, 1222, 305, -438, 352, 26, 219], [0, -2335, 0, 480, 0, 0, 0, 0, 0, 0, 0, -583, 1529, -156, -181, 640, 148, 225], [-9420, 0, -911, 0, -159, 430, 266, 489, -364, -476, 340, 0, 0, 0, 0, 0, 0, 0], [-1738, 0, -270, 0, 204, 347, 241, 197, 698, 806, 129, 0, 0, 0, 0, 0, 0, 0], [-4680, 0, -606, 0, 180, -167, 29, 21, 789, 122, -89, 0, 0, 0, 0, 0, 0, 0], [0, -122, 0, -909, 0, 0, 0, 0, 0, 0, 0, 351, -8, 616, 920, -847, -182, 167], [-9479, 0, 390, 0, 212, -364, -422, 190, -446, -194, 486, 0, 0, 0, 0, 0, 0, 0], [0, -2563, 0, -318, 0, 0, 0, 0, 0, 0, 0, -503, 95, 486, -57, -641, -132, -22], [-21781, 0, -3511, 0, 6, -44, 288, 187, 155, 283, -206, 0, 0, 0, 0, 0, 0, 0], [0, -5282, 0, 766, 0, 0, 0, 0, 0, 0, 0, -146, 403, -1510, -137, -85, -72, 293], [0, -6493, 0, 340, 0, 0, 0, 0, 0, 0, 0, 161, 7, -1248, 203, -47, 464, 90], [0, 100, 0, 419, 0, 0, 0, 0, 0, 0, 0, 793, 452, 1008, 116, -41, -472, 39], [-4141, 0, -1082, 0, 793, 955, 251, -296, 992, 647, -77, 0, 0, 0, 0, 0, 0, 0], [-326, 0, -2981, 0, 268, 943, 502, -450, 651, 101, 185, 0, 0, 0, 0, 0, 0, 0], [0, -2598, 0, -389, 0, 0, 0, 0, 0, 0, 0, 1019, -239, -2971, 603, 159, 4, -817], [0, -7540, 0, -267, 0, 0, 0, 0, 0, 0, 0, 499, -60, -2402, 28, -279, 104, -391], [0, -5396, 0, 127, 0, 0, 0, 0, 0, 0, 0, -494, -1413, -1172, 147, 53, 382, 307], [5434, 0, 1461, 0, -454, 1099, 65, 363, -1411, 67, 381, 0, 0, 0, 0, 0, 0, 0], [12988, 0, 3008, 0, -180, -431, -508, -49, 1333, 378, -25, 0, 0, 0, 0, 0, 0, 0], [5355, 0, 809, 0, 214, 888, 164, 3, 1379, -561, 62, 0, 0, 0, 0, 0, 0, 0], [0, -5702, 0, -160, 0, 0, 0, 0, 0, 0, 0, -86, -1580, 670, -330, 628, 138, -70], [0, -8695, 0, -564, 0, 0, 0, 0, 0, 0, 0, 670, 68, 2013, 130, 374, 476, -351], [-14895, 0, -628, 0, 593, -905, -48, -320, -312, 513, -261, 0, 0, 0, 0, 0, 0, 0], [0, 2838, 0, 326, 0, 0, 0, 0, 0, 0, 0, -325, -945, -1014, 265, -39, 301, -3], [0, -5198, 0, -76, 0, 0, 0, 0, 0, 0, 0, 491, 286, 360, -994, 675, 580, -221], [10805, 0, 1830, 0, -766, -252, 245, -538, 665, -262, 10, 0, 0, 0, 0, 0, 0, 0], [-5351, 0, -1450, 0, 150, -28, 41, -548, 1673, 950, 24, 0, 0, 0, 0, 0, 0, 0], [0, 9144, 0, 214, 0, 0, 0, 0, 0, 0, 0, -695, -51, 1202, -87, 74, 22, -184], [7147, 0, 1028, 0, 1413, 1445, 1114, -661, 1848, 1205, 59, 0, 0, 0, 0, 0, 0, 0], [0, 453, 0, 386, 0, 0, 0, 0, 0, 0, 0, -523, 49, 546, -391, 420, -231, 671], [0, -745, 0, -105, 0, 0, 0, 0, 0, 0, 0, 1004, -1266, -1745, 566, -536, -822, -337], [3728, 0, -3618, 0, 427, 1602, 419, -273, 490, 497, 262, 0, 0, 0, 0, 0, 0, 0], [5339, 0, 199, 0, 1359, 1674, 145, -682, -263, 908, 448, 0, 0, 0, 0, 0, 0, 0], [0, 483, 0, -71, 0, 0, 0, 0, 0, 0, 0, 68, -666, -1222, -798, 197, -118, 662], [0, -495, 0, 679, 0, 0, 0, 0, 0, 0, 0, 38, 1219, -906, -423, -656, 62, 147], [0, -1552, 0, -445, 0, 0, 0, 0, 0, 0, 0, 546, 688, 453, -342, -837, -1008, 275], [12716, 0, -1347, 0, -955, 1186, 486, 741, 846, -524, 114, 0, 0, 0, 0, 0, 0, 0], [10724, 0, 4118, 0, -523, -947, -855, 121, -713, -471, -295, 0, 0, 0, 0, 0, 0, 0], [0, 323, 0, -1291, 0, 0, 0, 0, 0, 0, 0, 579, -1990, 2333, 652, -194, 340, -103], [-13841, 0, 3179, 0, -396, -479, -34, -242, 440, -279, -215, 0, 0, 0, 0, 0, 0, 0], [0, 1471, 0, 406, 0, 0, 0, 0, 0, 0, 0, -776, -53, 2001, -639, 105, 82, 386], [7049, 0, -497, 0, 865, 1323, -63, -205, 2432, 194, -45, 0, 0, 0, 0, 0, 0, 0], [0, 5451, 0, 167, 0, 0, 0, 0, 0, 0, 0, -99, 1872, 438, 372, 72, -66, -261], [0, -3620, 0, -216, 0, 0, 0, 0, 0, 0, 0, 512, 760, -3818, -214, -54, -454, 502], [20167, 0, -1414, 0, -635, -1345, 454, -1080, -648, 339, -531, 0, 0, 0, 0, 0, 0, 0], [0, 985, 0, -1794, 0, 0, 0, 0, 0, 0, 0, 1175, 301, 708, 321, 119, -24, -358], [23839, 0, 633, 0, 549, 211, 409, -472, -1132, -252, 551, 0, 0, 0, 0, 0, 0, 0], [-14821, 0, 2130, 0, -279, 234, 638, 222, 1771, 577, -166, 0, 0, 0, 0, 0, 0, 0], [3601, 0, -4311, 0, 575, -438, -39, 101, -2519, 672, 210, 0, 0, 0, 0, 0, 0, 0], [0, -71, 0, 574, 0, 0, 0, 0, 0, 0, 0, -1600, 140, 160, -1140, 1734, 638, 409], [255, 0, 1782, 0, -677, -639, -292, 659, 1750, -527, 89, 0, 0, 0, 0, 0, 0, 0], [0, -1773, 0, -1496, 0, 0, 0, 0, 0, 0, 0, 153, -11, 54, -223, -708, 495, 77], [23104, 0, 1464, 0, -891, -250, -433, 130, -54, -47, -330, 0, 0, 0, 0, 0, 0, 0], [0, -3531, 0, 1327, 0, 0, 0, 0, 0, 0, 0, -592, 571, 1694, 931, 260, -114, -437], [0, -184, 0, 105, 0, 0, 0, 0, 0, 0, 0, 465, -71, -1719, 151, 363, -224, 185], [0, 7355, 0, -1331, 0, 0, 0, 0, 0, 0, 0, 908, -412, -1727, -302, -73, 190, -32], [0, -3802, 0, 14, 0, 0, 0, 0, 0, 0, 0, -618, -1009, -1659, 15, 876, 342, -772], [-7523, 0, 2762, 0, -408, -1052, -404, -1039, 413, 68, 184, 0, 0, 0, 0, 0, 0, 0], [1240, 0, -2736, 0, -1174, -1035, -660, 631, -1125, -688, -437, 0, 0, 0, 0, 0, 0, 0], [-4158, 0, 2556, 0, -161, -900, 20, -332, 1606, 97, 508, 0, 0, 0, 0, 0, 0, 0], [0, 5315, 0, -965, 0, 0, 0, 0, 0, 0, 0, 1152, -969, 1391, -213, -61, 226, -62], [0, -6746, 0, 808, 0, 0, 0, 0, 0, 0, 0, -1360, -1528, -3372, 166, -193, 110, -213], [-20181, 0, -2019, 0, 187, 1827, 1109, 355, 1454, -530, 763, 0, 0, 0, 0, 0, 0, 0], [0, 18807, 0, 328, 0, 0, 0, 0, 0, 0, 0, 608, 615, -931, 505, 314, -150, -139], [-15343, 0, -4801, 0, 948, 735, -196, 708, -330, 25, 655, 0, 0, 0, 0, 0, 0, 0], [0, 4933, 0, 317, 0, 0, 0, 0, 0, 0, 0, 504, 1991, -2703, 203, 157, -1054, 310], [24398, 0, -1661, 0, 1114, 1272, 1545, 102, 194, 293, -216, 0, 0, 0, 0, 0, 0, 0], [0, -2546, 0, 259, 0, 0, 0, 0, 0, 0, 0, -422, 315, 1664, -791, -289, 380, -313], [0, 9874, 0, -572, 0, 0, 0, 0, 0, 0, 0, 990, 1557, 3381, 163, 31, -512, 85], [38748, 0, 1224, 0, -1291, -1974, -33, 786, -2220, -843, 98, 0, 0, 0, 0, 0, 0, 0], [0, 1735, 0, -684, 0, 0, 0, 0, 0, 0, 0, -412, -472, -958, -270, 980, 1045, 643], [0, -1095, 0, 1065, 0, 0, 0, 0, 0, 0, 0, 345, 521, -1727, 169, -846, -654, 1], [5992, 0, -1576, 0, -371, 250, -1425, 1854, -746, -271, -662, 0, 0, 0, 0, 0, 0, 0], [24058, 0, 1644, 0, 273, 963, 1287, -1043, 847, 247, 371, 0, 0, 0, 0, 0, 0, 0], [0, 5451, 0, 1083, 0, 0, 0, 0, 0, 0, 0, -1261, -642, -702, -460, 1019, 573, 142], [4823, 0, -2239, 0, 1473, -540, 806, -998, 233, 892, 320, 0, 0, 0, 0, 0, 0, 0], [15883, 0, 176, 0, -1058, -1012, -308, 704, 1576, -366, 474, 0, 0, 0, 0, 0, 0, 0], [0, -8637, 0, -131, 0, 0, 0, 0, 0, 0, 0, 38, 873, 2248, -1377, 10, -134, 875], [11375, 0, -5709, 0, 328, 294, 463, -905, 2297, -231, -478, 0, 0, 0, 0, 0, 0, 0], [-5924, 0, -1660, 0, 1246, 619, 197, -1482, 561, 652, 349, 0, 0, 0, 0, 0, 0, 0], [0, -3779, 0, 683, 0, 0, 0, 0, 0, 0, 0, -156, 1749, 1076, 699, -655, -1173, -168], [548, 0, -7156, 0, -1201, 717, 568, -135, 1523, 57, 261, 0, 0, 0, 0, 0, 0, 0], [0, -8779, 0, -563, 0, 0, 0, 0, 0, 0, 0, 534, 30, 2315, 60, -981, -536, 958], [0, 245, 0, 611, 0, 0, 0, 0, 0, 0, 0, 531, 2390, 754, 674, -590, 102, 23], [23782, 0, 846, 0, -959, 451, -1100, 492, 621, -869, -343, 0, 0, 0, 0, 0, 0, 0], [0, 8730, 0, 1313, 0, 0, 0, 0, 0, 0, 0, -1643, 2008, -986, -138, -749, -440, 285], [7365, 0, -1493, 0, 1570, -1096, -207, -1381, -986, -485, 216, 0, 0, 0, 0, 0, 0, 0], [-20439, 0, -695, 0, 123, 1015, 71, 649, 3024, -410, -357, 0, 0, 0, 0, 0, 0, 0], [23017, 0, 3528, 0, 671, 612, 1076, -1252, 4175, 813, -160, 0, 0, 0, 0, 0, 0, 0], [-7895, 0, -3612, 0, 1259, 877, 1127, -1203, 837, 369, 93, 0, 0, 0, 0, 0, 0, 0], [45873, 0, -934, 0, -175, -2018, 433, 217, 495, 231, -300, 0, 0, 0, 0, 0, 0, 0], [-21467, 0, -2307, 0, -2818, -1522, -1086, 636, -1413, -693, -756, 0, 0, 0, 0, 0, 0, 0], [0, 11296, 0, -1005, 0, 0, 0, 0, 0, 0, 0, 135, -747, -2042, 201, 114, 524, 506], [43198, 0, 1876, 0, 1253, 569, -123, -559, 209, 851, 277, 0, 0, 0, 0, 0, 0, 0], [-20796, 0, 130, 0, -1045, 1471, 413, 1244, -317, -231, -547, 0, 0, 0, 0, 0, 0, 0], [0, 10484, 0, 1112, 0, 0, 0, 0, 0, 0, 0, 839, 1360, 2643, 130, 120, -878, 40], [0, -840, 0, -1015, 0, 0, 0, 0, 0, 0, 0, -986, -2662, 1652, -988, 206, -214, 572], [6274, 0, 307, 0, 722, 1128, -937, 853, 760, 775, 596, 0, 0, 0, 0, 0, 0, 0], [0, 6353, 0, 1400, 0, 0, 0, 0, 0, 0, 0, 142, -237, -2099, -139, 1612, -369, -409], [22590, 0, 2658, 0, 24, 881, -368, 547, 43, -1300, 557, 0, 0, 0, 0, 0, 0, 0], [35504, 0, 995, 0, 114, 767, 441, 593, 1571, -159, 305, 0, 0, 0, 0, 0, 0, 0], [0, 3125, 0, -1644, 0, 0, 0, 0, 0, 0, 0, 1124, -1227, -4991, 403, -343, 280, -624], [9738, 0, -5744, 0, -1678, 429, 137, 1055, -2181, 318, 195, 0, 0, 0, 0, 0, 0, 0], [0, 1377, 0, 1661, 0, 0, 0, 0, 0, 0, 0, 1295, 2543, -923, 835, 961, 1, -436], [1447, 0, 3545, 0, -313, -375, -852, 142, 310, -1740, -805, 0, 0, 0, 0, 0, 0, 0], [0, -7987, 0, 81, 0, 0, 0, 0, 0, 0, 0, -340, -73, 6524, -89, 434, 24, 37], [0, 13505, 0, -284, 0, 0, 0, 0, 0, 0, 0, -553, -1960, 2881, -892, 1601, 1290, -462], [0, -2466, 0, 731, 0, 0, 0, 0, 0, 0, 0, -1102, -1065, 2835, -467, -1186, 622, 324], [0, -9667, 0, 238, 0, 0, 0, 0, 0, 0, 0, 334, 1155, 3281, 39, -503, 816, 304], [0, 14993, 0, -1072, 0, 0, 0, 0, 0, 0, 0, 1149, 951, 5368, -707, -395, 912, -524], [20521, 0, 2437, 0, 1638, 707, 701, 957, 542, 247, 639, 0, 0, 0, 0, 0, 0, 0], [0, -6214, 0, -143, 0, 0, 0, 0, 0, 0, 0, -1103, -1594, -1636, -1008, 1449, 904, 1295], [11987, 0, -5302, 0, -958, 192, -375, -196, -2631, 130, 464, 0, 0, 0, 0, 0, 0, 0], [0, 3528, 0, -24, 0, 0, 0, 0, 0, 0, 0, 1084, 1068, 2156, -1308, 536, -666, 1144], [0, -10851, 0, 1474, 0, 0, 0, 0, 0, 0, 0, -256, 3111, -2305, 771, -680, -205, 219], [3629, 0, -1534, 0, 212, 1070, 23, 968, -245, 200, -620, 0, 0, 0, 0, 0, 0, 0], [35963, 0, -2816, 0, 1204, 276, -452, -394, -1741, -256, -150, 0, 0, 0, 0, 0, 0, 0], [0, -2927, 0, 129, 0, 0, 0, 0, 0, 0, 0, 1642, 3152, 249, 1746, -959, -1056, -244], [-35572, 0, 1360, 0, 169, -879, -229, 901, -3125, -837, 383, 0, 0, 0, 0, 0, 0, 0], [0, -8958, 0, 2159, 0, 0, 0, 0, 0, 0, 0, -685, -1211, 527, -483, 1056, 228, -478], [-3046, 0, 6459, 0, -2382, -717, 605, 632, 371, -1237, -93, 0, 0, 0, 0, 0, 0, 0], [22502, 0, 2042, 0, -669, 75, -721, -315, -2901, -73, -577, 0, 0, 0, 0, 0, 0, 0], [0, -2792, 0, -661, 0, 0, 0, 0, 0, 0, 0, 314, -1797, 2461, -1859, -70, 1386, -42], [-3518, 0, 321, 0, 1652, -1465, -81, 720, 705, 617, -499, 0, 0, 0, 0, 0, 0, 0], [0, -15875, 0, -379, 0, 0, 0, 0, 0, 0, 0, 104, 1482, 2987, -462, -1790, -1268, 883], [386, 0, 767, 0, -145, 828, 1476, -497, -1964, -428, 994, 0, 0, 0, 0, 0, 0, 0], [0, 9250, 0, 501, 0, 0, 0, 0, 0, 0, 0, -1485, -784, 2202, 322, 969, 1782, -517], [0, 466, 0, -408, 0, 0, 0, 0, 0, 0, 0, 977, -1007, 3572, 151, -49, -458, -163], [0, 10914, 0, -271, 0, 0, 0, 0, 0, 0, 0, -1667, 75, 4747, -387, 2361, 718, -491], [18153, 0, -826, 0, 814, 568, 114, -1335, 1193, 1518, -200, 0, 0, 0, 0, 0, 0, 0], [0, 4430, 0, -427, 0, 0, 0, 0, 0, 0, 0, 134, -700, -7374, -442, 673, -866, 1403], [12320, 0, 6999, 0, -682, -1238, -510, -1689, 473, -1397, -1126, 0, 0, 0, 0, 0, 0, 0], [0, -1206, 0, 23, 0, 0, 0, 0, 0, 0, 0, -73, 2884, 4151, 150, 763, 468, -1695], [0, 13421, 0, 1154, 0, 0, 0, 0, 0, 0, 0, 1542, 1681, -2764, 119, 189, 584, -264], [44567, 0, 362, 0, -1229, -1040, 113, 506, 1740, 515, -582, 0, 0, 0, 0, 0, 0, 0], [0, -20041, 0, -983, 0, 0, 0, 0, 0, 0, 0, 1198, 240, 706, 1024, -568, -56, -1205], [-7815, 0, 1127, 0, -640, -3070, -248, -9, -2925, -77, -700, 0, 0, 0, 0, 0, 0, 0], [37546, 0, 3604, 0, -406, -2625, -464, 1765, -2493, -528, -711, 0, 0, 0, 0, 0, 0, 0], [0, 2538, 0, 1224, 0, 0, 0, 0, 0, 0, 0, 593, -2558, -2168, 192, -996, 1204, -1186], [-31432, 0, 8065, 0, -434, 650, -657, 531, 96, -147, 608, 0, 0, 0, 0, 0, 0, 0], [0, -2607, 0, -741, 0, 0, 0, 0, 0, 0, 0, -1180, -82, 6154, 316, -1014, 518, 627], [-329, 0, 4388, 0, 23, 1049, 1139, 1493, 2000, 849, 285, 0, 0, 0, 0, 0, 0, 0], [-21858, 0, 3820, 0, -310, 1778, 733, 28, -206, -522, 718, 0, 0, 0, 0, 0, 0, 0], [-37360, 0, -2276, 0, 1558, 914, -472, -140, 2516, 1382, 152, 0, 0, 0, 0, 0, 0, 0], [0, -12142, 0, -98, 0, 0, 0, 0, 0, 0, 0, -615, 1636, -1758, -1594, 676, 1162, 22], [0, -2636, 0, 309, 0, 0, 0, 0, 0, 0, 0, 1501, 2041, 1292, 1137, -124, 1072, -1992], [10462, 0, 2024, 0, -1899, 1344, -963, 2466, -252, -1299, 704, 0, 0, 0, 0, 0, 0, 0], [0, -32276, 0, 1188, 0, 0, 0, 0, 0, 0, 0, 784, 169, -519, 63, -368, -242, 782], [-33958, 0, 5469, 0, 896, 2197, 553, 635, 3225, -55, -171, 0, 0, 0, 0, 0, 0, 0], [0, 21896, 0, 1, 0, 0, 0, 0, 0, 0, 0, 878, 606, 1099, 1412, -1089, -682, -605], [-13612, 0, -11640, 0, -1582, 1006, 900, 630, -1582, -666, -550, 0, 0, 0, 0, 0, 0, 0], [0, 1084, 0, -4, 0, 0, 0, 0, 0, 0, 0, 26, -1752, 1350, -2136, 2389, 20, 171], [-6083, 0, 5738, 0, -450, 1376, -2487, -742, 779, -202, 328, 0, 0, 0, 0, 0, 0, 0], [0, -4704, 0, 1033, 0, 0, 0, 0, 0, 0, 0, 1057, 1008, -2929, 622, -2370, -682, -920], [3046, 0, 9911, 0, 751, -237, 228, 58, -2489, -1118, -1089, 0, 0, 0, 0, 0, 0, 0], [-40045, 0, -1467, 0, -978, -877, -1485, 2369, 3174, -25, 483, 0, 0, 0, 0, 0, 0, 0], [7766, 0, 426, 0, -586, 1275, 306, 316, 4361, -978, -423, 0, 0, 0, 0, 0, 0, 0], [0, -25975, 0, -893, 0, 0, 0, 0, 0, 0, 0, 1603, -1156, -522, 1942, -321, 117, -1868], [0, -24018, 0, -618, 0, 0, 0, 0, 0, 0, 0, 1022, 411, -2693, 635, -147, -915, -1455], [-60060, 0, -1835, 0, 1290, 875, 656, -973, 403, 439, -277, 0, 0, 0, 0, 0, 0, 0], [0, 17386, 0, 273, 0, 0, 0, 0, 0, 0, 0, -234, 207, -646, 103, -193, -124, 715], [0, 13716, 0, -1035, 0, 0, 0, 0, 0, 0, 0, -928, -1529, -8067, 1083, 137, 504, 291], [-10173, 0, -2591, 0, 1783, 270, 443, -1531, 415, 2108, -36, 0, 0, 0, 0, 0, 0, 0], [-16464, 0, 3256, 0, -807, 21, 685, -1757, -189, 1195, 679, 0, 0, 0, 0, 0, 0, 0], [0, 27115, 0, 323, 0, 0, 0, 0, 0, 0, 0, -983, 1555, -913, -9, 1290, -1368, 403], [0, 6444, 0, 347, 0, 0, 0, 0, 0, 0, 0, 1155, 674, -3182, -1562, -317, 710, 319], [27751, 0, 1987, 0, -35, -127, -1315, -1392, 2018, 138, 551, 0, 0, 0, 0, 0, 0, 0], [40480, 0, -381, 0, 22, -269, -2287, -730, -871, -355, -581, 0, 0, 0, 0, 0, 0, 0], [0, 1234, 0, -465, 0, 0, 0, 0, 0, 0, 0, -1115, 2721, 1955, 35, 929, 1244, -323], [10938, 0, 2239, 0, 1135, -1079, -1195, 381, -5563, -556, -447, 0, 0, 0, 0, 0, 0, 0], [-19446, 0, 51, 0, 2311, -1126, -1629, -2528, -2768, 1104, 834, 0, 0, 0, 0, 0, 0, 0], [0, 448, 0, 364, 0, 0, 0, 0, 0, 0, 0, -908, -3445, -7036, 527, -413, 1268, -645], [0, -15608, 0, 731, 0, 0, 0, 0, 0, 0, 0, -73, -1589, -2577, 1339, 1731, -186, -1115], [0, 20523, 0, 2385, 0, 0, 0, 0, 0, 0, 0, -282, -360, -1137, 1404, -1298, -820, -1371], [0, -8877, 0, 455, 0, 0, 0, 0, 0, 0, 0, -735, -2972, 2256, -458, -1076, 1766, -1193], [0, -2127, 0, 1687, 0, 0, 0, 0, 0, 0, 0, 1709, 2187, -3054, 1017, -1972, 146, -673], [72580, 0, -3107, 0, 430, 457, 2263, -150, -2945, -1021, -493, 0, 0, 0, 0, 0, 0, 0], [0, 16745, 0, 2047, 0, 0, 0, 0, 0, 0, 0, 2095, 3600, -1722, 734, -1744, -1696, -879], [0, 17615, 0, -1634, 0, 0, 0, 0, 0, 0, 0, 1440, 58, -5436, 1748, -1313, 102, -954], [0, 11142, 0, 2437, 0, 0, 0, 0, 0, 0, 0, -1369, 1357, 3407, 53, 645, 192, -747], [27296, 0, -9328, 0, 228, -823, -150, -175, -2199, 22, -863, 0, 0, 0, 0, 0, 0, 0], [17378, 0, -3350, 0, 378, 2399, 262, 441, -3917, 1022, -1041, 0, 0, 0, 0, 0, 0, 0], [0, -435, 0, -1153, 0, 0, 0, 0, 0, 0, 0, -499, -1337, 16, 1715, 396, 1056, 419], [-58890, 0, -5353, 0, 1265, 316, 1628, -1305, 4130, 2018, 460, 0, 0, 0, 0, 0, 0, 0], [3202, 0, -2476, 0, -1833, -908, 199, -64, 8612, 319, 66, 0, 0, 0, 0, 0, 0, 0], [0, 762, 0, 38, 0, 0, 0, 0, 0, 0, 0, 870, 3604, 2734, -1138, -1092, 18, 1250], [-40095, 0, 547, 0, -31, -569, 1267, 842, -5238, 460, 577, 0, 0, 0, 0, 0, 0, 0], [0, 4594, 0, -2352, 0, 0, 0, 0, 0, 0, 0, 1360, -2338, -3860, -406, 865, -297, -1157], [0, -2987, 0, -468, 0, 0, 0, 0, 0, 0, 0, -504, 1261, -1322, -847, 1042, -1378, 339], [33326, 0, 7647, 0, 2866, 3013, -49, 1654, -1227, 1025, 1635, 0, 0, 0, 0, 0, 0, 0], [-27485, 0, -4859, 0, -1029, -1887, 1385, -1166, 200, -98, -395, 0, 0, 0, 0, 0, 0, 0], [0, -9931, 0, -1695, 0, 0, 0, 0, 0, 0, 0, 2725, -978, 1900, 806, -1528, -2534, -151], [0, 25678, 0, -1906, 0, 0, 0, 0, 0, 0, 0, -1295, 1012, -3601, -918, -131, 329, -273], [30492, 0, -4718, 0, -2203, -2520, -2642, 1144, -6533, -3067, 598, 0, 0, 0, 0, 0, 0, 0], [0, 32453, 0, -1133, 0, 0, 0, 0, 0, 0, 0, -199, 3249, -1752, -837, -1433, -204, 1576], [-10820, 0, 1801, 0, 658, -2817, 257, -2828, 21, 191, -249, 0, 0, 0, 0, 0, 0, 0], [0, 3362, 0, -863, 0, 0, 0, 0, 0, 0, 0, -3130, -3676, 2703, -1802, -1067, 684, 47], [0, -19857, 0, 979, 0, 0, 0, 0, 0, 0, 0, 934, 4422, -1473, 370, -512, -1892, 1443], [-4289, 0, -3318, 0, -1296, -2100, 275, -196, -1247, -1584, 864, 0, 0, 0, 0, 0, 0, 0], [0, -13096, 0, -598, 0, 0, 0, 0, 0, 0, 0, 137, -3274, -3127, 1376, 1299, 1098, -235], [-50943, 0, 2115, 0, -693, -1171, 765, 1162, -1352, -832, -1655, 0, 0, 0, 0, 0, 0, 0], [0, -6462, 0, -2992, 0, 0, 0, 0, 0, 0, 0, -641, -3687, 3705, -7, 1779, 2640, -1259], [-54423, 0, -942, 0, -1645, -1012, 607, 892, -2715, -2605, 428, 0, 0, 0, 0, 0, 0, 0], [19988, 0, -5228, 0, -548, 417, 104, -1140, 2453, 118, 463, 0, 0, 0, 0, 0, 0, 0], [-45653, 0, -5797, 0, 2186, -352, 1426, -3279, 299, 2933, -1168, 0, 0, 0, 0, 0, 0, 0], [0, -9255, 0, -2780, 0, 0, 0, 0, 0, 0, 0, 2386, 2344, 4652, 1280, -69, -1764, -236], [-48118, 0, 1870, 0, 14, 712, 1361, -172, -403, 68, 912, 0, 0, 0, 0, 0, 0, 0], [0, 5572, 0, -494, 0, 0, 0, 0, 0, 0, 0, 2962, -2341, 2103, 1577, -1246, -506, -740], [0, -7960, 0, 73, 0, 0, 0, 0, 0, 0, 0, 2296, 1148, -2759, 456, 213, -2168, -1291], [32081, 0, -5056, 0, 174, -780, -2117, -1352, -4149, 360, 614, 0, 0, 0, 0, 0, 0, 0], [0, 20004, 0, -2176, 0, 0, 0, 0, 0, 0, 0, 1948, -5050, -7178, 344, 824, -24, -1312], [815, 0, -658, 0, 1785, 2331, -256, 56, 560, -1097, 169, 0, 0, 0, 0, 0, 0, 0], [-61423, 0, -385, 0, 767, 1509, 993, 2170, -2024, -520, 577, 0, 0, 0, 0, 0, 0, 0], [0, -8147, 0, -802, 0, 0, 0, 0, 0, 0, 0, -1984, -218, 3044, -1668, 696, 2455, -259], [7964, 0, -5379, 0, 2880, 1490, -1780, -883, 3780, 1787, 496, 0, 0, 0, 0, 0, 0, 0], [0, -21942, 0, -1359, 0, 0, 0, 0, 0, 0, 0, -2704, -4833, 1467, -1357, 1625, 3606, -1287], [-24141, 0, -3642, 0, -469, 1584, -698, 1047, 1447, 121, -434, 0, 0, 0, 0, 0, 0, 0], [0, -21461, 0, 1138, 0, 0, 0, 0, 0, 0, 0, -4156, 2782, -668, 88, 2707, 502, 82], [37728, 0, 2817, 0, -260, -2240, -395, -2667, -2838, -429, -604, 0, 0, 0, 0, 0, 0, 0], [0, -23158, 0, 1873, 0, 0, 0, 0, 0, 0, 0, -1273, -2541, 2101, -2377, 221, -596, 29], [0, -18451, 0, 3225, 0, 0, 0, 0, 0, 0, 0, 882, 2698, -4112, -1348, 1835, 240, 630], [16707, 0, -4036, 0, 972, -1169, 1624, 89, -6120, -484, 727, 0, 0, 0, 0, 0, 0, 0], [2784, 0, 4160, 0, -657, 1772, -1941, 2834, -4874, -1049, -964, 0, 0, 0, 0, 0, 0, 0], [0, -10290, 0, -1151, 0, 0, 0, 0, 0, 0, 0, -682, -6088, -9167, 2442, 425, 830, -841], [21747, 0, 2045, 0, -2103, -2999, 1571, -882, 1238, -714, -361, 0, 0, 0, 0, 0, 0, 0], [0, 28627, 0, -22, 0, 0, 0, 0, 0, 0, 0, -2709, -690, 4195, -1160, 425, 214, -68], [-10002, 0, 2843, 0, -165, 1609, 3365, 308, -6334, 1982, 133, 0, 0, 0, 0, 0, 0, 0], [0, 10196, 0, 3781, 0, 0, 0, 0, 0, 0, 0, -1325, 3269, 5623, -1275, -1776, -1500, 1140], [0, -20842, 0, 540, 0, 0, 0, 0, 0, 0, 0, -1981, 2517, 5440, -739, -722, -2000, 1658], [-55011, 0, 2813, 0, -2794, -1282, 1714, -549, 5175, -265, -416, 0, 0, 0, 0, 0, 0, 0], [52717, 0, -4827, 0, 848, -12, -826, -391, -5919, -1679, -890, 0, 0, 0, 0, 0, 0, 0], [0, 31592, 0, 2281, 0, 0, 0, 0, 0, 0, 0, -2097, -2284, -104, -1182, -717, -830, 1819], [0, 14085, 0, -823, 0, 0, 0, 0, 0, 0, 0, 933, -479, 4443, -1457, -1901, 26, -152], [-15610, 0, 3925, 0, -2142, 787, 1871, 2236, 10047, -305, -223, 0, 0, 0, 0, 0, 0, 0], [0, -51, 0, -1016, 0, 0, 0, 0, 0, 0, 0, -1169, -2077, -1962, -1605, 667, 3220, 310], [0, -3519, 0, -261, 0, 0, 0, 0, 0, 0, 0, 2395, 886, -2294, 850, 208, -1590, 1493], [0, -21304, 0, 755, 0, 0, 0, 0, 0, 0, 0, 1464, -330, -3092, 216, 639, 544, -2425], [51934, 0, 7743, 0, -1944, -4674, 1448, -217, -1371, -1099, -746, 0, 0, 0, 0, 0, 0, 0], [0, 4288, 0, -597, 0, 0, 0, 0, 0, 0, 0, 2851, -2, 1362, -2548, 1301, -136, -99], [0, 1864, 0, -2604, 0, 0, 0, 0, 0, 0, 0, 2269, -372, 5509, -1796, -1544, -1102, 1768], [74222, 0, -8346, 0, 2615, -821, -1139, 125, -2839, 2171, -213, 0, 0, 0, 0, 0, 0, 0], [0, -41695, 0, 1513, 0, 0, 0, 0, 0, 0, 0, -2949, -4380, -5120, 424, 1135, 2788, 182], [0, 17028, 0, -849, 0, 0, 0, 0, 0, 0, 0, 3551, -4802, 116, 48, -1067, -2054, -959], [0, -19598, 0, -738, 0, 0, 0, 0, 0, 0, 0, -1062, -2829, 952, 451, -2040, 996, -1468], [36632, 0, 3843, 0, -2886, -2986, -367, 505, 1422, -1133, -640, 0, 0, 0, 0, 0, 0, 0], [0, -20806, 0, 3277, 0, 0, 0, 0, 0, 0, 0, -565, 1687, -6051, 57, 1789, -922, -1307]];
    aps := ConvertToHeckeField(raw_aps);
    chi := MakeCharacter_1161_a_Hecke(Universe(aps));
    return ExtendMultiplicatively(weight, aps, chi);
end function;


// To make the newform (type ModFrm), type "MakeNewformModFrm_1161_4_a_b();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose lines below.
// The precision argument determines an initial guess on how many Fourier coefficients to use.
// This guess is increased enough to uniquely determine the newform.
function MakeNewformModFrm_1161_4_a_b(:prec:=18)
    chi := MakeCharacter_1161_a();
    f_vec := qexpCoeffs();
    Kf := Universe(f_vec);
    // SetVerbose("ModularForms", true);
    // SetVerbose("ModularSymbols", true);
    S := CuspidalSubspace(ModularForms(chi, 4));
    S := BaseChange(S, Kf);
    maxprec := NextPrime(2999) - 1;
    while true do
        trunc_vec := Vector(Kf, [0] cat [f_vec[i]: i in [1..prec]]);
        B := Basis(S, prec + 1);
        S_basismat := Matrix([AbsEltseq(g): g in B]);
        if Rank(S_basismat) eq Min(NumberOfRows(S_basismat), NumberOfColumns(S_basismat)) then
            S_basismat := ChangeRing(S_basismat,Kf);
            f_lincom := Solution(S_basismat,trunc_vec);
            f := &+[f_lincom[i]*Basis(S)[i] : i in [1..#Basis(S)]];
            return f;
        end if;
        error if prec eq maxprec, "Unable to distinguish newform within newspace";
        prec := Min(Ceiling(1.25 * prec), maxprec);
    end while;
end function;


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_1161_4_a_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_1161_4_a_b( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_1161_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,4,sign)));
    Vf := Kernel([<2,R![-4513968, 0, 18361080, 0, -25868668, 0, 15660730, 0, -4705529, 0, 758449, 0, -68750, 0, 3500, 0, -93, 0, 1]>],Snew);
    return Vf;
end function;