
// Make newform 3.37.b.b in Magma, downloaded from the LMFDB on 17 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_3_b();"
// To make the character of type GrpDrchElt with Codomain the HeckeField, type "MakeCharacter_3_b_Hecke();"
// To make the coeffs of the qexp of the newform in the Hecke field type "qexpCoeffs();"
// To make the newform (type ModFrm), type "MakeNewformModFrm_3_37_b_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_3_37_b_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 := [871827272021197959834823668999764154777600, 0, 25957407434307800681948964695572480, 0, 259633704442571812012752896, 0, 1041970113139590528, 0, 1732091138, 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, 18, 0, 0, 0, 0, 0, 0, 0, 0], [9884794768673760636726955462874354987044134247302245835079680, -943772191629184136622175364640195252196373604939595776000, 174777932919856881932667950321525593574512936051802112, -18729386111550257326236335471415748973419487232000, 892863217557603983286848119360548259325214720, -99702511198202418898547938279566293654400, 1721340955175379871981262163066676224, -189508897968531290018365415863050, 1104697757607640351180878336, -117545333724888589553925], [71790538374932131599805611567804696752697736814648905129000960, 12268877884998763146919334045136382926300409625944522752000, -1693930877687874456920180684020564607658610395873017856, 243482019450153345241072361128404736654453334016000, -11607221828248851782729025551687127371227791360, 1296132645576631445681123197634361817507200, -22377432417279938335756408119866790912, 2463615673590906770238750406219650, -14361070848899324565351418368, 1528089338423551664201025], [-620154300474284692588312711487885001654397510991451010400706887680, 1480760039301693153772073069487275056056242130489221264179200, -10595136440661386580329697955031049339578112319491284140032, 29386406809022353744864810354651310139295175467008000, -48421946660452966157172799515750121863634702368768, 156433240069979595251821715160639514743753600, -81732204859529976170810295416073153039360, 297339460912625594038815337489125450, -46120916883796983823223810041344, 184428628614350197010108325], [504124533202361792473074728606592104339250846612414537589063680, 18689566731073686124484754616475044856570067243161781220147200, 8913674578912700978566065466397805272300159738641907712, 311504670163830124432339864484387368681113574844989440, 45536024095437803147629254087387961225585950720, 1461866596273207114148976022897359966646475904, 87788388713944373471044370316400487424, 2568575388174211652943164314694066838, 56339585637989657910224795136, 1512842034757447949955748299], [-280662240845039829298073795262340584268751008596101634487547330560, -28300542541634818041445813612441025244825558641490164239564800, -5060316272257961957456447384128920952871763041035059462144, -561638101327057566441848991781344064465930163625984000, -25948390828659086962282380044856253512509390192640, -2989779203300495935510757025189354447814492800, -50025610839306889839519440983043744421888, -5682803323382347793780723725485280350, -32104726231593243886018686200832, -3524831922408234134953548975], [-296724251580651280192692049434764925517247937957475400838765608960, -42861802492795247267455137193109829655721103149878272621281280, -6115839823208902142706578456142039032642988087631637643264, -752548350154524916767472038516054933727890691705208832, -33749957805061289319096452444369146090544391536640, -3774321111221652978211672314605573497314200448, -65173419667924214156640863518006069187328, -7071006018419616274865940452007671370, -40641082383965739638258453342592, -4408901283645847966383235749], [-602573679560391792230674185828693832639949816931600713718389800960, 93991889693952214504546517938993488638013608941738666607247360, -11916879160809760410547914090691353192918755462140158541824, 1669184852032341637970100612097183244211909511049969664, -63578414575684219974289171786502615698156722290688, 8422135923050757348393523116478427293334599296, -120424443503329034594350103812455499590144, 15802299491941535181582780312391523790, -74216485888631937414166244209920, 9847617236055444865848408423], [-2322650172774679928800601804102212857886072860548305528981123235840, -4623942535686696752361236425031355770101937704671659893205237760, -46188275567656067736253424837478900052060595448272929161216, -294879571130559972928777474200968923899573709066129833984, -248975062459633936361348933543030752742827424415744, -1675564527641030503482387995231300109728473603968, -476888525090157336874519721432211525657600, -3143566436014314895084513912873166095674, -297056035909241827789130997330432, -1918577624287383618024930213405]];
    Rf_basisdens := [1, 1, 3569026236236203754348781914563383387716406004940800, 1784513118118101877174390957281691693858203002470400, 509860890890886250621254559223340483959486572134400, 3569026236236203754348781914563383387716406004940800, 1784513118118101877174390957281691693858203002470400, 446128279529525469293597739320422923464550750617600, 892256559059050938587195478640845846929101501235200, 3569026236236203754348781914563383387716406004940800];
    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_3_b();"
function MakeCharacter_3_b()
    N := 3;
    order := 2;
    char_gens := [2];
    v := [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;

// To make the character of type GrpDrchElt with Codomain the HeckeField, type "MakeCharacter_3_b_Hecke();"
function MakeCharacter_3_b_Hecke(Kf)
    N := 3;
    order := 2;
    char_gens := [2];
    char_values := [[-1, 0, 0, 0, 0, 0, 0, 0, 0, 0]];
    assert UnitGenerators(DirichletGroup(N)) eq char_gens;
    values := ConvertToHeckeField(char_values : pass_field := true, Kf := Kf); // the value of chi on the gens as elements in the Hecke field
    F := Universe(values);// the Hecke field
    chi := DirichletCharacterFromValuesOnUnitGenerators(DirichletGroup(N,F),values);
    return chi;
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 := 37;
    raw_aps := [[0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [-55215675, -69, -1, 0, 0, 0, 0, 0, 0, 0], [0, -869875, 51, 0, 0, -1, 0, 0, 0, 0], [-122739291389701, 421960, 2308411, -11053, 7, 0, -42, 0, 0, 0], [216331, -5680628563869, -951642612, 550923, -1328, -174424, -19083, -8992, 11610, 182], [14644202138387952222, -8159026538, -44499638042, 102935664, 142318, 0, 1265050, 774200, 774200, 0], [276924288, -9840345986980836, -1084327120794, 703181268, -255408, -2684142172, -21888180, -1813152, 2153322, 231846], [25186720123948796561017, -19469756537341, -105591771138406, -261250049873, 380189794, 0, 1349359503, -629163552, -629163552, 0], [-806065926622, 791084858107571922, 3524993633765148, -2043732935382, -1721410816, 310487937456, 58967281686, -11564002304, 15136606944, 20149792], [-76282898416288, 100388344866105128687, 337431837699321141, -193767264580344, 89064563360, -17346994577323, 6024986880312, 598240342720, -783226423404, -871318388], [-283740089589497250858689617, -69156053470862078, -377035342545910211, 740138620776683, 5577399627217, 0, 8687069682804, 1810945964064, 1810945964064, 0], [4602641687964936900795617926, 2668812036383775698, 14526670508767220114, -8602610988620960, 116484679428586, 0, -266472205587714, -71636140212600, -71636140212600, 0], [16749703295819024, 263469022668843624325974, -73673133937752858198, 42600103646007792, -57772073648512, -8717437818999646, -1390461585749232, -388149855488768, 507948854901840, 797698593328], [-54375183886752549816108058271, 23047621140152850175, 124043791575850942006, 1106163568848867247, 487967323780462, 0, -976618067679037, 894661045477600, 894661045477600, 0], [-234633704798253276, 1582046398683307104723220, 1032753914916446864076, -596061635254407396, 304748139079584, 51141271355292656, 18565445086305444, 2032071007951296, -2694085552978956, 32035025294892], [326207998899263392, -7009581125289541390514719, -1472268889361521434657, 837809652182651232, -6854466576743168, -85955782246386437, -37141547514185568, -46012444562478592, 60304707967722912, 34473701216], [-248473290617989641, -77075865418705182984400441, 916470205522917381762, -574990557679976733, -38339939095917120, -883160087007581536, -47081191979851011, -256506286086645120, 338127603998229432, -2022766934476536], [25049922716589088941378734154006, -8265337139309695827622, -43858068811686537768454, -915690337585376128448, 335633930737767858, 0, 956787738789134646, 960107303686220136, 960107303686220136, 0], [-326664051888178978126987128435947, -110022287559633330664039, -599997903622044593688808, 1290445530871061229383, 1593455209932930840, 0, 9599032125061869889, -2150383898154462400, -2150383898154462400, 0], [315336774540446142182, 3456003124881646815151427782, -1398123789490805841783864, 800646769310674682406, -130575005621839456, 162619089362078565472, -24494919855838244646, -882784966300856384, 1142829992325600180, 14723957122495084], [-435336609936169946255714581798894, 266079851951732649545088, 1453775954992404402635184, -5422441956802414329360, -26050794596446578384, 0, -28554032984427941184, 4804695488927023200, 4804695488927023200, 0], [-6244115793145040255647193298017553, -250905704646411148502846, -1251421341400597245718211, -94956890825594223907413, 65032006173267409489, 0, -62290711269195518732, -92244373399009114912, -92244373399009114912, 0], [-4805034767958028416839, -76377563614108513253467286415, 21110956327628558196755784, -12196101247048495952319, -1211766694465432304, 960255626833578095464, 367078401216615501951, -8428526881273026976, 10381459051303559586, 691418565799418798], [6103736252171805683216, 96624212995337059880500436266, -26071703737111225207334712, 15500935194866757535908, -2200771656255429040, -16311808150292645253714, -469836339417541562244, -12223330615791861920, 21784545798673866858, -5992345930318517594], [-50241207136215168423688906239704210, 35726256400429131169825474, 195159157682565606768848410, -686202030436013707237544, -1785487621264341280526, 0, -1900159608055509445138, 3385750732927950575800, 3385750732927950575800, 0], [39113766470233698923200, 166152674119180602116297618325, -167160416849495528803393425, 99216154549686287409000, 37881569428625971360, -96117792493974665817225, -2960159514388255335720, 241365171675156443840, -345555902988000493740, 30373604299957055180], [-369573955725274254445397650400527837, 273351246525698417367814076, 1489708746251746009454759807, -2405831753446453714639677, 2300267458986614995035, 0, -28297737179662907088046, -4854809818336930035200, -4854809818336930035200, 0], [359533245507027676081451, -163678085015931391339139676533, -1596050372571868958946632682, 912184861056279879628191, 378226762597971581600, 282581260924103431204400, -26932983294142624352127, 2581023912346047294400, -3287618405695473821100, -98879014030209442100], [2935148850448331331855383420731185190, 640104297266025211650706850, 3467812460478584995524220226, 11650252066187147353172416, 11025880874601885153370, 0, -49701897008818571865810, 1797371473150371836040, 1797371473150371836040, 0], [3714917766158850917022560, -11626113883423670318539529732556, -16372978235766676327950024480, 9428495731559799661430760, 1204311758383548292640, 302396131749993101276860, -283615618864574043551400, 8106081540548364084160, -10574653469949399460860, -51273631788181281380], [31869415710460138110963594210153755767, 53698490047965998159398262, 806694563664204416420036513, -429589927750672434491719301, -459553669290477058197947, 0, -130754883827148576335760, 261996839183586021180000, 261996839183586021180000, 0], [24610438878699527069912533, 73444994597978770294748761738933, -107056775252854462549521153366, 62463287055320691341057889, 6960552292496377458016, -25770504987954337461899632, -1880369449280973988865409, 47088095121637174082624, -60892690673077212546900, -854311121717004693964], [7507420055539787495934352, 97795497673999019405483560133118, -34946094022191478631242744770, 19202654159673204417204552, -98846150618365555421216, 25462717990309546100662906, -746595286849395600421512, -660192896795807588499904, 872807083677680094442044, -7844718534568803794908], [-111316875072936404566543745532814883755, 17000531494982457486401240545, 94771833075346725993371596336, -1919815824428530085247047209, -995012847717907724280560, 0, -1973848327932521305052295, 1062541119665256705751680, 1062541119665256705751680, 0], [-240130254404237503035851520, 2093659176114685764372114583604105, 1070355191752822678330388669415, -610428926761689176691536160, 610695384977564578254720, -177021096143660670492062445, 19545554355487353315908640, 4099837124040598658330880, -5372457199195973749601040, -897543474325625109360], [-799069080125665096212424264226369869909, -98700947063453343140256964672, -536407631618798257977766359469, -398510666389583002193115213, -7862068335952114293833217, 0, 5810155297127927552986046, -2603555643447000957904064, -2603555643447000957904064, 0], [478672456193719463774075172500928537694, -468864403682561344284329069450, -2572936521517578031059309995834, 18933111422638890143994593392, 910237081776168618709582, 0, 54963057736556287559301818, 6310919767061121885033400, 6310919767061121885033400, 0], [2931512355456598603213085669426961055297, -835350055513793913899342440873, -4517047415914411264897287215842, -22345635581646197294171104001, -22161212721435024698079242, 0, 57953435890346192127205995, -6191214683953507942951200, -6191214683953507942951200, 0], [-2454408655011612716780809922, -425433620134639143886103262077906, 10909359266388160407143011616892, -6226879645475705406813540762, -2525163966497094000160832, -2197552773750120252094969488, 184316944371173080464329178, -16983193562502817340353408, 22185329307215724979104888, 76043300389962897293384], [-3094462028777388893948256352, 19765944306971818488925486660299947, 13509538508873303834925451460325, -7845330370509057233909933952, -6847781765242658938328704, 1609044782406271540414682889, 226102842474774756347252352, -45892748494282064403320576, 60316977217989388205983536, -175798385140093404331952], [11157809554209393386088816617, 36403633353417600262660448816856217, -49064107803350159603139040433394, 28299267455016209838509349021, 16949759996053183386802880, 225685554093429420232385632, -828795956717699114441198973, 113566626546406156876316800, -149324312721021208862232744, 500891553684499267470952], [12548508958589746369352393113858312040446, 1564300519490582384122203109478, 8354502510289204157227149558806, 128264692142505371050200876112, -89482566248823734229457442, 0, -200147629516612554799833654, -171248898325945262487192264, -171248898325945262487192264, 0], [-2777834237333500632220708736, 219990647080133611790576165340856464, 12527872660459556126777343259572, -7044042032219396378202483288, -4306932862909805724552032, -6223570892111822320589071856, 207316845194091136208164248, -28043877167755148963626048, 38716022885288910354632340, -2038754568177585240287092], [2518348352108149597005667699309661036754, -27566982155496164181506106186160, -148890446272843931431554940135744, -882687849407885813295776047568, -246821372608839149155381248, 0, 1954284137109667807063133808, -171883523965894385626264800, -171883523965894385626264800, 0], [10245654395494168404964069024, -164707366854311922711491474034078595, -46790010877742153311808596067505, 25926254754519000671389800024, 56174922037242936197395168, 38907092225564654127139484687, -691391303467417944672224664, 375647707701201700557910592, -495589119599019941265456612, 3387282039683322202818884], [-72529132471443801316888151080774985470325, 32123673179032286864337587555840, 175847675916470815419787022866931, -931791936666826997894938560749, 2284228621237820576497019935, 0, -3027465288137628331274772930, -187838713275105226757350080, -187838713275105226757350080, 0], [365435610828097625645306195938600003709053, 2446557709394790980847535537597, 18654365928634382929628840167084, -4465548482619437802681042685097, 2185751808888834163301828092, 0, -1701636281766012598524425971, 248218810554698681654150464, 248218810554698681654150464, 0], [-314998497778310055968872910852729171301889, -182705782567748128781031783984422, -1011878617633692529516663679240171, 15126201061097367288665728099115, 11763008473439924458255126921, 0, 26516356354201805069842561596, 1596250105606788263661372000, 1596250105606788263661372000, 0], [-330503635845377804204464264795, -3280292571596017683521700335551116259, 1483725742052332999018931691419184, -839216260175405169523690882275, 166819021589230035654304784, -526633469673641564329387720344, 25708572022156585265323939107, 1114060603449466699560448096, -1473121079339572426471649406, 13527647463857068479604942], [950252489939081627266313392055225164480350, -725684746376618491966694322301610, -3964710466639437206620189173083834, 14591099554217444986852267886736, 5834859000732916321554399310, 0, 70347132601729799441917684570, -5397910649412093496986899080, -5397910649412093496986899080, 0], [344596919837480292890151445296, -7522983574440395565669238761271985610, -1535719436969125839679447619279628, 872931662323296362908921829556, 1290806684097025075574125584, 494062313430888400712388461906, -24218934297215983393470830100, 8678942174577018369083875296, -11342996365324188071207674206, -33038668625422600165275858], [-133840570872871996048976424364, -8234402432547407709825881243264481564, 601319460525811682156181269339748, -337891017032334655981647235332, -1233522177781981414154526880, -372148811338921836974357570544, 8227487762361245242817893956, -8208297944771727867330822080, 10920816000308426485830664428, -169312184297196320060229644], [112008286527441118437825283186299175034658, 149853033412828366831584808415272, 853719781831514426774462965728184, -32195720394386658007173402052272, 17422659243042062628352442392, 0, -13412960371126190539810867496, 19832968848342495425155792064, 19832968848342495425155792064, 0], [1307948552645555713569223295215, -14191412931150731488551185470435115785, -5669136630523752119222905971667080, 3314658875546262025875096771495, 3571462200909283799116240240, -1399847781727083796069725765160, -94756510649121474861588903015, 23670644216943502052562688160, -31709826892702054701654391890, 713802309526722107536372610], [2525775543794070295100497426496, 30666690421026062125439172499483577952, -11193292429684811298505159684090476, 6408703239981614182790468137416, 2275261698905252149669837856, 1566686262136107128512651383104, -189952669577843950530850147464, 15516320766801218937258288064, -19786591552426043380844415804, -571100501752511841515284772], [9032030694826079235326260472470, 4115575950644003984622093552140377494, -39827573101573768997148022925647344, 22941118035223451716397083419750, -9693908395934570410043834144, -298456187513706468262894567296, -711929862283175799648128069862, -65158098238350913317692191936, 85204866581873738320607600796, 200125914256798078135167428], [5658728878000869730527648166848, 29806579330108818063398913426113919123, -24776197496335773713507874032577411, 14348875471153581291831410089824, 11581077620345238251466353280, -1660834456889927351857639737567, -414095146224447198409421108832, 78340623443652701917808259840, -101319260617268923644084064176, -1408965631637716089967687632], [2986372538522982031720323407052716712330623, 2938990164777313063622450211654762, 15207836192190143790904892090787909, 649432273402401007615926518711883, -17966438235054841074403723143, 0, -147814762292781634191778703316, -295203746115853236405854276256, -295203746115853236405854276256, 0], [57820398918665880384316174990394982193798502, -11648160229020511584283532897399198, -62739433059950086715079386604233822, -517845624305410202062008373435936, 4546925846862905703257370298, 0, 675355270523326871146848661230, -251730074198707652797766892600, -251730074198707652797766892600, 0], [-8720104755274371915228711520432, -29244621108818141634671430492051887782, 37627675472610713227624917351341964, -22153346221865484284536470468756, 10181551046281896034765218416, 16607605394877727826069983904478, 685587366053877301744985196276, 66129337797886301176004686624, -91682166219335786210357737170, 5210023930064102184810306946], [67745999536472806950208175404252640649526365, -20364048518970884434371912850985771, -110753565453662781301800264975952940, -9076310589103974689618641231449, -551554476028397895541680945596, 0, 2166275437301883815828240129077, 726525068731223493246974518400, 726525068731223493246974518400, 0], [-6479920028229476589155737864416, 321773789781214919986924473075166109093, 26789817784853609207049491148368127, -16349799785531187337468396662456, -69336318872296266485287812960, 26523732614850166238907262211335, 377219958859303418438956540152, -464977260763014300454306386240, 610450241162232258482651494740, -1083867417389997737795241780], [93831370658855536140262806201318890589011789, -88203542744942573039268086827421835, -474237568078937086456985531505181404, -4618749457527714572775002201087913, 3561653302477702657897321573332, 0, 6512121527323982371540135048053, -77324047614444615505470201600, -77324047614444615505470201600, 0], [-91850000375858192230703566447574, -1445691560780984629808634104617810022774, 405303084034242992525428079792752248, -233640121893944802646326148315542, 346393577817640208053603115872, 25476880957488103967893708249696, 7683794335853294926010881946262, 2332102344858831399553914156608, -3041025315766800327637208834580, -16081820344979506906109115148], [-149969271453839448865766393755863995183464778, -95416711552200440494545970654190858, -520891943113410928467620731348452242, 1578231774109232971276008977884984, -3730432802057459336263297936202, 0, 9120957987438088337866736739290, 743799468193071571299009977800, 743799468193071571299009977800, 0], [68460234478675266204047805619008, -628040974048920610740091863018028926521, -292951222140316825435388048418900351, 172855458276773651538000178195728, 655139067038485501300259407680, -94735405872575733253389348926755, -4111686321570677509651453381776, 4399877417768124490709917249920, -5761851795429299216057015124120, -4893149222983770156713381160], [786337539945572407878312447122132292955879301, 811761724942092629272834735488433513, 4400696183517573884344001193691488376, 12315817894973523847744434213559127, 9007932405847534823730816408568, 0, -68117863997088160844914074762159, -2960563255522388117203126705344, -2960563255522388117203126705344, 0], [2607137701836348666263304068462547277321557726, -116943675855815479239554273648137022, -623632326966167417577720453459904886, -10425222165316694732786937047819640, 13471900321174689512352476951266, 0, 4381193053131611106319328148526, -6785206018915641049795455946600, -6785206018915641049795455946600, 0], [-72912663161662057158783614344201, -19396601805310283376758619220121906544705, 325949107995158847670647954497831496, -184826711799204803502557169265521, -153299486712510737306333585296, -111550053476815791655443039881064, 5378822516162542749515883140529, -1000605790924761638140715011424, 1375744209483826882389932896014, -66875794216667031376732031198], [1873779125040277577107237927086623512477871790, -668646311599695148878068279642037890, -3679352574433860620253119621052814514, 35429804017620244645788236342672496, -12699001094768359458354766202570, 0, 80599516687259474383406146804210, 10638656087591417291345077036760, 10638656087591417291345077036760, 0], [-633385487180157701627401299909888, -4719175135818625369758068220287525329784, 2730785418939937090402246000746150144, -1600349444482208334574447618811568, -5302169990850602146031099097792, 562519107071136543480567931323672, 39343080754013820361523091186480, -35634503147811598819534201131648, 46607651620736868687464437733928, 99350791689008372264784391704], [2518518170054236617945366822766974, 3568264366816388940302991448711424826174, -11110831161425881403249523595477109568, 6387031426226202130472765681690862, 4237730531230637606409900645600, 807770297181988802528044328259904, -186385091590503229743675392459886, 28373706976994311113255437540160, -37352539183280330119677576633828, 171987734226677124965904464964], [7154201962157036274074628294251953638056443343, -3075513119311868389417908690099507934, -16603505156476974492817398231115481923, -104844852243683050187046683690986677, -1088866558894208009876357250735, 0, 193710644324257364790379640561684, -64147294658768088843838713058400, -64147294658768088843838713058400, 0], [-5971659616849612017210633902333154624147964514, -1168117119554456927769597622198537082, -6250259942417182142063781225316743146, -86034983934242936822897871155243600, 66407205997185821698700732424286, 0, 153229254600994527508183613287466, 126899629375815778118666171207800, 126899629375815778118666171207800, 0], [-6747302190091861185010021413538679117432313479, 559944142866901201097948227705347947, 2928224105943016524653425298033231570, 98345642756114196464550963856258879, 88161749852764904784133349939962, 0, 25126499642989573139518409969319, 25964318720459625807568792799904, 25964318720459625807568792799904, 0], [-3043642627634174155893953729688304, -40335972029563635133325303956971489956640, 13247993452178263768229479154407007220, -7701093224661958564955426857727304, -17357162989985814792698645781088, 1149584336683784185042393981584208, 204003620381943977865110872675464, -116236447051436633864488054763072, 152970323674169937307938297703092, -653595596150138773274208503444], [-2780378866590684105136167840899424, 63999491052348593712983069117351130451501, 12731631186419891036896806239981648043, -7059854482461642179805301294433712, 1646301801405917955199115716800, -9307084079234926428462934393572929, 217123896033628676848539158777136, 11306047212993508296974253517440, -14241884983990972088021040160872, -598800033356388754623445333464], [33505679854418238820300566555233658204802262230, 963477258446514285242042971953787754, 5588267833456471662951844347479985770, -290679673838047620735373083578619104, -621347583570392252053443232772126, 0, -274111092300126697382680386112218, 100749378324150478185870279345000, 100749378324150478185870279345000, 0], [-5063792727078112598171885286532160, -188715300428102048268327093954657702386660, 22104487976549216243619495064238695170, -12854009442407607936675688814061780, 212315681072090501182508386480, 3973355389567907007872881137809540, 390408484937779536220217138438580, 1793509339822270753181876546720, -1518056587437816139921782045450, -865467079670108613823340088070], [-22208101189956503831679059153795014945416454318, 267004886535506278108172239783754104, 827790880575009142899819489158757304, 521421493500362679449689982219317952, 784986008754953344501578176991064, 0, 148105868199382267101287440394568, -355786095913717641203068719786912, -355786095913717641203068719786912, 0], [37522761603341517191150467727518053, -279992582348032469782635010238848234206547, -164727024760651714874462740340143532196, 95224579008774489238504570944737589, 18094925431991533415842450911600, -9001373271122170355360973322779912, -2854355771711839087234683793828917, 121613312980860432517814154153120, -159057846098654108693485746138066, -343836815355576781948599129342], [-52172590114769643339709732425687993821112812114, -25810212199846342575717968885827166162, -141280338381505094152013710365762400514, 743510953120003359233266634441088112, -269615133332787081047953860785882, 0, 2594641688732512285004439251676866, -58195397591242129895923009021544, -58195397591242129895923009021544, 0], [77950897210648377677788106850115748, 30830488129155666577729953070701806676148, -341868971560304734050021385311827739996, 197915092464764894367553493007051084, -27891848919527167400904423861664, -32789821295897186809893096475380592, -6045162892396541819720706722460684, -187168579360111659816591268277696, 245448656961718688482962927236940, -147755209278665180277805965164], [-94974011843158405906356891986383386893345335010, -42858112934262462987650438177402321206, -231888842144828304156526407103558521790, -1029836181662374752440022339354013064, -775789551883159492520251426236806, 0, 3099897821745548614022092827885222, -304740692041613038162735692455400, -304740692041613038162735692455400, 0], [-317990515306464624716661600858340776529711862469, 73118574648637954972994858105866223912, 394450596431191844090549916791553346715, 2726230211149769922462288050982394579, -2633322976998872318032230574802073, 0, -5906644417491344383854605124151626, -50071198976984570877116534836416, -50071198976984570877116534836416, 0], [21371479063585210499246005038872399, -612169200733948532668623345753259912292857, -93919197066247769216375639464939154964, 54220168037105645724546424230941679, 21141095965073707239538900342544, -1980360959639868388280337428098104, -1607238017734692857576695348535151, 141599665745233401653562321917536, -186296448812021775789118606876446, 741574347739237817854696397422], [-262121105721482512126730366425524320, -221138564147925434274049613499073825076320, 1157206604074732812837399323363225068890, -665096515873046019303735112182549660, -203258932562074720428766514351600, -72914681496106242664910984192175120, 19804833852994911144980849314533180, -1365180073469466210623046518087200, 1787533231833490982414637663102690, 1763511486516880200367553608430], [-121608427809597627675390790102041612869080134126, -354539453048122646586509315886819441320, -1930393267147357422021913730823973575464, 1622111865950027961689128815506564352, 623935343511713943186606548770552, 0, 33391698750095487715102293243697768, 662392515077601785232717590607200, 662392515077601785232717590607200, 0], [-191839804584495414423232056543651424, 646687849920388899929339658705194725437251, 835696314072366207892368787627119147873, -487050164032662497495054905208743992, 49308330338537777933126119524512, 189415493771884276146276095328955121, 14841560549595145026976903737395832, 329544162880564791191744957656768, -435186958150774228503031154010540, 3410128321106187594463885005772], [-78263219694443417154198614872043220136755544873, 282209715150518429037374811302021172982, 1534410128070299684833978301732321530753, 499131664803349707702878224504855259, 2629308085102682868988896086130853, 0, -28763806041422326725623641517142480, -6635243963061659529704196272340000, -6635243963061659529704196272340000, 0], [426955456996507220726593775568947113, -320735991666496445000920713867002203404271, -1877673831764616464526973643759511040548, 1083487164916204382847667361856122073, 219132520334982483363098827369648, -35660447372992231422636115513504168, -32468418760708768016058784999938777, 1463173272836423121635318778439712, -1935321386888757219481471865816682, 18358317118754339209884872422874], [386494118954487723532774149036587752, -1634619656817085532368785704901626928870648, -1692896133681899981246736592234354099464, 981396680032571704499035608291965976, -216805508826641239987735345042880, -213416090552327081365050609227085408, -30122857915264589688795087451849368, -1463585491143651974936578984858240, 1899617379857811440624133825410376, 19319002447316580294435546365432], [389055139584122600728280486118738707461894221571, 344447371292249507522032166294150431868, 1882160005922324430885776393316611941919, -7158309379566137133365210299284206045, 20218146130315479708770557139364091, 0, -28873294914835812575363889842476014, 3269408789505366377039461894296000, 3269408789505366377039461894296000, 0], [294602862002197094642142086401321819, 3780621961959036632392864008569441263647019, -1307079817223688182035426420112501394438, 748630916894011578846906713576149527, -561361763981576579269555017303872, 119342153774820114641518682321785824, -23653351275621515780765272379069367, -3771770309263267406229174418983808, 4935482974620320554497781689551640, 8178399959307866661329486643368], [-1743163175938849194952306061082740841447906591683, 821197751864421782115247115293177490429, 4427314767750810740374690923698648517164, 32995094502496101090994845829501736087, -5699497073435301527708011901320836, 0, -54270721733591598152153464515798707, 10763828951975502828170019003917888, 10763828951975502828170019003917888, 0], [1131918062787749041634635999775823962, 1715059416609302653190984955270152905046746, -4972180579065261227509743635409519843984, 2873375316016580724715980035002514442, 25873324760953721371893378375200, -273166015761813324806815459880883200, -86946969510292869536911885776366474, 229826665282310622547998146948800, -174292371229277630397883777242300, -131940965309385008346177601460900], [488151205336009405748707732816615264, 14161557432069308638970013516642082504106839, -2148774528132614420206382204866452771423, 1240627342874589421646868374624110032, -1111301274641638677980803056941120, -154996700449170145693285479605214931, -39604414658037137605682396561791056, -7532378782423814293257991384193920, 9708236999384243359763594574097272, 170312531224113444009111529609544], [-1662852304806879669939200342618500528, -9628930228562649793130909321538711941998178, 7338258487242557551534159053160488336606, -4224293101080526947689720674323352824, 2211449657256159290236860056590304, -7948461408028673575242006632612838, 131738575427714772068445234666679224, 14801584775786324913395246001710656, -19497243011865208561618867657132740, 101894120118049257007639288692004], [-534404999722424678789511573022111946679334025839, 365819723137061367157892378957309521383, 2017973900122874371400415087908180087454, -23660842343138931463497518613018619665, -32077765246891876324497647226424074, 0, -67848945362670431153331164758005189, -30924173965006744973934911649986400, -30924173965006744973934911649986400, 0], [4060577290231051745226092903704949772370857985318, -638033610500743892666683103972533739278, -3569503627120013763110764873757439995086, 82797272614305699431224373905819453408, 67803410238308940471552996579301642, 0, 104520542455119498213573903686994654, -5661527124071802752562032217081336, -5661527124071802752562032217081336, 0], [6687351072522430859378491794458657301593518535265, 3167287501186965696882139832700070308119, 17232042618358889645906362947298279664510, -3697632622126267383002229231923665889, -119792815368178854512725552074382506, 0, -336374644258317346804381218813978453, -43655614570980584415827918370856800, -43655614570980584415827918370856800, 0], [93240656251444054424446072572001856, -11380708902899152985455673529678924275635733, -256770618222502972686474959923922127759, 256559594087729275677412242172130136, -13769165450120900123255893174071712, -4587273099183948389250455192677083383, -31088399820908748794895087788828568, -92223022821811960059026736480936128, 121335214024863297314332779259648908, -484481344399093305648884090781356], [-1947021387471828783404912505208557455, 4281250643772972453728833278174155745212569, 8524711070419413156885959023242740667276, -4925892705598746885158088656609891775, -12275195660424699006616421892467024, -356039136104510631810136619593469416, 127329788923033317756159258819346623, -83021115103496807158980782334194656, 107406034798622840624372459000702166, 1458408950017869994230783131690138], [3686820991484186756516570648995519408, -30307585416337879519397221013408351615526942, -16343272281081562562760905621530984513206, 9360192319819015782694655411682695304, -1333296027235600918931133623307680, 1869398782552555017527805832802785318, -286477873462000278639321488784382152, -9332652851304358919732874980152000, 11366747004561102971033721502549644, 898989370923638965233623295678548], [3393054741527154830971983887440629885867443958557, -5652582972978636505444390213695071656715, -30260112717546720748684659234837249974540, -406449069220906393639496459447837785945, -179842000144015318126486490478829340, 0, 285917651468327306528202986525236245, -16254052079099771525856187946580480, -16254052079099771525856187946580480, 0], [24100872598602884677975030197472442153862270673742, 5483285758014689818185675390989451349482, 29899227770215306751260183812835294326738, -62674150037511560164996316054804676696, -88545592945239172049696712628755702, 0, -701430157147699285065740233205422650, -272980262705968148052756469615345800, -272980262705968148052756469615345800, 0], [16252977913225291437598030850786743187, -50409481874015564867083248386281037720747917, -71943362832028429270893890430128932247898, 41221115291302987310885742496578998247, 25757389740068808336750369794312096, 9739239054008753576216538234969058864, -1204791967678184527177951790467569351, 173019272445672957276523842813106624, -226500080482154857097489210956234764, -272467097745998087593947105527252], [20593462552537858092738200496697465504, -26229192022761517258165865293864622396898052, -90986060724799768032767922613684640319924, 52350220615847343113282620820093204784, -52570101298631618034047508222366656, -663902900147684909178452252771278604, -1676726947884227361295363349708009136, -353040235528569432218801642853211264, 462363063454593843058809376563863304, 351205506224391227084418497212472], [-12714392448380561770463966650604536430, 23851252515411785975906345056456334137429570, 55443087812569002384753648027961430348460, -32226460768636880375198232336196037190, -32931534975528023798351731423694720, 7304794957907930527048156921785929520, 921796198629826250052443353760843910, -219875016106555804833679632964698880, 290854777952409746547991873038103440, -2788676388548434059851425741741840], [5766012976910116900635361065000643978322085596498, 8317154289153778381827242525294629463872, 46191600964380078696403251617088188791024, -797149929459197683376530166867902386832, 446567153046118390174316008423937392, 0, -1403351294038138845839899195202647296, -632112156723822593182672956795743136, -632112156723822593182672956795743136, 0], [3700288738278505493241049880146558060865112754839, -29473059496153330124557085091273470191130, -161154807763224860396002080522380281367279, 703628351550220656590513469229055347707, 1265906421127955106371383461520626037, 0, 3142279926620184526179207038392658368, -139752848067000959581114380768618400, -139752848067000959581114380768618400, 0], [59167692082710448416149117667972645647666237036342, 5058135382074710340537497309879485502922, 26405442837706559849493523622840700316938, 928166418093702340391156806299970272864, -1076960935741405354109291791513681662, 0, 421770636185152593020820576290652870, 1124205286470907876307969742258071400, 1124205286470907876307969742258071400, 0], [21315300910437036909589287875487509168, 52148526550085191187675735949597229395503094, -95490901708161989325148463887950918225384, 54119004176594052808653496984834862748, -6894903947384870857037385823889488, 30478362413274705491351375243892908658, -1650674187622303270631021363328846780, -45505292986874205450868948028408672, 61400139064034920077216829250534742, -1829671250841954960222733505096294], [6164879402993984854825941710645519135602195865365, -22330252222202043372651273350664078310255, -120186866460010414662419281348811285350144, -1065773774948197493667044545689336897289, -1263123480552233950703742523943710560, 0, 1396946007198164672901832961233242505, 147716491018452053022417846038914880, 147716491018452053022417846038914880, 0], [29501421331629416022234488038644720940568894043187, -72293268413455877385342503249772235854460, -395502880489031485157750402875242739760665, 1901043509168959480380836203910827335715, 1346557348309104080130576605717190115, 0, 7243274746338208570359954614529871530, -722266049737918073306653035775072320, -722266049737918073306653035775072320, 0], [-18408178737533775347843290139507502176, -172332774562697561968377768317348708582900976, 79672113151423619193378432102212772220902, -46663527737973833139738238989053251908, -48785962147672633071699477357060752, 22333361709564767829605749061071473504, 1326025800696786769255721837068413348, -330529198582511193372489486126639328, 426324236937546573159174557073089550, 7145063789365517719291037089969058], [-142256087767891625525511905415073933855164912847951, -64498417740284611988002836023353754002465, -351124112060062405604096375510532920410714, 241560863435942928011028267463087392447, -1462734720019110426173214182444917218, 0, 4827588431674330485421408560003769283, -1478418287815053515268209739787541600, -1478418287815053515268209739787541600, 0], [-1847163444391741521725341127742034426, 247206255638827510014042632361068471919618550, 11272379374266214770141085671908732747148, -4865107004221864919589107432665126386, 126101194441893288626851676981686976, -47222242150676549364196157226013862416, 366707719582137695755091602211856690, 848614350379492897576230256091465344, -1107401992795212402215055454910207784, -4997381070941681215555897428831512], [-20246599967954587097587645730502008608, -951494379134970534241020771079954959598799469, 89007933131702803356184615072357916191233, -51265095682584926425207876804243666968, -86976242351955961910913532778127328, -6463433963032701504160291203050178527, 1410759637016532072737750513847313752, -579388452749178220691077848566253632, 769445447579212412341588903770141252, -10487359141536480520628035444262564], [-15253189862324920381093189845282925391, 91963962284664291214806377024286119300575809, 61756892242483685104543245497319953243862, -38907134646576706290978202374966676683, 129556703776162841336892698272147840, 121327459966863706232888136912584060864, 1397853442262838184863574616013594219, 867385288100024327072803582731557120, -1142006956108248006568183292684864208, 5401575033911653468393895823972944], [-436550136354799042428492607609659023502113826736682, -62055618220896002957204222112191045988838, -335286580405947457001945439515460699831526, -1886122655756006524357048576966395792352, 2402039591378661258308228224034691282, 0, 4414598642742105220932616716655583734, -1365935771846481721505783932604880856, -1365935771846481721505783932604880856, 0], [-469522865289835475588540180292307178973227782526994, 141636565522728170847316759533485028963298, 771333605518410891613821427171387970784634, -785244363041512836387124911483982018920, 1438786479657690185140322855779215826, 0, -15178288411678598249851044503728264754, -3833891740400708748432714134278352200, -3833891740400708748432714134278352200, 0], [377244730542078840371514637110932296320, 21850447689433858405825199461208664447751621, -1667203411064713796683014788862393902860185, 958219619614837610707670324129446603320, -426272857395697763727195540822201120, 57854948387356300758069326258037433095, -29775338497854638252522704203527835000, -2866656757575527143810406499283961280, 3745366691282962777940306157657138780, 12189054885356565157945616847086340], [151742833967348027840309046166135067411, -404543157279499517746325307720170477420063525, -666962156434317649434364008493835879084400, 386057189515868177457440052285636350811, -616294417489307268211808805441731728, -98690264875143359724692372073589968552, -12767500302967046090585712750559488411, -4145420677157112339580119240219067232, 5414118142100981072513085344370165102, 19694155425391841971996308671489986], [-1012690166764824446071497617587952128919526279405527, 46363314515652248624985296444893021947787, 254531194855740267840473879524935005087074, -1929958624277382196770160316227043703377, 2562314062175764668528147544825966282, 0, 532466688472940238547644248596560359, 8803286751413990967603864268557946144, 8803286751413990967603864268557946144, 0], [-614892778272146327164625680057355114240, -2742758742396024212502789075498873142651191865, 2723404640846697545478325629003182853505005, -1561304090025954628855672208436705974520, 287418847678296476282948933287182880, -256429141537094604470615842924892232515, 47791375751354111248278841356165804600, 1919832918172434610403987284065245120, -2537739741254336147709962142771017340, 22424964419905578914149305051983900], [-343959278061328839821274725957947172942794699915738, -597335668040130894789047473265166191164766, -3257496450434753715226561174482904517975966, 7012205683851379151281066528155345207392, -6316876117627085184599226101782332806, 0, 56778657465716882774496675578389154478, 993255765149898154898071487251541448, 993255765149898154898071487251541448, 0], [316285422596293624711695322232272393388, 1424642712329321001445024422618425723630207788, -1401184942864124291285959583616047920569216, 804322089475686324650368690047547621644, -1004742252708234379822154123205808960, 41026560857555876419647444236056882048, -26080887161457447188000051296935552012, -6733918990735939795677394965864245120, 8849740643648313907907663602077118104, -25099408242938821852603123790660312], [-1265847399396360408998814711249614310021763342089293, 593370714621133850792126395515631478453972, 3209167224540459213092721660339206343902423, 15307058359562365022593248772682521931459, -11387552836296589080224138503829422317, 0, -55129207407061167009619678588795941350, -10560035527856502393035375477897171200, -10560035527856502393035375477897171200, 0], [-1397817706409907982402992709772985792146187666969730, -602676840170474579325865525542009689977226, -3279175551836705879060151830311687935951770, 821109161827930267916776738977005745296, -12082198642967074468590611033791923986, 0, 48961033785770816916728575387291806522, -6604170816137019557515630757433928200, -6604170816137019557515630757433928200, 0], [2817610825703853293546472471215982953063691232928005, 380965912429891551991445646065422454096705, 2050418130594938216656221805999899146631296, 18259596662385969217758741946741330966471, 1010624996476549211473514602746877600, 0, -15580977339889830954247571446276967175, 17980692502398366492262214775243715200, 17980692502398366492262214775243715200, 0], [392289313104420450689109805400867736654, 9880916152054919503845781093151480931845909918, -1725662444302617285186938472040215011019276, 994328276395218584753373436277898531174, 1025135167766968444408722081982150272, 69734910364970271111848163315309405648, -28398937579693660784648222890916378022, 6863685572851618648044383492071488768, -9035924876654708428260193276611216048, 41846175322623387643289636900421936], [-2240978821268142529101859832097700098039257325615449, -157121985304774696278384628367196587466962, -793356777372269436730364346662241232010759, -51119450478005459344238454087261450944933, 4957185996227751135306713536389786493, 0, 7835446463867684924985603217863493016, 27143797154528696815199417652794561056, 27143797154528696815199417652794561056, 0], [2972102866188633261004586674120566737897057973915374, 137612685075521871099495766601574783349710, 667350344699404125258490625863537513813086, 67850579173101969513864579540035410324272, 5693826032597345142702201375836184582, 0, 21787861944107114259196117941950138658, 4206290010233316595615262457548386200, 4206290010233316595615262457548386200, 0], [-2411763088569071670018088337751959235024, 9304330483070243012797105804628267710351443026, 10596058601759078869564737677702247274267398, -6120220782589363440141164867368946342592, -1404002703761901044395116706941052608, 389421491093635767916941364628377469846, 183005728778823006652656665618558935872, -9458203379584758097410494356377232512, 12320447818981328156155926389272102440, 78635290180192553581695685491391512], [-297860200422275633250033882274089077559975109915038, 2221912520228492651764961278164301255122184, 12130475581026561873245561689693763452550104, -37497763938053903644436266304666160767088, 46847951035541016255411971608388751544, 0, -232154538267367670411231982909695768072, -38019343706611467834023285400808812352, -38019343706611467834023285400808812352, 0], [352335088483338496445532183844789828288, -5198023600117664307915763757982791409173566483, -1596739444759493339132915077540156696194873, 892489250974718178939927961270897944648, 1481547711945969895171392538823177248, 1040431483967034188038329329341049939007, -24301085388816442718792371697151257352, 10087053050397495649717636781034802112, -12899786130902472291994126834658652732, -333159512486439680507729135496163876], [2143263460872076614268510666557362038091184849989241, 2795131479053086558443377181931756169979923, 15085166116972196547769427659278338980617674, 98925298134506144630283990868116886141135, 14755121946381233803275031070171153106, 0, -221240336883950018542731021311836956609, -26184656521518283174325877231266392800, -26184656521518283174325877231266392800, 0], [-450361038182952619323839136690869495936, 25472061444184634890687820208569314152222626095, 2037089791577285269725256634580516066742845, -1153492895108942788197527987566311531336, 7384314617489051138955002621081383648, -209356626892042124774619933512281045643, 47841119317516891757466450196281637896, 49725754141439882231001973725440347712, -64817507886028462914190289735741666532, -367959141493941525839471907225990076], [-1345503302398081073047919148635319849456, -11806499288175986530538705941354214848536622506, 5687727321912854682250242211036933298695842, -3412556052419389714762969157958402834528, -2129062241983742705854228823638983360, 4452185374922513310897857870902965141474, 99686971730854359404842280270558279904, -14342798898821581144612661799450161280, 18682860568222793473955893689243919272, 119620544937174504989295535802916504], [14951816346077185339819189249889532439068572545357921, -359996467579685250657295387892275107910897, -2020070884517500849834010094941381355463834, 51601730000558122469165523861409018282447, 80958409191443299426475323155747848158, 0, 30655668858970548351239604365778745971, -68837432614248776532817262793185136864, -68837432614248776532817262793185136864, 0], [-4079273779050091727249628755817875144448, -26512050094585726078181700896515318196694268223, 18182568801966003607329678465609814601065371, -10348048744658969221661183651047384814184, -4731164439966146443811824270562783136, -4720134174435700266049052758556900303333, 305766809783650826809644015929097388584, -31548874246701178199242707902244621504, 41823989842120152995563860798657843660, -494264560718191382911164297853043436], [-1534077725853550931723526424677338423482976156381949, 137288604875617925250213120432906879040588, 915702544767588827800707618776676486788239, -140508413653762019954104843876119392507325, 20624161335950697768862373760732369451, 0, 46738578506034793609991988894070320706, 203900971439721080498164526037970280000, 203900971439721080498164526037970280000, 0], [-1139951146696776480537214974357098066585, 24642585445178725301353332054163887382962947591, 4872092531482664052311158530021344866749150, -2884175090491666616861384133327291524085, -6114850590793784198429529159537703520, 2221320932583050676491261440943034694320, 77758982709034171099233662822630907285, -40459358135974534111726541947585122880, 54356467486119867805027890145778784180, -1382276450231790567668448914882234260], [15157427514338290818577911069053200759453971551877502, -5941306463645104610429406806835048369489946, -32638153548354299166649725922207470286743946, 268535427634094271205288118296647097765552, -202035850475729942250925074574882747586, 0, 636260198864551758678712290381934351818, 21628645292684023306465700248309930488, 21628645292684023306465700248309930488, 0], [-1502588080954997859401754197280815450554, 13423637204759051464448956280860319162907146246, 6981457225356974177931391411043013636703728, -3831294426500034710185298182254915932202, 11555580993397566304263607700214844640, -5783957089710561305071715451119015109184, 135314678157516233593946641599171379626, 77152530391789121173213096305779387200, -102061037702608403552647805360269849572, 980843750142173692707635152307614276], [-26735619230853780638491967404523619924467454418466482, -1605985155896564985234515452761579536577874, -8573257922051210990267570890403408162859298, -135132279195801140637788072336043016155312, 70188164468118850504057636902480082950, 0, 164386194347567521672345093229097803714, 114946990825456108777710266680621024600, 114946990825456108777710266680621024600, 0], [7354061237870500546812232232852346931376, 452782139619653817336118401727772592670421882, -31992330076946757816700969968569195420458566, 18665986540688528425234265515202452807896, 161304701473917896956187672112591776, -7848737275972249455538377165154640258066, -567123670711506558843070621627820711064, -145512297164791028340217373227355456, -2586035527173255563233354428874567884, 2886535564088313741083371354660420588], [-36620355736508453352423084646569501295578575342424599, -6057937877526581439360932139539098065022013, -33384641622040289209136009872146560994515510, 362457518033790260573000245022886590130079, 281657881884889469726897224223133352402, 0, 749732347397800220532120893835619253999, -26753161877208840424926092041058578016, -26753161877208840424926092041058578016, 0], [-914715957871106641883297597551059343720, 85138986512851385559838766387252337143202894184, 4357729992308998724744281071922233322882788, -2331773022160963329344235256746654696480, 6731365241098339806207216627889332128, -5669620036074545162970694888028830393648, 81971358885701888662093301429621111904, 45025463462838073624655096208579984832, -59374277243971136615772170930069629452, 377447540656837424979366214791249964], [13440082466123561984408418257607225220142516108559102, 684209741943282056955272199948296750262262, 3103501802585988711297950275510886688496678, 515632785874439888624028904605972350257104, -459424680692126419550693730045803426642, 0, -11671791038090748171999293732685541190, -169988966950869719720038170570580357000, -169988966950869719720038170570580357000, 0], [28950253991307993013374006315885117151008, 116975716827118334165213206508603270072569225908, -127667698528630351294143944817902355728190216, 73528794982735126135205452896146568695064, -27068863452060020620311595737509297184, -357371632559771204247202013128841320132, -2273362936560424550385003731292477917784, -180873346051008131261037630410076682176, 238940324136553088215242716427130736700, -1958957736377716821976991295528959964], [2031838177150121423875558726853934476392628347718665, 4405751395049837531205618688319175715038539, 22861642187316413507101356413422442472148610, 921992824860247753415498126223479727995791, 694985510375518065816286801584510907114, 0, 132420103312481399780894278247750151207, -22869359760346522317729693144622365600, -22869359760346522317729693144622365600, 0], [-12398824720282200514539324548035731467718, -258867888678828112817075509049913206508129074182, 54084024664820907720920316108979651550440848, -31448234935198066951018308111077427342678, -18500477708587675783062635319159491808, 8376470864220492588482179313651098433728, 920668584834394131657199175361258445782, -124596974772776299391981449865992018752, 162377623193680495585593113595552870372, 957854863053718093343335025340260796], [-15961923431535126771377799034420408430953096693009871, -37959190580878581960297867807864048764147225, -203666963480872805641749168201467990164243394, -2345886671073993342305206537851654270637553, 74750056915112243502834633686007987862, 0, 2119914885154027693133281901886297026363, -466702276732678907779647934464376983200, -466702276732678907779647934464376983200, 0], [-5600499662910617451072307729098134912244, 26025150231269754781074155505319641304972842556, 24120190766619509169593879144295111757355388, -14162362470097512649080148771917380431452, -39430811223846274748885683970538965088, 6349050988894186575194034169842447100976, 359813597436642874922216006216070742812, -265899028920811882931550959778059898432, 345758482847095930529366842463771891700, 2841670907732940725473090843188587052], [-157037631829986412503487873786958175906922238770479805, -8428337460767709016371735084617716440951060, -47027629363318277651085285304175523712505169, 986948648125177589822415766979108407578051, -933252933221745466728768028005900608565, 0, 857230460145726597411145187664720158370, -314656935059315648106666319742027426880, -314656935059315648106666319742027426880, 0], [19858648794856487858304256893697372288032, 382136610495267565896403674331105733409115814632, -88857571609814904908364475867481100355072074, 50378518216683349343172453205141727239116, 23468585985603679163422666189548723120, 29670657176599717427525580487455691232872, -1484936508485585422514106220969115671788, 158544209504070735640470830977781772960, -205518793302668632446491669997509189034, -2361948411668189952113893657656059238], [70392265412748941305587733693446640837084496719262086, -64589128757276961326533824751712694160648762, -347538529164151093038903457538998494465872146, -3157518719287875025353690294645805687301720, 804734146068517405617851455397946713206, 0, 5113167815765683295795727442380938484426, 923858263719730080368810216199954609000, 923858263719730080368810216199954609000, 0], [69367010527133845465979088273036329575264, -849878358944573933150708373986606861686712212661, -305062361429880071120885995699959992549724303, 176176047707760427907514717858390130910712, -68642168130002989136753027744580412832, -17559450490942873638764777410651132210231, -5463295835288053236561057242889082948152, -465601393239538203737864202846663341248, 599323577795234066599256203319677590540, 11333071862117625151701864018902839508], [-118104174891230979646700529118497313525191, -661080052159658954106468322861771801733712164135, 522369531228808373338685613382567225905594690, -299943456277916044517662868892492739749291, 98917917561503180307764538905358957408, -30175673955552803126237965386030141343728, 9258864680122679468944437715932538739211, 664050746840118352869510107825378521152, -870231189497698325944292275454712583572, -89105541565459888363152157601971596], [-81108464781926224334002866174204753075408, -1015086537571390601130598012407065790141389416254, 358377465594271308054744610610117204536224354, -206008428954968810301550173538396621833288, 85739873397192311694915557670713533728, -11685127981600194913477946893880689387898, 6393811223022859986671586652752116582280, 578415449060993206708904976562908983232, -751607902194449783596883859918314340252, -6729802452625318778633772667330116036], [96750022130989167297818270973818824997862609150510563, 4468599013724020282937136967685341148154476, 25534578267057501314175163909777020323264207, -1014676269505921736791292944395105669432477, 3870472594981175884026624260203040259435, 0, 1406705288988602969033260148333971702754, 2675850466993941507855413490195793729600, 2675850466993941507855413490195793729600, 0], [177094833702221537500497556552188481054027, -1065634740674914203428606530338338963052898839373, -780923845747307313436987580151554035588416504, 449675224730579662090673853911896377761091, -91933466026446667475656272568200873296, 5467885228017116585263799398936385558392, -13787990882754921943390336615677513543171, -619794707022177431494492306103437080544, 806285375280259619023316245424183025750, 6267134934920784583579219579708363034], [-13297839609908272990528678979761981266240, 1251040300458111091859280299848677044716797692396, 55284311291726357071838009736178516281510774, -33958514814256219679523413221699270504620, 140488662387155710779827825925497077584, 80579686019608717168722332756417599436756, 1267210900494041941913039929432231143372, 941166223260065365898942272398193939296, -1237807539628025813479892099641133910006, 4468024496227727689269613838960641542], [51496116813797665981375807147612543371426, -124064095302630823906413479747249802820247606750, -220306406273215666748693917445607510278174496, 130975458972737117042421048212069924284146, -169085240189909376473530273289289230304, -147646553334201330162825249901079362679936, -4244852088712312528704068559194313565554, -1125260733933533529330985943751487046976, 1496870822645017935121385250601051375236, -22956939252016619942123093322543047652], [185895945300351258956376015844235137949261099469651191, 212766502290844927109956056755208142568674278, 1161852340210073047065054988458347051633419761, -3812446138986238863190984740513833337562533, 942678335549258034529063235109428296533, 0, -23403738470112554756757977300073831002304, -4365748982483523640766323490301565834464, -4365748982483523640766323490301565834464, 0], [178258700641349690963207144966389247421121854293499670, -136949334714327816626280363607987420743125686, -755808972972970255621748654263207980697986070, 9109870667619457162749857932624573240168256, -418964329744053166581740244102737500446, 0, 17159132060878825828413741174559624966342, 1171032448397714139613286319842838396200, 1171032448397714139613286319842838396200, 0]];
    aps := ConvertToHeckeField(raw_aps);
    chi := MakeCharacter_3_b_Hecke(Universe(aps));
    return ExtendMultiplicatively(weight, aps, chi);
end function;


// To make the newform (type ModFrm), type "MakeNewformModFrm_3_37_b_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_3_37_b_b(:prec:=10)
    chi := MakeCharacter_3_b();
    f_vec := qexpCoeffs();
    Kf := Universe(f_vec);
    // SetVerbose("ModularForms", true);
    // SetVerbose("ModularSymbols", true);
    S := CuspidalSubspace(ModularForms(chi, 37));
    S := BaseChange(S, Kf);
    maxprec := NextPrime(997) - 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_3_37_b_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_3_37_b_b( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_3_b();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,37,sign)));
    Vf := Kernel([<2,R![3112830702028694310589529810589660085818864951518822400, 0, 286049606581241273364343505789224571350548480, 0, 8830719713450547606263642355400704, 0, 109381854596941655267328, 0, 561197528712, 0, 1]>],Snew);
    return Vf;
end function;