
// Make newform 3.41.b.a in Magma, downloaded from the LMFDB on 25 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_41_b_a();".
// 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_41_b_a();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose line below.
// The default sign is -1.  You can change this with the optional parameter "sign".
function ConvertToHeckeField(input: pass_field := false, Kf := [])
    if not pass_field then
        poly := [12606130133749306378798090199763505554693706712963960799232000, 0, 42071301184141474816096210166597335428414342325862400, 0, 10196659004511185116272142565764285511761920, 0, 757005714875983264074654770397184, 0, 21357900831219724160448, 0, 249659905422, 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, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1619083105240325829946840832579591244325162832909027677852177574149477000248223466394641044274885427200, -142496666317062974254949715237465695331123069933278549215863574715879806215315216010453046001664000, -17092808274449457443110447060536162690693935366234573594347339719253498512116370651480064000, -47218268740866297625257060219359181017505114056202758013218206730356776609802627317760000, -46928204510768140682663962117637596184873407556027372952240628458908649525732179968, -3860219562791311588461212145463999221097167582982653195828014562555098349568000, -2386238682789995017709869702232519324261996150651547010461752305883611136, -113495129288776944134799788675628467228077450729369709606786750888000, -37821146329239910146320527032197886668137090520355283235047424, -1359811784961283619958086729715708656492064857532569593250, -179790555215986634133191826084430683315295374236672, -5532599077969599468219324085176968985447038375], [572439646644667221947017012483384294313686318944698930000627525431508968810096860673162141381542123929600, 2422467358644044628928592934021888521751050936176019101133443954497587755245664892019437257883648000, 14709330125105597445197868583049787940990183071484666009014501353857060658437883342360674304000, 802710568594727059629370023729106077297586938955446886224709514416065202366644664401920000, 797779476683058391605287355999839135142847928452465340188090683801447041937447059456, 65623732567452297003840606472887986758651848910705104329076247563436671942656000, 40566057607429915301067784937952828512453934561076299177849789200021389312, 1929417197909208050291596407485683942877316662399285063315374765096000, 642959487597078472487448959547364073358330538846039814995806208, 23116800344341821539287474405167047160365102578053683085250, 3056439438671772780264261043435321616360021362023424, 94054184325483190959728509448008472752599652375], [-134825465854558041839209654785718689072895377722242668446599514356447357475215699565226472414163186483200, 250522966237148975176236323123593095472566350613863400573779805074302457110118274306257562443448320000, 1423364761763245728899015409768284093152331345042806310220196652985109512463508683341430784000, 37790717607414037689468056257662259062526921427842896739368114329898275844654246913900544000, 3907839575623965169574562663614185282304003756483733965841128697123665724142788804608, 1850259979068551916979558598312487381230786889594387958253161996450834582480486400, 198708603039603221474749149749544336456726224908801551052996828380853436416, 41315451503793617083976555292904718516709260863705158598632331523041600, 3149470003416705244911782069226660380728506810604130858482130944, 426805641392338519305355500496852968982317006980819329863850, 14971649870713068806000337517576227810619142072799232, 1603884030602245070672166890382214849436017334275], [12965461862775565400263895848904846111576697944510412655504889617908072315851337174970194665245130935500800, -1212128694684803787283746237382224158982109826514374614361476037824606158130525928121424448108835635200, -32857353421198323904680783248853659545133611664614346750563275613128276516068323958061518553088000, -42800501413991234731604118531687700408904757251605055087565464963699281734146745614467072000, -3404777551554625496298103562826235192305234859582885121620421452485604469026949800394752, 16982891167483967287434629222311167368389206823906847362559752056211668682890149888, -120777478590652599535439026534990238747194395986878389938405442303916046434304, 912734495474185968676464866409591257077832835151798093783782350609459776, -1715925723223680628936878650886445898773529129475336496085275521536, 14584896265459922771406903008765939241560217329601843072195634, -7878981324707056577703870953075535277413868210779070208, 69421676303436087239397617616809228219173473386527], [16470367283289179609883046197835357614911740860009290128601523694455604752021024559351597088898712457550233600, -8463506916826263287426120249389188607790607455359872328422982953599494484870570356897425889399354163200, 8309118403405816271628555717547668270777880725450739764108125762482594898546914186465755942354944000, -3991153339097994261332124000131613353833823588496668593944280973523658252891676512117325824000, 772867969188035530812902684094210532841897671351094023340903130863658945819017971830358016, -401399452828803854570958375756500552837603391679402237044629704812034474162348490752, 24326922591314301515694731002202556316726265805649075857383729499797482761797632, -13383333295538033451485145421438887296271104735216919242141194219309123904, 304022208730404078237138184479859696416929006979409752455159689573888, -174570573174112575471486851858122190422525798642725815752924586, 1269042017632785246195779515015033789843284904493155396864, -749860473862471667509921670835867658595288729271683], [104292775639661910892062401831729526715525662852817520662401745155301662335467232742845151751430078254284800, 9000316963234239840600583567102293585909027030627045465403526319530189377633001170941587754636541952000, -1740901051256547462133694304659298468739725971908714199657610892317532468698600651407214247936000, 2816534336775836585911961957598977781576728753894944641178015941186234811263151646135287808000, -3559046762147783481408405552992164704059845447401004971541167322480746707193909961818112, 225715352353772996664639874619754681555965045674846270963915497230777944665394380800, -180972938262463919641870945684739823681860853564450988160171910316289539457024, 6588328414750464723598372450882693943912603882132878871974026863280443200, -2868365192896137095474485350253645774383183979336374769366805398016, 78686226131922787982169206348738305436330456732270177834143450, -13635360655219230329319801388199744130302830005952763648, 319660420619561409232700837647518191467899029317675], [3813772344700761791569144438009923840980028242913128603805944181924170018501206165164764860385169124202905600, -4664765971903401595594575973445173115647518072404208797006848894759785436029405391028199317973571626598400, -8071545741794348514653885060764197764867041871669069104661006382519766173972260269626059487444992000, -2662684291713334440213953622716981455991331190041370459975870053946486260315951150846936350720000, -856884500475262153835478581553859859095234932669835143454460458261775692227111655565164544, -210828587714553145916169752269720923342067529538458047004016885757480635568145711366144, -30728009524811899145012933411544688321052625942061850279287780177629040773234688, -6028105004166438474068206721151979056909558565204433571304619305967410996288, -438365138182694584248280374163568668388859738327075057521698176673792, -70968748524406277289843195854905720049386547067513749446859767042, -2015650142317357041014538826529311889885546798472004504576, -285573546180413942381361806520137379094752631727301751], [-307904951777966459605461973830070756314280497177282562237866986973318539673419677102895836495380808158989516800, 17941652241751370254442992526871075047238864239660350800447791816331724112528059957189532693850053043814400, -519363835860696519619992067537618012540523781522605357179063268165285219232981679882659971498770432000, 2331224318438480178881630122122214177001195339717497416604476065561781899053199714381660684288000, -51916882878503671576955158260816271633311572673361680056821914945422045262798408940559269888, -94134946317143761427558311238486190597296158988586104305555865616312522415936622166016, -1766550808531056203280848225038128332125120105036815483044258098524196364995198976, -8616481701585007508735786274632686203292021547958580707020744603937442682432, -24028216438666053230091954713687602532828604514421338659304558529705984, -154889853471624192033469333927269514992740949334708144565423131538, -107006876158422337491998553402588801579675629233709187556352, -772916104979423617678588479154868030307267938384141039], [-919331747564154255008364680374523095267022628945940389749805933908144873655248720046637728968680605182276403200, -299894401296770652744814491805039798185142165937181221010676626014932305527593638874702355136018316997427200, 1798678335827265197102908691587501247511331126693421597515253765931116378717497901890271271498809344000, -83052722536316075807872249240263796300281819489983791304011588704344300809487880648687211249664000, 227438111912933752001952799773855650149713704703511578479062747874427951882105164347136278528, -6637820793476632281409909004393253232786434909818385940844574526550901603300623041298432, 6990222533663881711436623809602511429921519844023358434568824990009633559564845056, -191902142472812797304872620873690661258863517199740840189878750043008753475264, 79959687871631285427756587421428340671851880187980571661761896427259904, -2257489226787351487075772340317080653930925123621542228187780178326, 306564486622704122368255613880935558136706981546184796019712, -9046200688323885418727680400434012866575054602687538653], [-328652783607395037138804447967032941129281234472095881590766242167480869978080186243453762171734897929381478400, 199339455638902934664025670507345051171556908519425286630906636288674759405612884296655400916487676257894400, 559304176597417554183079884339491730311907437525938337248527374751180584947803575136734350724300800000, 56070957112355020356170234291703774614506050432963365804824429506918706711894240734459914616832000, 71771860799123125736504986095088413483788374497577125848676736230456569419462268561209163776, 4517266428403923495766585631382433795451692384741334729669010546830703422599293750083584, 2192170315901103130821084625436949668781097039033836262160924802077852953339953152, 131341078595294425934900790973875641473841762637388865955139411714594386891968, 24773154398813673096397669569324367863022927507117698128350711946221568, 1552080647687283372059504948551044653885641305990186115473760417862, 93803026689554507065299435080077312510812206395937463931904, 6239837448715950318338586430394343427601495990885509061]];
    Rf_basisdens := [1, 1, 801041799135553148259166165723370731958243676125482125439477587701652843540661391182528512000, 400520899567776574129583082861685365979121838062741062719738793850826421770330695591264256000, 36410990869797870375416643896516851452647439823885551156339890350075129251848245053751296000, 50065112445972071766197885357710670747390229757842632839967349231353302721291336948908032000, 100130224891944143532395770715421341494780459515685265679934698462706605442582673897816064000, 33376741630648047844131923571807113831593486505228421893311566154235535147527557965938688000, 267013933045184382753055388574456910652747892041827375146492529233884281180220463727509504000, 267013933045184382753055388574456910652747892041827375146492529233884281180220463727509504000, 400520899567776574129583082861685365979121838062741062719738793850826421770330695591264256000, 66753483261296095688263847143614227663186973010456843786623132308471070295055115931877376000];
    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, 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 := 41;
    raw_aps := [[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [-31006881, -471, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 7197249, 1832, 0, 1, 0, 0, 0, 0, 0, 0, 0], [-7861812427063882, -380314, 1279276, 17920, -2, -2, -1, 0, 0, 0, 0, 0], [0, -47082734038067, 3920245985, -748009, 146137, -13371, 55, -2198, 78, 1, -30, 15], [58697403822012908498, -20092254195, 65278394415, -2415481549, -255333, 910403, 112489, 172523, 520, 351, 676, 169], [0, 810831997353408687, 145865418493791, -26369552263, 9337037421, -536696807, 3533171, -76061079, -1372234, 354461, 7626, -3813], [3134718307368152967679310, -85133609092608, 277780987679280, -8498941849062, -217124780, 5334600208, -187337986, 396732483, 2767008, 2386476, 1522128, 380532], [0, 171471352182839754228, 39872780474060580, -4594112549060, 9499800306072, 202026040224, -1169627296, -10412810578, -66259968, -113158336, 25362624, -12681312], [0, -42957562217910716590383, 10153559307556709222, -2382204007330622, -809006064224723, -17548139770878, 81619566038, -6630619212862, 81689694924, 8857110410, 4634358708, -2317179354], [-76216697366646140796154095418, 24289717904073901862, -80901310345248340208, 26134161445767832, 230392875733054, -35814842902010, 1729099832525, -59728985324514, -8944296096, -12951448236, 16028608560, 4007152140], [472758844818684390156121435058, 1038548714621120666955, -3458239710039995162391, 2342781026935802997, 11152858447719181, 2781486837289861, -98485300096057, -2610132662995707, 1025005706040, 1101280560057, -305099416068, -76274854017], [0, 35557239964304037501400342, 67494794109100542200, -204897152025114056, -510099871767817082, 8110948548637176, -49685090063320, -474170941079512, 8520969376272, -4295689609096, 4485462648240, -2242731324120], [84387902693900243550239269154798, -5472835870075570107272, 18144998659066171862384, -127406526541301969358, -77659796236499044, -46190491427937720, -315433068454710, 15774564802675999, -27387719740000, -20866380562548, -26085356709808, -6521339177452], [0, 937935502192674663286396934, -483254483034165613546930, 100685901304932410754, 4728007542255422170, -227864411294166054, 1294600523957982, 269863941167403030, 179370137998332, 131586241806162, 14174596069092, -7087298034546], [0, 13088964130297324380027385333, 976842172907817535335640, -220062230865433085968, -53689325616661576555, 1084488014099023728, -10376108592225584, -588745895039438000, 14720066726850336, -1040166488537744, -17037528767904, 8518764383952], [0, 52836878462942427471355327746, 17598648807142072923670418, -3437306412500399282370, 442248821618316772216, -31858872877577330244, 167432704897652244, -9621749716825391307, 74995233456795048, 16955917311284748, 1417645476796824, -708822738398412], [-41203606891800589307595034869988558, -2376110308742376286839985, 7944223543538339527261621, 41463707323341433824625, -11173500384194667351, 29846453832643805697, -901853566072054869, 4761697233976027953, 18698291236892376, 14383227296388933, 17260255762013772, 4315063940503443], [450088535294156785980110036405689598, -89098165502817874739744496, 296575052560018464836821692, -361482856553299818423886, -784964822945526489916, 468840291013388369464, -6661484045922237568, 229708188441607147541, 160776157736681920, 176508858972529224, -62930804943389216, -15732701235847304], [0, -5414416910296178845365848519446, 230070575190887897896311266, -45132533686385673206322, 5319209381993235031042, -1309007614484549684534, 7612624669238192302, -134883919740044444428, 323189340836905436, 745885075341991714, -102515943878850108, 51257971939425054], [2500012874860411920202607959573618178, 503092252783765441926678948, -1681909266934597553693048004, -8596859296205381484872100, 4422699531007501076028, 1336368140568905667324, 3238380496158483612, -1002549414255383456076, 468616901902371360, 495485144823478140, -107472971684427120, -26868242921106780], [-10725379759867107961199823306002944570, 1208439238859305278231268014, -4027042394750115686645149752, -1768801261478745357543280, 13714848170348528940918, 9127589110407162457790, 561551233010416390405, -2536899818886676659898, 2993717318749233568, 3041738562133090188, -192084973535426480, -48021243383856620], [0, 46462475121883493716256643083525, -29006351051593233026155916087, 5890366218633169893267119, -124490479929235512374491, -12912547673716421311527, 60145875895967397139, 15774987673019392424704, 58016291555682070278, 5700109194125975749, -2096522636471759766, 1048261318235879883], [0, 249215355566405047277500418948597, -42164903780887644394145998897, 6573275058179898977542841, -5493544783086917817508973, 96256306333297668477977, -531288373154336770317, 18727100168113535443865, -138714390413747991818, -56547635160107218371, -22791985631156942262, 11395992815578471131], [-3486750839330634888346978893507089225422, 119991810350597035163308817269, -399333897237901131111791466961, 596450007483384371269325067, 1168922933489084843024531, -310290584891818071426837, -30926629201439858140131, -326690500093482793802729, -161030052642627310840, -117797068766320662753, -172931935505226592348, -43232983876306648087], [0, -6387820197740637717411667318404417, -702021963637599149577515707914, 150382834656649934839172066, 17772273156962047376973723, 792563230098162684731298, -5498171781905171453258, 413190156352859962069378, 3057803587871321899020, -553540557520800462998, -24822528868555451148, 12411264434277725574], [-8852839800708069946457417884386980481322, -329378521481179306769003374514, 1090900401930141443722189421900, -9330576161482701098842880184, -4289752997305654725272618, -617296753558952410500634, -11691655698365035943117, 1021236821164532353395460, -261353226539012377600, -239159898462383455104, -88773312306515689984, -22193328076628922496], [0, 13095229610224011764086802715361076, -3595071410616627680060879841508, 722126368877847396632216356, -36538423272440889299051306, -2493408099145910416387782, 21022561597833086646782, 1934948829630542542269599, -23235396301063087695300, 2177201737322960646962, 499637183597679881892, -249818591798839940946], [-22374215034237776001195192658389444540430, -1044350736537642598600481081925, 3460662466816775394407371278489, -26977717913599922755898034939, -10989743525245873840856675, 7631968988900395488209365, 144570733956120161140295, 3380332394876630210551365, 2926422650137222451640, 2852174701490682720105, 296991794586158926140, 74247948646539731535], [0, 16687528702982435068611236722477778, -1309227531144487663189855594682, 544653028691716627693486858, 738009262974716710125996254, -2868260701697883630412086, 1246637679922174884206, 1424607291071505762567434, 56847769644273010624380, -296797921303794467854, -2809744595306746375164, 1404872297653373187582], [104822082938065969448494772564274937750118, -54502529392508784961972552266522, 181769020599726092637908704278552, 288712048600312940993802647304, -539821911329174021344301186, -126617931247111200335773994, 4707476810333471749797353, 126919546894569399726057114, -62446568511208068641760, -55666025380019410699716, -27122172524754631768176, -6780543131188657942044], [0, -678337987276103639459923492881711220, -348936731720510170133233456942108, 71690799531004909045440110300, 695790612152751044719023562, 193429034800626385230506598, -1047049158883167049158686, 195763796771980146852950257, -330207737535452498669436, -100138716270406515612818, 30441330786067928687004, -15220665393033964343502], [0, -441840989983942739609402906955671272, -269224141085051788879782604854086, 41094005685124741663875890630, -37356573896265772610688576244, -208140687684823725952105146, 865825035488069578715074, 108594022116682682929345366, 1309249532800157213210532, 77479954729797366534334, -60683658793397275581156, 30341829396698637790578], [3069875999371846985078116191564919076881790, -50663378573706320027748871238728, 169839795764962841365694888263492, 1543820573803101647752355133418, -340193632258316914311887012, -131399180954333676591453008, -79790368725716685835743904, 47319322534501637462277189, 42512766222161970495360, 21688423242855543347472, 83297371917225708591552, 20824342979306427147888], [0, 756268518107956245995273465289147989, -5440868099914788933643241208349392, 1146236308749455833450570938648, 86884220039632009271445369189, -2046970076081329558588600296, 12105253002827132616575496, 3078089841819291788960568984, -184198537724698597019760, 1210816696195362831688056, 1942639417663800203376, -971319708831900101688], [7908321920594694305198697823859445428825462, -1715824710592793433282000470967218, 5720523089356312277718219697470644, 6408914904514189232669004359352, -14705398504200396477650848298, 5788763188737623931553128374, 21081606686565546899283007, 4125591472953880839782232112, 2201496598171409301465536, 2201671152671312335661640, -698217999612136784416, -174554499903034196104], [2006193596805477530560185249120263698360658, -364162695820977304607646179125763, 1199214670615870960584215690741375, -20361852800767921588580088914109, -5418517493609731731384083413, 608901751490063202613332819, 34262328589073704078767897, 1412537322330921544196347387, -820880588173394981939320, -145943373218809649280849, -2699748859818341330633884, -674937214954585332658471], [-72827407581101047799382585184070746020308242, 3072380796141751402536319744302024, -10260471147997254737380000706235984, -36585536695853257355861941407870, 23739150179021360963009214028, -12626872364615602846774908008, -966221752161762004083333454, -7233446690138884806014846649, -2208300352836820320075360, -3448744362745745553587700, 4961776039635700934049360, 1240444009908925233512340], [0, 62362707788396310650669113538319998320, 19588441513984178519902603392649776, -3399508991460115191740872271536, 1627345253631979080140990892468, -5558932508784042848897313780, 29649216866102129022047236, -9247785174124061919474535202, 10224967977925430228040264, 2416134950779149890746876, -3658578238873753409718984, 1829289119436876704859492], [0, 267955211766378831921213365586647101295, -26632053749650528494263402195037888, 3104421436557671564551343688856, -6261086505083885410038118878273, 35452953371755441021738348824, -190019622074110105218186232, 8755120389621754906858840952, -69890949348352227290771952, -19279281056593348018627912, -1848792327882249978728592, 924396163941124989364296], [0, 560770657429604066861050201195267930166, 34066798114207103127803172804093830, -5914708993591881505048027081494, 2819675033282819606955988776976, 44917581164756033109056982796, -255799903991037295276548476, -15544156277996500411871751133, -34769088432260519684402296, -26761955947814035619379044, -7879770324735373944827976, 3939885162367686972413988], [298017758570213590626423310830122951225356562, 37076088038371376833679455951418877, -123947609071710893188750376786788641, -629177974151952111847597324241853, 316775842096120007221369221547, 49254372210243207117965867539, -5857643154161518131155576023, -77483858524749030879047580693, -10233754491814509537341304, 11824046198047657323724815, -88231202759448667444264476, -22057800689862166861066119], [0, -104135703958681601167878932187645112018, 558157217045523001028157070545355990, -131625825181348667499741455648326, -46329385575812057357598035783782, -61767230795170452560913829494, 321026559547403629360448110, -356445441645482286173572347062, 132465956396552530536884892, 20310558085349485664291074, -78613985795939181811691580, 39306992897969590905845790], [2341549784077711710959081160009290754149249858, 146825327395369494090932536801612652, -488944497703893764301758528438199020, 280687859576021773392172425424276, 1464475059240649888441595634612, 44444049963994980142315599924, 24790909063676034844126267812, -354157451457977607161455012788, -92465378229421436858962080, -33044782250696188895200044, -237682383914900991855048144, -59420595978725247963762036], [0, 2323881673067246637393882808424168223907, 121823381631489388586375419540799842, -13278587653493812927899809442666, 31081459336525870200256040641559, 75947914576207840946945846870, -39236409972673221848902414, -34604961346795503433587007466, -1465233206615557717765410236, 15179514325694902745447726, 127354368819748166202253116, -63677184409874083101126558], [2794601413786147759679597415572246046313777910, -163439122371120877248210376330755186, 545526117297140724744637949312906100, 1519125036143485898645355521577720, -1398079133131829961141200370794, 88452267504485350560428023414, -64617259483613343503610571393, 333902377411546951324723351728, 240564986022435015086316480, 137373079847128511486910984, 412767624701226014397621984, 103191906175306503599405496], [-2057423869641763427022197431759099214299402978, 150665556462828498408582038228481496, -499925567264602941237803119990468132, 2916405673625671212449116151124186, 722992881398579426500278542780, -4634181682338572646053872759296, -299427718334767006585199671068, -638566896650253633477153727031, -1641073851062602196050693696, -1578714981728173743520168632, -249435477337713810122100256, -62358869334428452530525064], [-32900538183699492852047990931608190231184123642, -2154852434595494248738763650230138130, 7192234873832783526558021766708649464, 19719301934616252295324616191081072, -17159057731049949831608637744074, 8356375762789083821545875324766, 259973224913989420397402753933, 5017495764628264027805151365838, 1931451541579557041232076320, 2634681928859673042020843772, -2812921549120464003155069808, -703230387280116000788767452], [0, -5026693842764006207669023736013211617523, -18917053381086951905854585713496139247, 3842981046865895698405243433222311, -77931697838606805065784079265883, 428340272066621457890940292137, 5833074587972075559728455811, 10399852351660201516264524873092, -30947423538174577667760666138, 534809360975410075052319701, -323320652145316539470172534, 161660326072658269735086267], [-17289446775453018285874270036510780994271178990, -4934672452430582598650161667764431051, 16356915081570262902521246758685931015, -120387883218450569917608224262118645, -61052558421596575020129916980429, -3952728053962448061772904676901, -109604000340156751304601552863, 14923785267206153153829327181523, -419469116040656498478324920, -1083294439415756145807953481, 2655301293500398589318514244, 663825323375099647329628561], [0, 11284260137541330012442770895002686727861, -21209800496555127847150085150338278333, 3833293979331164508523966040846789, -1355209488151323826139011668737733, -318248693598480450159874238939, 8985257976864022661554247927, 10360563388751767115130571613637, -28555597741168524281120067778, -176907160631721238839366343, -7169553055454156699965274238, 3584776527727078349982637119], [0, 52961887779197456798982781841617991822394, -2886330145461460924884169453500432078, 217739508787600064121319317222910, -992958991418593114473927812950026, -27126936519171792020333521358826, 134321898512103090964595428466, 305028688176013918460506724642, 98418964412008492662515143332, 15542266315423520122781965022, 14067176428088073508816147836, -7033588214044036754408073918], [-104180808867210520166033187390959257581085390078, 3840584451184249783018341154849622856, -12585992080583136051126106194438880152, 304261800914344632523700784362605496, 77870003539149959955507504173880, 44860901848442763420387159523544, 1979737149934158316250741741152, -15354690715592653968007184396416, 16719971065536871351683185344, 16031242277492396524008358248, 2754915152177899310699308384, 688728788044474827674827096], [0, 288360178384185543929257819291665397088083, 35378531169050759788423800596445468271, -7577084421597625408790515786869159, -901102371099910170822429429424717, 97375207336987766996720205658463, -488613618657118593965333416363, -19419690056369204706863643403712, -305299218812628804129791373110, -45163549464075662591436837613, 24652082677574645367310026822, -12326041338787322683655013411], [0, -416667369584261099044160406169201739372690, -23096548175806764899504592049160456986, 1817075931936287093300403186638410, -7763345677211239923240757086191558, 21904898825845200773974483665546, -72925925051342016688998684754, 5164764893787086353259791177322, -218290525370235424684594206852, -12555640629156193513246083214, -35086987493479945628974764924, 17543493746739972814487382462], [0, -1245752551332025809227411000342144691874938, 98464685532122873447141220668045905230, -11869378656784357649323191708562558, 22100383134514724274631809853788822, -71685641649668532596457220552578, 298546791565453488992685924970, -32912791751845805111486412829448, 458168962624699921850144244948, 30699704550616290516912019270, 5633502627139610784289511820, -2816751313569805392144755910], [0, -160148757244647820718420805942532483200729, 624600848122165279159367558013518547024, -130043710407240930843897106849194552, -5859818939800441518335864940840489, 184449405974811502704572324667336, -708480176590279662117765559656, -349225347831613260870495312914040, -1383232904418725380085439434064, -65570061038886257498477380248, 35186377467611391421994504784, -17593188733805695710997252392], [-89640168113447745235434831157783167397092070138, 145566409333869325385798731657518245550, -484826972424475506197692380104074774056, 168864404202598385447681028487902960, 1395735346958235418327629965358966, -228628499020002983680643582137122, -25786552190854245335070000294531, -375354662609374955781962029578498, -91508283205719977099907454176, -75965836783421952641981699748, -62169785689192097831703017712, -15542446422298024457925754428], [-727898613460571515213160454733316730968883925582, 128881086711131286870446004737101694243, -431246169915919020923559653353697071823, -2753787732776454279293471743671364451, 1099315739959088491203916997775349, 451972814287332327512661212275501, 16477592265853455372926167232063, -234554633564869000370826126705171, 262618398962973078080932928760, 195595407381153124112523855489, 268091966327279815873636293084, 67022991581819953968409073271], [0, -2445432290574556190741085805052684753469421, -557248095112710355906556294810981391915, 91710759350227145585354089847928163, -59550654612676567031353272171494979, -854352384645825310142929313665533, 4117095633126759589443374378945, 238554268544101088207460769283171, 3390442978892550621964171252914, 418711227719660385514346223503, 46677762713229510466725237390, -23338881356614755233362618695], [-1991952189772288947268645113833043892835223872482, -128768746507477496996699347100877871200, 427493777158083232831609966960926816228, -2169426266798744117193896371810622542, -1162197063238065586492100723341260, 1079526911804473416888949729028504, -74625456712762584180865947247148, 347035570536172114308592148972873, 455489432010885091625747171200, 465539849037699807627629311248, -40201668107258864007528560192, -10050417026814716001882140048], [0, -6887632788363850616335969804442404732871537, -2173598907053628482314753549387637328554, 456486326413930780303555832607233922, 30754424189429336166607597851449195, 1299459953276019650249317947603906, -7471755275388526995454524375786, 1247078544567192665638321761266370, -424908352292296532977603664820, -633559412914506828895081423926, 757440764162305804335806757684, -378720382081152902167903378842], [3427403710495103313961234210267252928074953051998, -346028895603916807185849680059737871632, 1160217824639561094361497485246955341364, 10859261043018672195923500268973570402, -2941527706497786995339097294607644, -2232274688035635156884899878856440, 97847441208735494135045888956980, 599443769227309222829569627460649, 131335993859837057206437162240, -565709670147026053350491806368, 2788182656027452442227715874432, 697045664006863110556928968608], [0, -13760243456471444044448588095117576948557594, -3687863963950617109411572984752532235154, 1041712246164801787993228250727404642, 764720715725251543417062141077927630, 2765596302846522618050582717070342, -22456447744964540832433103028158, 2834913101976545627282341387898380, 22557763969795123354666612538628, -2345489858664164295897641387282, -665633894451401417695540563108, 332816947225700708847770281554], [38706613737528434503067462843609995237498755977618, -1136384022528889359996302026838818416437, 3779670215114369763351731188069172918177, -8905767824242768419033544610981005131, -12846853641765669540222279520793491, -4430704212606426589675869154851339, -582301898704081197010060030125957, 2670983882034080220853840347466129, -1772139059622193297815366922120, -1430206347567939131364459105231, -1367730848217016665803631267556, -341932712054254166450907816889], [0, 19515452729100219242248387499866854529963967, -10935068388619849743472298698076434548172, 2011927941015872684289367337684398500, -603817803382215708629685026093669897, 1140410408518821511620053428990500, -8490954449753360551811690065140, 5445194150900860279052145504460068, 5792766460243827056438106570840, -1202673822118069826952303889740, -2357189180951558478474232554840, 1178594590475779239237116277420], [101630615361154734358435321947149144257802780217662, 6634792271502939689309362073110701436112, -22192007518937839885180514221771069903556, -129370736784903785635301736195924487118, 52362004364887357545288984975093892, -1237975415497190055571999338294536, -809570995587888784912319949698848, -13466481928769494997015316982747563, -488611708184365203914306731584, -71896454337879494110789466040, -1666861015385942839214069062176, -416715253846485709803517265544], [-64726419730098345778546315646210727522485487751822, 10104000710371248961310354595615509654793, -33632110015713388545280860979187173450629, 41602916536030058500993192889142882935, 94047521295855996663586517600543583, -32451658365971148519730892775298441, 1393001082830995823362012873172617, -25502843169639294057715397288874181, -7856205150831342032519408411480, -11562611462268659632916707170645, 14825625245749270401589195036660, 3706406311437317600397298759165], [0, 131504370601188959648684381597867448411142707, 38190946315670581738062086714301792196431, -8166940764661437140546809284965784455, -933682713868620610699229768624527677, 19684907832178849385090135112004239, -9978951291614422119830041396891, -21756321918764891085916485923075032, -388563419153929787780850339977238, 183503064574540266637385494019, 7875987958239883190802597558054, -3937993979119941595401298779027], [-183514604427469430735339715347270044516905696838510, -3710750318183272238523404061803098804023, 12382671737996811649414584123051992062467, 30033694203319604010658047883906927223, -34439382863216031834948241696440897, 1411280008461813276105139467313607, 2922887446428389553806331858713941, 9737270063109790003884988964544239, 8046874142368117725368280110440, 1647670017594343361917025937267, 25596816499095097453805016692692, 6399204124773774363451254173173], [0, 298381361822630420003253455640150035449579060, -3141311878125578220096728087128372946052, 998556320767908539635697304610912932, 948825287089785477830275787107829676, -12225320790811199972358570607986396, 130976601622633412159623460881932, 2628033570341708890991454537026916, -226975115371364515563790593128616, 8776553989586169220129161282612, -28807374484514479972221232037208, 14403687242257239986110616018604], [0, 134266655634969891913480632682363199596197270, -95074165895746759879223303137219513595874, 21738950583680443268806434688667752498, 6071284464816791042648098018181862390, 55054987914533520202365531256769150, -503728266298160532411683630424470, 59101740601967791708461411658600272, 670375341977329233264185724943828, -46732346615663960041700179007546, 24269866761013954663121226899340, -12134933380506977331560613449670], [540013449072731502873659359378128146576861329047878, 18764830476398888938928256643489366652086, -62113849547351388707528513239054661752000, 582953535258794244443484533200315829256, 259617244338061741963339069916288302, 66113831797120591231163615975419766, -4063183987491479724666150855776867, -61285130106150784487309817361763570, -7819642561057040996327243760160, 15991544069499544583775906906756, -95244746522226342320412602667664, -23811186630556585580103150666916], [1518053540825661121015809947817410479688348427708818, 7339989111621287401789795807426118641909, -24672287571246587134283637839652716797465, -319519484286218962274765702637629366709, 170525054255629217110890261507187187, 456006850762320618061260351484292955, -28786394597199206130952809841737135, -17803866071437594578965869487396189, 225731594082189712145595627849800, 206717802736832198088529308976791, 76055165381430056228265275492036, 19013791345357514057066318873009], [1960376293170028686692068728622602829012317030945230, -76450896129600012043512701548384985268360, 254932661559209214940510835691751521798888, 353667705854671458316122429718990777986, -715382312918240498311915921862931044, 31909378481549876246920246807745848, 20118166942160382652725477822488654, 188289388335104502528043290859399107, 40882074777476438117539032233184, 11943918658738226156455363562532, 115752624474952847844334674682608, 28938156118738211961083668670652], [0, -3080412182791760690501772712252244269785602050, -438772976314925476517888240568887507026778, 89989543519305157227948851789972650090, 478601839145917433462022869237160938, -157372488045914994982527208389792678, 1309497601455126840542757480479582, 242070015534223770909031441137856778, -1436466477517731444325637588309124, 119828949828112982391981991967762, -74138735449331344415291707201308, 37069367724665672207645853600654], [0, -2322922529156086441474444337532305155178265195, -661279961353537904888587845446508358911476, 129901402860819795462400936816704865212, -14562812486500890593560355131422702115, 118212895958195763996601711356865980, -585468408763964327666696611375980, 352277085496541116423420339569320028, -449707569582473844227831370002328, -77663611660712402452652258518164, -127445138562106464573217315870440, 63722569281053232286608657935220], [5283031163419034215213239659520303116748107766119858, 63589840113380745603504352843194102524271, -212912021116706188754472681985638809203083, -1556643717839610485675069281400841656751, 462857231012270542418440510320989449, -51938900427279882454401501581687135, -11986774244407312089102437868634405, -123919077799623016824438016042477695, -175824480612491855319067426507560, -67412771817488463090999663654651, -433646835180013568912271051411636, -108411708795003392228067762852909], [0, -5044409777008839647018820895893674094483351175, 696856164826799250608214655841658301728305, -135161359310954671314979600678954998985, 19876818751982729434799815351984623835, 1037467865156624129880586294540104855, -6135477203440850883153152836509155, -354987484907112999727770998252197625, 220509316998878016532986124538730, -554690308915206317892697331323565, 392382742859191802817453015515670, -196191371429595901408726507757835], [486577108404011598318454047891637707000014780777090, 485889256987722966440011633391412772899620, -1618629015823317531912910627109537199182708, 102856441334143408350366982710132596956, 4275302845697114140062964458388272892, -1611919575398041754365570767855163364, 168987826631723971622026025516990228, -1133198185516957439240879033307569796, -767472897044959642844070153739872, -754086976887511851595415994652596, -53543680629791164994616636349104, -13385920157447791248654159087276], [0, -14168277334086571716186158708858637636754340785, 13780654048985416095341712364214312707467, 44838082048358273618199136626270823581, 127155037082056062379251309022924864155, -972721059355233744358679208339573105, 6607133011019795212629353559722085, 112415976223189441684417712972356074, -3393880820548729618455765245985174, 590290410940012497244217363937603, -469485934413113493458119946897370, 234742967206556746729059973448685], [6960709963304915506637145393795608017069214702272082, 252423073154336700649624791062290438231969, -850441020757382129856476896248836603697973, -13873428143170360443719868520034377224801, 954449374228631855962105396281286055, -847183079704108041511435022464500369, -119546052774291033767089387160170227, -344850641343824799835636572205612649, -325817454181536592319701754948824, -264863345688886395595886577018693, -243816433970600786895260711720524, -60954108492650196723815177930131], [0, 16049013423608603298249098822514431499516378602, 42299273653116937608559992631664494329506, -57335982816985090853836207372118306546, -130089702947281395772973867290186725146, 4079422289203574134918108863972220230, -22104546904737377925414080114816638, -113398075785868185838676428790091646, -7226172794115609130618001976212796, -2274647836590129584693063725293490, -427954307442611947677704758745508, 213977153721305973838852379372754], [14665799351853114339588924480525701392869656192056178, 783577038205599136244220586805973014462169, -2607736568166253272813421397146165758798501, 3930748664726558753114800472356546286247, 9661386212571529411488304503237244111, 6350271868197899272745895113111822983, 25547700487749886190907881842107329, -1921424464077357700133779994058074109, 2980895513632666446746876041151400, 2608326753039242566081400036628747, 1490275042373695522661904018090612, 372568760593423880665476004522653], [41318815460434003999028230381549453286878211552575670, 1139594406248979892235158534453624709314334, -3809367653791434543761941495325258225210636, -18810567909867660619229824889661327913400, 9003445137504206743411376366020592262, -393530948753585014002225592410593658, 442550867442848625357961022202938151, -2127363476870068529812882213297317960, -847260955647463406207668000558656, -612614814615866619922418731466424, -938584564126387145140997076368928, -234646141031596786285249269092232], [0, 11549280575535394658892378002961859409133447041, -1240967789844801742717958993014722338529627, 277381277243423548386306738013829383987, 63083688080449379567611360320532909389, -11095231966600478966288040823993006455, 55086175491724638572336446525001123, 632407369666885570584906405550414154, 38967060725353599678047512206872742, 6024348210597770429715469221435893, 3438204409502043816545497126238538, -1719102204751021908272748563119269], [0, 79025845502838111659515087161925474792797678055, 3833989075501596860659631933350595895534835, -665089686363177119587023809428437771995, 319389822444788554073108065302976681805, -2373901503808545574398108693105394235, 4282355958069383383890577204363095, -1831123062222848511745441662282965195, 36038063327877520953743004792597950, 539655706827225717362262483831225, 742800740135249193154698422632770, -371400370067624596577349211316385], [70815165366856997874438589109802361499131105188880898, -2239819216062708096969985021770242645090172, 7443706558269321529799026456272041035170924, -26397392895315530459937979381859545812868, -30969513438406586996679890167564388964, -24669448246336139359121355485120012740, 349621182090201413775958902257615380, 5981760613880475696555736101826435964, -7036826238722116500189913948116320, -8798480107263454392310064359450068, 7046615474165351568480601645334992, 1761653868541337892120150411333748], [0, 103052430379943909759327805689595604865540730933, -13382942607347596343664303536688818168339290, 3146129970339530286883794848982559299106, 1082985635737300012678187702394743854417, 24601291052674689720595056557571030114, -151273204295637485552552553522508810, 8733617749128518660484976328010973922, 22881886521313356171961480208180748, -15455012220889501349020177051318294, -2184611942171685291766144660449420, 1092305971085842645883072330224710], [77821437575851084310900057580561443346062779561882598, -8930054726404785842618247717576679840496650, 29791271231545882543311588905249580196237960, 60529568301937627143440467562776139147896, -78901153112314494055139880305352800018, 8937151165372159735590452962978487878, -665103959358173072755553011777919911, 20175650329733136950927877835572498858, 1977087219695717171064749866496160, 3261907707917776055246526428755116, -5139281952888235536727106249035824, -1284820488222058884181776562258956], [0, 119006580618727154268931224260930632382494913875, -39680605988805240337983284074332406099073249, 7873398120517252211232541105014916406889, -664524225349333530469163886991409231617, 10051979789474080787750919058724732675, -59923300306369549765632085847660959, 21372727834067059292542314415403398138, 863234360668790232255250249609954, -6836463361279229420174704598881369, -5627555537615162957409973427435154, 2813777768807581478704986713717577], [0, -40717161535083136517384915694656112526378354596, -19674247642923863050734733246692607200231444, 4764981588005325074125661548757084454452, 1968642503042357056189733920699163550564, -16077954109859702255534821271434689756, 70129842876576337282507830854748556, 12697762544960788703345065447221576700, 92426284163107498095152622821220504, 7841047957447208668237564073425108, 5520424465263832933245206586335016, -2760212232631916466622603293167508], [-50697190433825446965779146225033534397306910050247082, -2664650321659977794389092041011540710553866, 8734489691869607055971813296257528526190820, -207950336048345836842284411816225588057184, -52398141736633300987450220243837166098, -27866614971145435130095562484749221250, -2391742500489217810232174221905260725, 10140021879831420264211734447186827916, -11981295456384416380022062628456640, -9921408369341315187009139504096104, -8239548348172404772051692497442144, -2059887087043101193012923124360536], [0, -457691702396818331996723593506007185576791538278, -29009847213992268136602608643603497993432790, 6069892524743671939801220554512454472294, 348770155781289246528275703994387065528, 37283825406210148734097987695423724716, -171457306121783664640963193814205340, 16821199799047819206781827165229578913, -178082204249998557677661783075482808, -17362689079428209455076096094601796, -1446389781665619939865178087875080, 723194890832809969932589043937540], [-105353677485118539295414818870212727097673767123386850, -24335679494266410733536685564729389748983624, 80982491698045971739968022620454605795297276, -131018177445327301371653310199837917348358, -239325747911749493379664988458604658724, 41234207023751125789594827031677294112, -2591543205314231059482980596890457084, 62079540034576444044431622546702581801, 18501661069338776363482766309134528, 18030707117994218275399940688660840, 1883815805378232352331302481894752, 470953951344558088082825620473688], [0, 199455322006642307840243464645153988618051850218, -141928612514050129883354339609105421651778078, 30957055493095855042572016387628421524430, 5086441198786765064543782869382164956122, -79198832794996796759416535830275959630, 353783416815044110598137630547710630, 82759579967066419896522590640381239432, 410589167396765274208042076121159500, 32952933713081058023163452294284330, -16169386456155686911002071736578220, 8084693228077843455501035868289110], [0, -391438776589835619960151193587291621612486887289, 221518710994119356544030121436293875173378348, -43575446784133580530013089231781575491220, 4710277856770615900803555509460890629231, 55933038305558852647200073092179470956, -232930079725985777346542759107423196, -117123611467373051497344862844109600692, -358726961610709121749265902102943352, -24508509317255523140489940447867812, -8103342297712969372237763580836616, 4051671148856484686118881790418308], [0, -345646518244939885043631736978724666171421479752, 360746996720659110951705728382299322971617274, -74721683580091082319565911908114334010234, -2345048286095469417011663970715519731284, 14226421871840571264166645220048824070, -410594525892455245834429144170900222, -202178498061280722592389043105825631914, 1208212018819234982643776743043380516, -40195693390058230092622238202642690, 5758394661248629938804508096315548, -2879197330624314969402254048157774], [-258565342307040668027768251712232000021222065439690322, -23273049734574455535513861375858716658254352, 77765320964232055721334600531420297808963656, 339462609208522151600386685765230496474010, -237329945669559000332569910279198378652, -178122750072226792674130183738479794256, -5764788377432503762929483596133940278, 43764243374113919129943702966552958959, 5340950417897430276350527509293280, -40076170062121205741145345030446940, 181668481920074544069983490158960880, 45417120480018636017495872539740220], [-616247618571161635098822920578551043394970549495365518, 19964334443547165785674480658550931431921387, -66208778104789883802791942016658016243954103, 439086619410484995619772295852164955654357, 303389343782141406334787886167049431149, 273377508613060992523850304477077777125, 9925356699349546690691322775333385255, -51543199488718372952670797038930087899, 69006775148513805945936669551792184, 87476992023165596039917286255247129, -73880867498607160375922466813819780, -18470216874651790093980616703454945], [-706371880065456230415285617435405927249260333771421842, -244208907228749819358241502417984887969766224, 811973139686084061857207527026923246534098312, -2317592712053189131844487386651228838022886, -2584042131446114048597781947290857069276, 191899942302114134653335863387270983920, 31884257206477164955075542183582872010, 671729685608013156321890994766697335695, 39039335212472152754412567073932000, 45640281875266488868668662409062244, -26403786651177344457024381340520976, -6600946662794336114256095335130244], [0, 4111132761110225724800816376612155408857371875297, 849807296166978114361952351590438040990659706, -179077732067380967663955172141440739680594, -13640290720171660969464893899965022305563, -526958325252639837189031114511956818194, 3375231525298307029279843752393114490, -488642718009965443065056291107550061298, -920356900550671141969951362951304876, 376235013857687025753003888232223590, 258079075519042152166796753286080940, -129039537759521076083398376643040470], [0, -288201027116188388954109945842062126271249409661, -1419151463331633533813529830646018949884209521, 296141820743626514574678065768887996299641, 15051688836651012573707252572521944218879, 340874288436115917067120440955889499939, -3478159418630734539338579877534247487, 802073293315676862869633811082923974674, 5448858921625363183966535273883711138, -338386926180128534171457308538306617, 62860104552966131749337861434120878, -31430052276483065874668930717060439], [0, 3819368582276164477890243157515843265015125207044, 1830678539075541087712494290586893042238936370, -348630266194797888982856962267659243400786, 69559746750369943679456672615423181742184, 455559449117642945465982517367603262894, -2372171141914556198371470658902446534, -937670405072551456480801940729000730722, -1250298571746642049011907656660205164, -285348314324505261107832397515936506, -320874667553664275137902210837945684, 160437333776832137568951105418972842], [-8206214526941242670479178673051612397832120840481403618, -375683717830394827829138894922799009038519952, 1254727913197988008940143858588687864531414612, 4618689681665182233727843590444611039229538, -3184713161200251895191962366086608471068, 108068905105529962381268786059682732488, -28139069749260957460846951406585099356, 794634704731956199624247417589083004921, 18781121279033134735774871619517440, 47794534628913737413156072612199808, -116053653399522410709524803970729472, -29013413349880602677381200992682368], [-6885960308353859089404298964046800403316636449570548302, 179527626205507463297171950653735405937601085, -596029835895762698164508749727146991276607465, 2991255036516037123515203124511951814238531, 1866573362482842364407780845407384307787, -1025622465854819934072111792283432489917, -161616791369876430282449484248965239171, -601136538906622416303330162302736947817, -406710645367844390945361946455975480, -316364506677276645823303617785637369, -361384554762270980488233314681352444, -90346138690567745122058328670338111], [0, -4751258020369844104049898925775111933844976880396, -3133754222392454077837927097867392138481610596, 629338290020318364647120837081040654095524, -32254354171889454247692838401280262600890, -972367850008099453331312034877472829942, 6908260166193479502885540977497279214, 1692716968045296976084783000624581592775, -4401987817928506694812951975491688932, 672210677972476919517510505475547074, -124102257645806871806957281827872316, 62051128822903435903478640913936158], [0, -4935985438721961583429674000772576769156565067352, 3788172406706189041174757159695148251173030412, -756617799287133725278663019271388884384844, 50071371218723813621924207757381105262016, 721892699257875008247909698111441264052, -5128626985114687575565905444960813764, -2039458942378670816147755764072372169004, 2954087118159366279654836189340534072, -645229138166212945587589683684328124, -882442931031627920206660927921644984, 441221465515813960103330463960822492], [0, 19851904653558455006625367854138143529418469776156, -835389437381775788585833891497787594122176148, 174357943737660284605572029784026483198132, 8999580382650895426458694854282906758256, -565518150041415747070345493491298988744, 2526982385634952701023338079606833384, 465558422737219964308993813133870973526, 3328039520983386005964810091999311120, 421481451448309234674616679493551224, 1125221419232093097148552476885785904, -562610709616046548574276238442892952], [9297428039290167896725052984178514228990089337966800002, 1953821775625828261988894967377369851024135844, -6513511960845657818113262606212017346500586820, -6571503493188808762151713895565619610867876, 19017086143304242333105737825631383799612, 1966922778859901915287945212780072087292, -65026826424194005310988476100478665124, -4626754430963133666107966109811739432460, 685238098321958577608873602833997344, 762849417840946763357492989396084476, -310445278075952742994477546248348528, -77611319518988185748619386562087132], [8007363903453984169418971113147732590403111441433202918, 69339957804214660299948901377725815607675526, -234465108216537935309243811050825250008843304, -5050075521474450231315624558777469324626520, 456986718044248516517976927634694056158, 1060994726844474920774872625305929063158, -6410887642380674098303968832655940071, -35144600036621543820054169743872963830, 1126658020641757471439318245997378080, 657032629007606344021672948115135100, 1878501566536604509670581191528971920, 469625391634151127417645297882242980], [7893331860427016697433657897893895015475430472421832818, 1844289952267352573144635503654922033000888383, -6131327924840472736049472635828228802428256603, 18634538465241200731690206025991915599622529, 20099341838909569561169154838187286832569, 891355587333064945845330405181322561361, 17679863168811211619097444159042087243, -4950915230965538105336004166695801487791, -249051261920827758878691195457539240, 129821607163147831883703656619798069, -1515491476335902363049579408309349236, -378872869083975590762394852077337309], [0, 30393361687087377480260099339653253900521732879659, 4564980707763391867657778274104090200214988465, -853550289046238938113058970197158225926969, 216012519477133169855887506581245652852493, -5124747445859885324330829523038978922905, 25122113206927701781035408471166105229, -2363838027722352129400999332927039014617, 17986697774783878222722709221811095306, 2191692479305913789599089423822719939, -2136792275912375923363009488625937226, 1068396137956187961681504744312968613], [-8076766126519755113668032739553272167502172557439189890, -1659549885833030648185159295422386917557119456, 5550067143529729514839608934299709822222489980, 31223012461176498700030780164422685599216450, -12196002620168822834390288712610733399884, 4671577125846001997287673815370327713864, 408156037565234730930751778040155073032, 3547721853827511533616668262125531086493, 2186094450269736117183831058904943040, 1720574584989615681857131988602582344, 1862079461120481741306796281209442784, 465519865280120435326699070302360696], [5688669636772096029053324024916683370740721910882071062, -2137245878044494988850335027565271865557587514, 7110594190042450758855407515950584892954679524, -13820976523137457241717804791828133354015184, -23720102484314255933179414012291029869666, -6295714468589712036718489935941459445554, -334950217710103473315084711387285221677, 5332813248848071528605765336206318459892, -2710345349794535316309878642547199680, -2346021493242527244490894304463853224, -1457295426208032287275937352333385824, -364323856552008071818984338083346456], [0, -58534559379804747564179840986089702215505738487215, 6823484905814229014880467693915076232440485301, -1543874905828702369603914862518327876590605, -392632081345472719481069544584987736487749, 2923060610059062062533493910323319490899, -11485580194127089051510181808949379663, -4136442550834213625958561687958500492509, -20511851302102762403918535632387370798, -851964101849648726027919531497345729, 1977292783753734527487324329317281582, -988646391876867263743662164658640791], [-36919730769636793167370100498038110066348716206432857682, -1916933488079503974958354010803153041889126304, 6388863660793231473333918475190373270522173096, 3996025150809725709537169535446445556983370, -20688643560293299713022986792058563176972, -10482311847906349932414508725656922704032, -752435123995278353923642334853806228366, 4111294449107510797513156668912464709655, -1932844276436682982120375951422338080, -2922207304969022766078374145821585340, 3957452114129359135831992777596989040, 989363028532339783957998194399247260], [0, -109480254595136527244116881123535573549430201235568, -8788372917205715466403925366660815398623036656, 1710896224773842098056935560796277767869552, -234693370420548190753296899092439695060604, -234450334905155100883952977834954199748, -4719824555342390726149594294167263980, 4615393869904134943238006017187405310086, 22785935608189396765034862378074520168, -347558534171882265107024492860588180, 829492809082378716719566243707588120, -414746404541189358359783121853794060], [0, 33412169968909372231447150652657791033259941549517, -5474742307923591714581920597284342728977004402, 936544564428692967757994274065980815037690, -489956234537379522781625354150786900647111, -13442067658313900479319230361890834729158, 56413757133999279224920179572229173822, 2377238689298792246433464599876068442874, 85221722893185681529714098582999404316, 6220979322782209849239294960178845602, 3864024062548546178315180019706188132, -1932012031274273089157590009853094066], [0, 30984068319015282345595856714701766319695423707018, -4894104319085380712458626988880188394764969078, 447046086943039332155249729061263877363014, -1479770881224821073905535244017115920325412, 5793932234272486336924438176148493323608, -12807051664610689544372127646466433848, 1287477429262932119936831471750984023015, -79290681903722013560164275938824521072, -1565264348382907178871393082965242504, -1897061212812254829561202122123994128, 948530606406127414780601061061997064], [33315847256234750777919121631228846134275245635767926642, 458118518547103524882717252328124249134371303, -1552762908837883797306141161787091060714051299, -38784676256914798380833765360528993338206247, -4121586143894151016393453450936201535407, -16002201379082533669445135664043683291479, 1526766394588685477811111812648499470003, 339385560134441143786772496145214801033, -6567993898023238505914676161098488936, -7049319707940031493242991760815124435, 1925303239667171949313262398866541996, 481325809916792987328315599716635499], [108898611701361338552848949345918522517637689139383284018, -9680593623733375328656118142078190722738504651, 32263397666717847646813932477431013936618612015, 19385334801791455453958706402019786643438411, -86289460321302369042836050633027784901933, 26223507994485646217436070188483452843435, 190619824397466516595246866357108740605, 23642608702928525690389850848257776983991, 14454722171802995094598987853041486600, 11464896631497308550534137075514682911, 11959302161222746176259403110107214756, 2989825540305686544064850777526803689], [0, 53378270807458391113136749063968512291051532053803, -33542417032636760766548356937619618211364457246, 6998983915730503157857142017835414986135254, 355581379404090811394080883727231893458527, -11218481338193074510597617692926637390058, 100608592841692522079734695405541708338, 18844202202207778318398104144589139572342, -128488002426316185688590291431836648380, 9598794568450717041076647051397334958, -3080431438123567779312149927712239172, 1540215719061783889656074963856119586], [0, -24841496351558730231967227600606954895241909087845, 25161185254587969270990632863459748384592095927, -5052842350672748549371505385065676922809775, 264663990049836213799787993080387275303043, -69996296420827367815360135910075303106913, 419200318045915606036487769399388886037, -14329869488537648415819872997439721911492, -26140515018823439786298280462127968694, 41732064498880991611747761054969731667, -1253115371403793279340105899794379578, 626557685701896639670052949897189789], [108163529029989906410252770307699699930867379044495286542, 24841857674450969361871424144766405644169411208, -82635736326024261981431858117297361819746709064, 179206516334155685038250600335726781076150258, 249462026734222274174873170649424928900748, -51913121770131904366963470212213833173144, -4067727255002487424898553609426796897842, -67740823575185653837589637210569556463037, -15526388002018940844862394662534984096, -16344952674939065099472586593137230860, 3274258691680497018440767722408987056, 818564672920124254610191930602246764], [0, 185893491505121812184924215867184040476833836792913, 86342935523363737906095025962154866428816126446, -16754471154539679936459003308739238445021254, 2444454023355029207571546487064474946864893, 104128187841579636380751246239924257659258, -613779239334774941460413958653120825858, -44269800100129705500632311258953321198182, 2314979239045431820805061966151645980, -61226281559853090248777994739629814238, 1010949157496025981756007504548455652, -505474578748012990878003752274227826], [-19661837134534800755352683655697935042682714065732683470, -17306290841224169381445072726551162492267922301, 57549920864914640997166412090086113573214698193, -152584716557466076729179363696828819105190595, -188072859128801479653391714377327630666347, -32073837827187540045069573404963059729715, -9350342868172278107389068451217245457185, 41324871756037145023697136973363612217037, 809079156169535204132656937311686648, -3086480262307312774000090511471224287, 15582237673907391912530989795131643740, 3895559418476847978132747448782910935], [0, 727250596635850070878587538968030745128890599672028, 9675765953670703815673538230141573851553169708, -722837197290407432542401139274270354413068, 3357006033894732866680245526877215519463068, -45242754379649890263960543663567603301652, 273013017199453249925284614645635616292, -2379881926447707164871282857438143403488, -21147572435523154208893670665653746104, 28741176133288633908849492403495169980, 9599162755622059442140206259544055672, -4799581377811029721070103129772027836], [-301416451640226775853993039230523383117607458606477397482, 7545630014652866369853321009918440268114464478, -25762990370822839337342994248052239103701960148, -912080819636986639965333726610340690396111656, -54844456734592662953705112708035154283066, -149536034298679917914777158038809687454794, 2800231989207435547702757215270167641003, 3259120094673564172950720017060946552284, -78513362570738357633004513806604657920, -65989242310981798032511656305752297056, -50096481039026238401971430003409443456, -12524120259756559600492857500852360864], [-415058408850249491488810386255944667046725756150317915182, -36269371324112392845895151416364213225502301675, 120858669652393601874870202566722798842932740263, 44291020255895841916873388286928730232806443, -295215962592272560011983096490348676949165, 224650760094641943906264486992349334696699, 3692959677657019312900051869803325761537, 92220670518214249128902976407858723821683, 48670517667853125556922722581111848520, 71371093674452181551110414987662982743, -90802304026396223976750769626204536892, -22700576006599055994187692406551134223], [-262230072465840991572006546659994582783844760840540030530, 24217787500649143605924997685706400149191751000, -80411353811720654203533951073614863718632860476, 391597677307431610293897267480815357297734986, 332940903498713923596372012870708293812540, 237221454589629210220172623985487160225360, 6006773472385395489259613284893693357680, -63014600817962089259784474996648562644555, 139485830061532549049478456080927894400, 104554985076440339294136223890859458960, 139723379940368839021368928760273741760, 34930844985092209755342232190068435440], [0, -1209947559516845102315333773068751414894612106853388, 324051837818227962409829227892466698210269185252, -62853239688547110181076904554709832809928068, 9280546186043187891586833935098085271927552, -98179962643243345838215122297243633173832, 770660850215857977769208152935537813096, -170568221082791478012677033252537876257158, -689481809375619672220388425572725238384, 86816961631019924785622381119891550136, 65005844062894180058010438842251792176, -32502922031447090029005219421125896088], [-137989570162025251423366502241212277373372880371043498458, 132918159564710089459436259294390411161995014910, -443589622343410953310962735352928569643284612624, -1141750314374385619551453350923066972293863280, 1249919799056151640585146047281789832543654, 236266316194297021304037888910678435595742, -461848789906250825391896724922844337159, -294602628401076921244662675066428780048582, 92871808606623937460356553080635380576, 91562272332616653481310283601406646228, 5238145096029135916185077916914937392, 1309536274007283979046269479228734348], [1438426457334916000305607534378706510805070196376530360018, -184132559445396630118764039324249530906284326399, 613514008275452941953747155645701608651798862251, 132375157420348727133973742479069907597928255, -1822121922046233457995391430949632334387897, -136153199723764837031818428780101584371057, -4641645602985837671962366973884308891891, 443504892263845057254733616703516705075735, -90469976898391973560943727703657876440, -62984006788452378766938838527754960485, -109943880439758379176019556703611663820, -27485970109939594794004889175902915955], [0, -2879017294018398929602628189924807566609043526917418, -246133221101807419305375384995303961735615810052, 47548971294276240409922630586435859927824564, -7561787283315152032547118189031432117044914, 101093112825208215014731219368641749994868, -255589781507957015341957612887909601284, 129986738026147177742296312140496772933316, -1200493285180202202085108043507450854152, -512253756865169300224342042858928988, 166978162626203548226476128306213540936, -83489081313101774113238064153106770468], [-718437675506083996519379177574842301145105106949353849470, -241579130115966958437568554046367695251417529656, 805611519732266383263584194572288302359073781288, 1179527557299988281848326715874939645325484600, -2434199664836483587954139766909812959445832, -687698140619534342658373181126957013580840, 19660970084896517483053835544022784098240, 562862243182304051714603886333333679549472, -314649757697175769522805337286356552512, -290947672967540202018392487449277805272, -94808338918542270017651399348314988960, -23702084729635567504412849837078747240], [0, 737729460446697180594996662634032815469723855183359, -864714138021856524187979940825905772071258594402, 190730652564988808310081814619006548672754746, 36582927720197388904042919642867160073561259, 455881338152700949293975520785967885772026, -2983315041704596605039267433317530773890, 519530147855823317202688711939752469395034, 1075590569358343470272204777514865805084, -310578697463592308569845692240520096990, -81647955287550987106126326058446797340, 40823977643775493553063163029223398670], [-2433880112751240381859382772078403442354379450507231996082, 47515825839026580081537665586898058170782239384, -159229664359812470536925577008528186811513338120, -1363200319497761883920248273311509164792553534, 235733309292849866168656426234683402167292, -357839096326063024209417877270704660844680, 9631447667470721843298709695338057511510, -82835985905475328694319135171534138206229, 6548742308847759481986046770982823520, -92619612178472270742919331526789741324, 396673417949280120899621513191090259376, 99168354487320030224905378297772564844], [0, -2596202105123885932929321018886260439355589155418099, -253415143638994094927147496539593778741143738190, 40278900444051556155566290673487287258489942, -30961280797807997073819897401663953579669567, 647869792843320658801487849408215759309974, -3260177160441338305355127196672647338318, 115667034819730659389812871255704496661238, -2111032596684563643585033125101346395836, -354556112467530922286096560965862973138, -190255976155980611670558941990654928708, 95127988077990305835279470995327464354], [0, -1674330469460083949967338969301747262877373491357622, -862774608227002200139699306046449101068656309188, 189029144348519047155042392135763926274598164, 33262017388082585566443342130586620375064898, -1867553800935922036103006424880907456940972, 10670844568793056286797063528036183182492, 492287249494664357362459185174731276611140, 1174054255658976977284102018388294261688, 1050484145448074503850689342926908691396, -110668742874874165526780065844730845688, 55334371437437082763390032922365422844], [296621998586413130184056371281092859169098285197772070382, 467120840578626339053661037144064094400223471664, -1554812584903386985647480699285655534437233432808, 1989579535510144400975526834292592117576164794, 4961883556327483330573039378212423469022500, 598916404218103408708238956958408677649296, -86447092879469512525524945180231409248382, -1224770268823773877901826622913066267487129, 303004213621971172330311494408140938336, 298216689703404549431487808097102862132, 19150095674266491595294745244152304816, 4787523918566622898823686311038076204], [0, 5232686357809841221077252408215341359566861150044863, 2694103263395878225569076535669643211654928099434, -499965049424181934183641615325101502933458834, 137467773242409268415579408921169411933078851, -2064930588365520900173032326652104210334290, 13448078863680073333714892863662820353978, -1369912727562844875869351207027265654222834, -4768325693527214277706298484094845310764, 1336803367298112351451895549840739482790, -53363460465966546130624910170283684052, 26681730232983273065312455085141842026], [-6463411260423157090703835935577116725360520173783353712042, -102898560669688049581569880138334791158137317050, 338977364782568930010494240004006656776351206324, -5567928317826358329177283297909050248988792688, -947490557358572887260568217214236358150114, 2046762834846211698087781979795642679609326, -173433204609850670063416468640188252030037, 332742126715887536462257857969687544353548, 602011047763304903652890618042064329920, 808899201072408611748631600176965281512, -827552613236414832382963928539603806368, -206888153309103708095740982134900951592], [0, 5112584341925100986553392638958064115036403344658236, -2046021698617404060927429137432814252570596109980, 429620735676981438943537230326261885317158940, 28799842477983080759375829577969682218295990, 503906701423868811001277756490151803294250, -929607469922009055380970633328982304690, 1168056524288707819755383257409158878393715, -7666062996821163913109061751240447661860, -159645322897557661674190620152188613790, -444563839369045040907290378795269222140, 222281919684522520453645189397634611070], [5295127337913073711920916761096675219735653526677576115410, -234655290166936822910113386863789257095105973803, 781627417916675859181923674620805752722947205255, -161333018674617176412292347280413619577003157, -2887828638940393192012739794430601341405165, -1897900395520202934501397659613601659865477, 190002487160908324138926007202428229628209, 643124273904243693926640480530026531145283, -735811915970626880631017577348286512312, -825732989972811389897003438263866467529, 359684296008738037063943443662319820868, 89921074002184509265985860915579955217], [0, 3014182850039462417406904272396913155239297411971878, -2129359194654440061338534012438047958353168192210, 435845392714789162541236078357483309761393058, -217226110976061413864189685745635601256042, 2533338442225871079848248487750885686486398, -17328255245476146344015919849055273489558, 1199822902332231293415267544667876913294536, 8869721787851405209024365970904051826132, -1742880553751809868359705511497892565562, -67033528027968226387423510615768110708, 33516764013984113193711755307884055354], [-1417538996952233837654480918082704295718976934089911203502, 309389345010538169341095760421218916417797605289, -1042255436862594899003238320980672995631541986813, -16849245692726846287481922932698155806583327081, 71573560473297302360303896412715773859679, -4717885054767300967253329087105809332222041, 221228907638491011177502672771007824594117, -301356805171299727101735120143972870207489, -2262443916454273249264585558943596502680, -2075114167548268169774715401410272756621, -749318995624020317959480630133294984236, -187329748906005079489870157533323746059], [0, 7531089040733056051040955797208684597649002248822152, -4442040668716904461917725335704798065806943895122, 896462149483530431241144708712735424121558994, -34280230604977131421616624900567021794236316, 2270205139939704942568775453628808964174418, -7943703194876898393499426453636558718266, 2451751120041457227161490768255631711373954, -19701486711863317464335968686438587464212, -641370839380646001581851947135822049606, 1019996534046958918453937988185558814804, -509998267023479459226968994092779407402], [1600783735883793478295885935445629350902292830535686875790, -2216047008345765362124660089801589529410768895544, 7385267194598383486145302623473003745056366909192, 3915351270543088276041583222049754185580675282, -20554832345522983096407309214430877332206900, 3361850979311671363750849023350630204335944, 206243718452252604822383885541471110954502, 5467376332473213043973126023622077785776539, 1969898346197307534722791809563329194464, 1418433908167670676478664672282171656068, 2205857752118547432976508549124630153584, 551464438029636858244127137281157538396], [0, -15880674779311717590576994101330587247597990596941330, -7472550426507843389281697794379233641457719962986, 1670350378546680409840299685606784230098274810, 375311829300082331069894145862637812413869098, 1148585959812364569653585235005047006385658, -4407280963359386100789599606193503794882, 4528088110966577904303301067012828511494498, -8804811115521811589166864619807530805956, -489292208633869590100897973839853978062, -323760748652873200146253421470023990492, 161880374326436600073126710735011995246], [11906474612571569085044275428759560448335713486887413061458, -1356729816560381017741244137087592476490909630811, 4527401313955912197464833339509317894731715446551, 11036388809924692511964299461305071933988960155, -10982282822143625959531562188122037885287357, 5166196655976827184750213711401448998678507, 206719015155266692665375575022580004779441, 3211007331081478363407652957528931270302211, 194905635891485574611995070323095718600, 1262592407209602920443983857194292992455, -4270747085272469383327955147484789095420, -1067686771318117345831988786871197273855], [0, -38853425743273197235020178621688157564505336769964330, 15160681953533128444604152207955640641397955450842, -3078739529127324016524593278577099872824868330, 65333283348482710563480028740870619545617802, 1844767636937700172620054267015876469601878, -13486505677933701653832137481435352416526, -8305462359908160144433589575245153082629738, 9920617626186442303475426266904574925124, -1236075733714309579985643502071602040658, 750498893860403902650468307146221339964, -375249446930201951325234153573110669982], [71161350864584581246986858145851454293651650167184226082958, -1931342321927696220899451351990972393902309816064, 6446113798165088716744853931777164888631146654592, 17497941705362239072006777167766097835805267194, -17071818368561451346304847839430603140806316, 332542312377641766978896532240683518486960, -81197898885413317179197585224139001113770, 4265369091409736131978370295275437846815195, 684831382522204270126012724831899107360, 359681244601579177373408571593585862204, 1300600551682500371010416612953252980624, 325150137920625092752604153238313245156], [0, 11839244328591502926915673488067484650186671518541082, -13038156839816903028679884831938274634996976130926, 2677788190528245369642116645877122505745635486, 24526681710262515137762989236455889378727082, -8927712612271875701862425211065978635911870, 52599393043154151660334567650363120627414, 7149490328806428405527163518626162574922552, -570580095627455692499823949273826983764, 5031064054891458627594866977527020225274, -1525834996159710256257265250061945583116, 762917498079855128128632625030972791558], [-59543200803220616611623729827430275743997661194891028789202, -3773587528465580440648194363049675684957147474952, 12571954150694726107739250925937854761005918021504, 810804664888727727194220025018962991941272082, -34494498219299174330520547899345636836329444, 9626689640839853587311953629696534449045480, 181531469420156264418123970446722160153090, 9420401127881650678849292261605287073824919, 993943461281915267671949142318361206560, 2671788560163359848766771388193120295772, -6711380395525778324379288983499036356848, -1677845098881444581094822245874759089212], [0, -56784756710186100889471527001068944024950728813269290, 6119843935910798077478577200946429234930243543134, -1006736302655725580209197299993725988164423950, 655121206170204427360291918849676474785348474, 12105635097505329847159116651399540743873946, -96922486794567880287243507944628545713122, -2632643647465168979361884812733921129055186, 94393627306949372387623349115478591080828, -9790522031746907242752968412230129522286, -655155681934128093524117451781833006492, 327577840967064046762058725890916503246], [141524142965232699398838302437963444175478743343655091123030, -5937913088494115492192963505624069842404426258794, 19789825720472460630147338863451181908188607903268, 11864914930686211405735237221161656222901345472, -57010052935006863989899820421378618840535986, -1110345469943170851891605332936747306756194, -507807040495375411145327571805292946016197, 13991194394147747808300000284039185131822972, -432296774403127417471389495031351131840, -172280876984324265270288515734328480424, -1040063589675212608804403917188090605664, -260015897418803152201100979297022651416], [0, 17889672964476379552244986787711770128840135970982469, 12544341771643636287466540060536613814139714295201, -2506039644668829576702636152655264236302751193, 164843041920728676339383627823854180945020679, -5548041155187220373100096207461585722475001, 57141454596228718305809027347224174972141, -6803863896947086168071061193707598583974505, -92571104398357039030674223621783684663926, 4663203225784954936816669790415286009923, -7006281558919445958428219628714209915274, 3503140779459722979214109814357104957637], [202347645135527048021508162385197103698717700380041355487058, -2202682906466531063090099233384527314224010399865, 7417001476924642436726793091039659285368187697509, 115050189981223003178331063670655662561225033977, -18647673483105498854405056794284600854952879, -31266604058270217290152989349961903981221799, 788434189483011886006864464225742768792463, 2549427137573517146503876191844065327090093, -11299021428688646886509974527724372346280, -12142550110036790959057316605976643464523, 3374114725392576290189368313009084472972, 843528681348144072547342078252271118243], [0, -36461504179283690873673319127327837116293209105201023, 52370270445291401023673668891546055598520075091930, -10964099201230910953616047737559331077727169586, -653191747368315520750503923761431365861761787, 27233520091409727451606785725462346333757326, -186691055276213735074772241751852566828710, -29396870726335823566571176239054047945088242, 97500806792359909218159336603587357721492, -18482456696974166818837475258670402546746, 1244325537648044590931659443432360907500, -622162768824022295465829721716180453750], [0, -60915357812045691342085626584235925256414978684081036, -25304947364051855681552644665959596274522459622324, 6472100837782409871233584200807979565787418548, 3445600742197842557275029177645772877782467066, 10653300068602251709550377184103540430864902, -67310776467770210151286740984902971485246, 17594108977030702239945314324388891766544781, 18623205984911534632848348028078608695364, -5914209068931068795808614225260920060786, 5445790518973014795467065821529180584924, -2722895259486507397733532910764590292462], [0, -60405227310378920708801046608727072229399602773239080, 12654911040118147939591914720905856780235903739958, -3323215760111422928990270423124555201191558198, -1952922497162965110565441754517471798284632764, -19255132212920205867450805114887298157034166, 98326401153218900227112516871150168568942, -9189718265972930638491111116559071544951174, 53773350634464560685809959640554830304444, 8963702602636753360483127294880449221522, -5792916751234244414854162614897117569148, 2896458375617122207427081307448558784574], [-50389678557242151848778595139804092724885018728900766325802, -21012579780512772695597778702236586714652991442746, 69963754837333888896072452870250687053615220798452, -55390445005111979321440088082975595651465299696, -209240537580018301269531644963616959233732706, 8886040838925645325879637203276725881802734, 746295088104704207030207656014624814437067, 53252093397235201890470468208948734465377516, 12305965035329418328435467249219827337920, 6085809543632929039027329480863532218664, 24880621966785957157632551073425180477024, 6220155491696489289408137768356295119256], [0, 29736091056852391485593828891029866388792817945436775, -47907631737697667028369896860638761434824554892077, 8011898285210737120665318051851912078677801685, -4783553696439553894186931648713231954534655977, -22250932912199997142390364437838103603354573, 61400015814838589789379744803051139657841, 21362771952574891283610589232246366769603928, 259160859239141172570296990179011356758146, 7114893116890169878397208716330475331543, 6499276902708739329728228240169075771726, -3249638451354369664864114120084537885863], [0, 9154477716398584252909290194742770627053566826192623, -99706051878033839299213411598305026481960468896625, 20116850953375260956688097256491676279467765833, -778970977201977211671238669886760572833111667, -6939874637371281859933832279115156111610647, 61606832615567453154206121375106766854755, 54323826095181157433705877026304190558428153, -77555494520646882799977655509708455278698, 5688515621039668391617182849653081660205, -3147784270113846158689528585717300168470, 1573892135056923079344764292858650084235], [0, 333008072935057386460686150765976689754038494174890074, -26515326472832327992473650545435390897458535143854, 4896829870562163986413009250353101694501225182, -1417076169110738711949592096737070385492702182, 26184458285613472646372944228186593435649362, -86955277706219915342230477804102721510010, 13557533637754249126428877471029845440385568, -252171855186347993033712413231784998125812, -10524445413946417124985499587290257865910, -12192784288829503938416345379199904766060, 6096392144414751969208172689599952383030], [117823572094575025017078403544761567354917584149765349803622, 7049022892441726826654139280444231781740771793358, -23207566424312840504350999662857510444662078660272, 401933919661362242305896050279012749900741600608, 96138022065093442704836870887483459389909846, -46460803661144010192020518923975770402671890, 761418380368285078220370009841534736982225, -27310648696796737340352762000799093287751566, -4855959721951463645310391368388088086944, -13738874325118069993537092619247441538444, 35531658412666425392906805003437413806000, 8882914603166606348226701250859353451500], [-522720508378636806847928831136040515359494194250533796348942, 917447551673578110169000924908152038970312708391, -3439980218788644197463515019120545394213287848323, -559351647080419164934695056935673689911222018151, -50774199259520517773650830312365218068544111, -15676926443954097450206121108804796219674455, 2102948787947150109806673151732185382065635, 12224927414563238078508935282513249611163225, -12415362007061303025343655085401978954600, -9265356769682283345764416755683740441971, -12600020949516078718316953318872954050516, -3150005237379019679579238329718238512629]];
    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_41_b_a();".
// 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_41_b_a(:prec:=12)
    chi := MakeCharacter_3_b();
    f_vec := qexpCoeffs();
    Kf := Universe(f_vec);
    // SetVerbose("ModularForms", true);
    // SetVerbose("ModularSymbols", true);
    S := CuspidalSubspace(ModularForms(chi, 41));
    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_41_b_a();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose line below.
// The default sign is -1.  You can change this with the optional parameter "sign".
function MakeNewformModSym_3_41_b_a( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_3_b();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,41,sign)));
    Vf := Kernel([],Snew);
    return Vf;
end function;