
// Make newform 1.60.a.a in Magma, downloaded from the LMFDB on 24 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_1_a();"
// To make the coeffs of the qexp of the newform in the Hecke field type "qexpCoeffs();"
// To make the newform (type ModFrm), type "MakeNewformModFrm_1_60_a_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_1_60_a_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 := [-23358185771581696169459363194340724736, 2677795447191606098169599438848, 9065173660301515822976, -3976283494919360, -1, 1];
        Kf := NumberField(Polynomial([elt : elt in poly]));
        AssignNames(~Kf, ["nu"]);
    end if;
    Rf_num := [[1, 0, 0, 0, 0], [-5, 24, 0, 0, 0], [-15314697613007994975674545652224, 1263143870442683559905088, 26436728091610280, -467245857, -7], [-113355332314436384988715808904765952, 894505988695541738149247808, 80161055949284353832, -247173058353, -3703], [-768029313405494928746068981312336287232, 12781327433864906041799038615488, 1802293574965541164562744, -4055243770593579, -507066253]];
    Rf_basisdens := [1, 1, 114888935397261312, 114888935397261312, 574444676986306560];
    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_1_a();"
function MakeCharacter_1_a()
    N := 1;
    order := 1;
    char_gens := [];
    v := [];
    // chi(gens[i]) = zeta^v[i]
    assert UnitGenerators(DirichletGroup(N)) eq char_gens;
    F := CyclotomicField(order);
    chi := DirichletCharacterFromValuesOnUnitGenerators(DirichletGroup(N,F),[F|F.1^e:e in v]);
    return MinimalBaseRingCharacter(chi);
end function;

function MakeCharacter_1_a_Hecke(Kf)
    return MakeCharacter_1_a();
end function;


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


function qexpCoeffs()
    // To make the coeffs of the qexp of the newform in the Hecke field type "qexpCoeffs();"
    weight := 60;
    raw_aps := [[-89938373, -1, 0, 0, 0], [16803326335969, -70086, 1, 0, 0], [35992322464951803524, 174673117149, 157945, 12, 1], [299755508987022417511362, -1403044288237600, 37036880006, -1472240, 7020], [851695669902422442886653348187, -3739936236004714997130, -6563700232248445, 3717411735840, 2748847640], [-169122982979243780796959895401796, -583738422618535810345747, -2297698997778049975, -198523391408180, 476711357265], [-681757826654522525915587722083484618, -219749189961471437382494338, -6024549319755170329562, -1778018042496512760, 2173189785854230], [12922711109406796114692658376063676869, 8728716457989636050011646346, 3214147818235194143709, 6757617129034581984, 57636170473930920], [5352443879580061745659270942708431684614, -8339657927815511829379966064368, -54339070692371065866172126, -17882672020648260992400, -3523640114226532300], [-3509809220779442207746251449028429051031244, 4696612373387110417670507930991689, 57120829866954690039238980981, 3008660373054039777685596, 11093472816986328406365], [-71716724615043138076137624386388888046671768, -33013810257184811677670737435535440, 391901774499002396465173904840, 4243881542623458750785920, 4377107807206549708320], [2457930939701286568711399455415401842172145772, -6884592607007316737818710706946554599, -11402520496074443042386155571323, -15442139686318742475421312740, 22226614560249703859361645], [-252920063723314572061141686802952403843579326878, 221420977544169302575905724405230403660, -2012175469560824360665604068900260, 42035379933334144449495975120, -283719867309816934023526980], [272480280634424354257495067041255278197613448659, 296504621970886570099602994890694220510, -639083293659480658991452236112093, 234636592080945310714249969600, 2345372823932992460476069200], [11623263018092363511518773575862852058147207274892, 1323234971733800833905782306493548747728, 53843299831236579382839624138294484, 17814261754442478807286142887200, -16089256723404993087692090600], [453620357720861528091745777860945108178763846950044, 116123384253477412064807170104338682301209, -393692399424594812409796272855572859, 642725977170663875174201118939420, 411878878606039106370571609965], [-4386330675507290008043021998277840658160780219339993, -11995686551896495479931039581198809142586122, -31648962144515765830640885246431396313, 19828043556958160450813584555577472, 4363770674739529391907552412000], [-11118828157822606085721380716353122980149699442332708, -35040571337565749941811345685622122875904475, 136409955453334299501113773006521224225, 6545089703030546401100060820760300, 2664481136938282724928678952425], [50345791684428209483634518478069675058064054705893857, 201794756161378134569016635708229527605405922, -1194408234127661632148625897705916974727, 259444535678517697198492860544438240, 818300791802226734323992467277480], [-1273919531947238960836725553330430800556922923903581518, 1254975417448123907490659436554759357938905200, 3059816024227025992361396315112215436550, -1624731671157109962455324399021415600, 3851608080459923789916554174143900], [2499746823102375414613739322530496783764022893204983214, -2510019994179709125706769617730139890859493098, -1411022595705894565627442772990035493666, -2176210408633157058650142027106518360, -15175739361627782741772581868281970], [-39005548747963914096357365058928753871956099476752975244, -23818527157741040558785731563795892312373761856, -613456076157371043919992472948104549541924, 26440933847702854247078371396598559136, 121761731571365798338342190990035320], [268150603502359254512458688619517907038237046846012814949, 15982096841527621267464859476815545940883574946, 1039536507603389975269758433584573771326853, 163103490827775692403860648312322624000, 205365358141479381607900159449648000], [827598807024434237331157162090449555007970631898594618398, 2407572816967800771354152861508454436320395476662, 11226542126380308011867109156458389892339198, 848446254592061737259165188967180899368, -926995877175493700463240053771509330], [23300548618205524588444692668209390869478459029501107604342, -8564445875688463581454977382431165427891798630762, 27860621284288473225380752548500997557850974, -41187144239603605721978669911155511128920, 53795434171159165063991848791819632910], [36430524207696821278432317112479882609301520329678654344892, -60837114704799493012756387223165891600907320201135, 262996041502026718266058953060634367373947485, 81565866960800370698888091657237604485180, 25559995209275331208251396877305382405], [18829966665440296666285611169794650013609199875410112796794, -80195184094955537552785056028590879013615122046096, -1349765892849705573772990885602188176320990754, 65441865611107228119919273059205454600080, -188058811497999635098256052578923100340], [288061772742425132769009605627018013346636366920880232502387, 444159257756799013365282218395305146540900367556470, -2846497010482702926355834962788754174079428789, -701361557905046267280297365486104474651680, 185747667810287050122373862658335369640], [666497429567070324745898119377895574908844911986330901394612, -848577618541551681266172313363033178544525998773887, -5333340279321886785661062923770138173564319923, 904274214828160389709587621051215217659772, -1287345207150965833986204096525046887435], [-1931295993832661862084595991241307030442418375006005334794446, 860869982847626445394623958539135659611190565973968, 20333810812551361089859206401037265270728791440, -1485846063752430493614675452300554217858880, -3352994477552800670819260931168288779760], [-40487424203007166996604654077551168563756047336146683822794048, 99448654655852046406261411222366830601653265365168624, -373380639165072674293433307411871155139453133040, 79182916044229391179708088053027674225188160, -123667261125090720877193062704434368609680], [72779931668179994149504228741212521074625677309112434118884817, -57177768341432603331285456446107382736280581542359630, -924308821361087386659798491690604887152273754695, 32121241291279047435083898815294639653143840, -229839470581950045407978625381617274160360], [62598432112338066593968675436732770970869817638269109010561122, -321693091679022616028510486373489604655491496774186404, 656366343777224339321031006208424414861194402092, 756789417760539321412965249523809741424014480, -269321538926637822299669321455209449271540], [180866960106520976112797202334798384725911978221582898871270603, 724173435574235232508593551893414335935011937938437422, -4468847032908315704466028557858293801991185378437, 815550109325889752534707192355889278722408768, 68301929756989229433664822231132776789360], [2498408806948538745824108116418213914601838071139212415273512660, 1182308578383429458545721409485167927684766009816810125, -40899266900556094688138776377253013724519244087575, 12752704893972560554983392292612080497686750540, -6328926295366476436201987732954742770608015], [3174916674800365986913902175809556590180166411673280488987173542, 2577328783719846201934096407161733686402251449178575440, -7273288642125035391530964154788997700123226038590, 27541897409695916779478170666907805202440212080, 14412835333066543047609498066740678984016180], [12401419772095390013165125172040583204876129320955969770611404812, -32604647409439986831681229100944160931187072329352420195, -228048930813961303400655442298605491848884877829319, 32309497720109945928721076813418150295509645580, 60071846153388460306424703476421384990958785], [-147207703333057036549957820247495574701197321701654482828911044471, -70673600485463440066489366503993288340533061803826011462, 246975273067253286998111948829162788938956873720825, -54030274636176124270047658864922099659071195840, 27246083528557972171862793325208148882142320], [13792060846579403895560814770495112411937133597918005608640970282, -43512411342478310065935166842919866784139528236609975008, 582319141028887939070931469608495770949049597132798, 301833315737256808790719256228451356320087901520, -261227369117052998449529079028025769791071460], [302564218428739064967932931803966228131272298444553803569821349964, 315745985125382346452714760420965319951073191711234045717, 1360839025730619187149709886082790810274767826117969, -835739015624724501482156591109516118767108963540, -641916449317061556790402886328588980322212455], [-978275258460282287752563991528681506520020275576380148925272987139, -1916769014595418783279764621602030920615498383077551951966, -11174791826057306722890802927526807147559060644665139, -2553804236940538459000968435256684825145253359424, -548825960867887272372814183573516470634238960], [709505828125515207935757978988251700768862472145731946390118459972, 1527944516290796457455467436863578230323582995544361144325, 7503488400873752024305729198637014497059241137287425, 437878218638195695051915600849801750593279105900, -131400023529889427474837140141808888378817975], [1863809232901252647454942298544543704007030869674838702434924623952, 4732011133441590044917634598523770869309658411379176214640, 18229966547169379205603759193651897147319467184848960, 2388852989090410809623308237174408681012630764480, -21143162105546581549123740591223665710094271920], [-9027421026013292273913466098239441614893142800325590712342077131466, 7703367680452635659749653984748858057244344672728172316870, 220733264602790039089309034211924989673973677255235022, 12788767915822385758714243545918760300649395477480, 26477181929766932374748387609574889132202515710], [5066409332628091202003809227249335762462885136773310488180351752692, -9155936375066074127856197221231827304207171682670463790267, 15323967207104980402666724407301926419770820916122689, -19260927105919801917073430282020664703088208951700, 16157843344465944927500219491551439751849177225], [-34852760443687497848770522840189518282675804561045654702754053217870, -19779909303729303699048862143872431936362403884288703176000, -437362116883125459321757508750259606782913908121251850, -26641935674676733420771571815611738591788243159280, 55819501014781224339264113322876991423842367980], [26439251212254849556010806191442033166498748903038596249969569926757, -48235984378845684965977623545572489539863469251375954756110, 2189696038384583844056134686087999679374067835386324085, 275823488482565009071050970468449105887609062828480, 276854626582780540918665801948881686836018256080], [-1033329243121330061704971383530884898324116852968432631443726683460136, 502952472233952658348459342470777122868989853543335925426512, 2885836154420456713097680597844269959373234028449303544, -390665314925914045831851131760852480460151582399360, -2866681752261399547936237013455208350423060002720], [1653593841329986284116509693941538143597556162354870724062716062225977, -2372928926728965274971702766482655281581363812980190463893206, 7907466942120004927890214021098425664224397325292952665, -1546283258521419282798535426295239239667808479994880, 2344097377659377332909402307123539545341547818240], [-427126298213689749714782459710950682098526606100452893577019314286124, -1187268117620343256180772684545461955120693752089210925461371, -10106188270836883774653772438876205506287296112282392959, 1643819741804331680849773174020221060931414910943596, -5474512730581845493075289123126771083286651045175], [2966095128967073030337710562129804148686634617428521663507468111142574, -1311509133435600792929250698965815709673061418260912203084794, 24566463717268448030279030070864633662037342413054645518, -5811118943583599546195894720379331326764533473597720, -2051346986678073839087531111240938154475956714690], [-4256071139010520815246745868133933512728129505071387766968055074089892, 8686495955793609039325441730664857767946400261284624319686912, -48872540000106737082473275875700184706100749526709758252, -3719257167223453733337058747981639574141698683343392, 20762118597506953811262247203012445594219145079080], [-10119950939415993212340585794028710178919532271418151919343357239496938, -6983402454421101554534320676031497336233389702751550492284450, 23416380592839650965600192276765497127935219542297778950, 9786986631384356203665849344601209857797549795742600, 8937396127488261011202597903997148707912508143350], [-8905637517654545212779925227155223878622430504498592796278460394080873, -9458352306491751459881753559062812360555620315125188480078250, -131900668201990563426682607618665683877276433693014923625, -62496985569128301739082770169426667446193605263536000, -18485218920630618951590955081699918220717700452000], [-29043457743645957825725559691392908348005884326854714834302087289789438, 72178288897543970078311561725203074721778786877121361958748800, -977434552907665590622379234177960743272222660439468109184, 48921777548793928703802833946810254246437105788741120, -69021425837402149693969147458545557953073094309760], [40125601207319306559705770767609005349105926154864055704401559413486754, -123430489383578509262023721544977850310554068804301185033181872, 194672725568586428557264136897075467747086221678484905590, 44383098946324766295053593559525654999895769126324560, -146389678087622105229229637974823685831735228369380], [-71452472863901804083846315822492975686317919792793350608072142128209596, -727091025441741293645234838614504678533432653954044825077719, 118702724438002617191547389164362269864662626649180494549, 683862980762764950448376939797754374052258651578947804, -44704703960118894581328125899528884463124103988035], [15812534655930477331409098382198155957139935669512229747758963917653892, 432723974630004792264702077276209372457767749571928235177172560, 2365623505234262774206275789708886400221233838139997329340, 57567864211310907779077185438808853248624090961821920, -313934656508894834546339168230193787314179222870680], [-450140822382562503984864278794553721315167846503571197837332866654994948, -800422009773866185226234156098097294526703961319113939483436871, -5120997136292021378564990850559950810537816553395511048795, -624146632325047877451074589555051519293858869051628900, -366230947787732575617402769949660078847419383554675], [-600889532902754799722203581883941822287720207587470274419053393465266418, 1680362128077421005940416557119905629913086625559418112262562910, 1513621195806389598854500068594812878981867770064072697990, -163770314553941251842650595327029112076713749768117880, -625958949253887124091215546663304192011728566190730], [1134214643426710874388112379503841857546320181176221570356555013055381999, 287643267190040541909282723326190654616243885575738940006768526, -1784081582048216516141051496776352142097279429839896254137, 766617205105905113495541059990512130695656281274304480, 1255346617302125461377395758760744440616449356705960], [-782463197052446502297465332635392284747933869239930303364240519024371916, 2650286228471867551972679205998613229697627172440970475538744885, 24153841342335659947590663104459751159919238452997919005297, -236696068140875457445810040071223308819847047031045460, 4479155263972119974747838833896315370845667612315705], [-7950289301628714057412591690060977518533891506086355349061638413407828563, 4182595305021894127417149724516763222166952561596430711211879610, 6422777014147736333757660993004940756797232015429641453221, -4188436259427403325155268022877435394076471252820428960, 38253977337563874092490976609030490213271656822923080], [9335374184931593005498835990172450917495706884098322802466262091606206702, 1587052464407611772378554190145046669487894817326938712960030560, 144481585435647569446248421266010461038486442428340812310090, 1048569145894760284081821760165978544248818842204503920, -36531215734688280589878269668511262081695607810183180], [-6920069976222495565379610431970543005898002955183140842475683783406969646, 17055950431250789235471761672278229662579510495781240059630595948, -20366441656135819985588696175202098496407080584771692170500, 33876361086114346616454228222297682112509334843213650000, 12155413074770028554760988483049083282871549220337500], [13669276434225077270178900507204959389253588763876214682323528703418101332, 8687729212478748205107079214183842953609648125327805975956545897, -441597886728021306397758708322934395837450185125031430419947, -7317863646574111514733839882052134622395101188599890980, 13227354514589940818383415183879451809332264485799165], [36188879413096015141260284736065660609072712435217644235100051049458862027, 98165074501217003455094923817766463686669882367822908040643189030, 346153151456261376876717296120552135039262165232480466093795, 3268977326652184170836594133701270908141305762870388960, 243671777874952914338171748522156059981695708444685160], [75713115771672956103213920019597928487269982152997486686144357654431829122, -277963846067915330658693888357191824180675167195889447649207545864, -268775361261386672924673741726111933998351122374236799421288, 79372015870885136655782616345739059969521132654053219360, 215914031901602552958054853322518610578466891711877720], [187375496190135269697871003770141825078426041624110523316739608790792542767, 424392444899298574849894126112123941427872114055317657146008732438, 398997929948399915173913951906140130361659070679413283537439, 388971141277467658801916358781786395300089742224881427520, 1338194518968833959102740063903920889962559772509253040], [-389548673049629116117597989354716389245928246477810230232122864941962836540, -43804155671067615812096792562262860426775232061642049892085287455, 1485173367459544994113448755190926838568149065469883276604205, -198287324484153253420047239160771593768662147712453495300, -463843670524200556881867406119169991188782410513802795], [-790770714185491632961233400263822019202463146795548901046516201169424289806, -991539281653310225391142699512461524825926929316332294766085832296, 1750368033986051836616297662492401742248016152790427691276216, 62527818624129413037406095485992746805923816084305450400, 738876741107381120249036379625921453582800001161415800], [-412207010964130468989700229249995120307756797882209543527300550518329908678, -405016451722727907445873104758795837349914540425806496872915363152, -4163743886185806359994745181838242413125537889876372328596258, 225886417728483307756435132749327813004875793543431810192, -3186073187681126078232069861080925639148855577576695540], [-77656074941956371035464140178775740009000559194133890543379272235925728868, 2108259756618612235876492413787378580638561149505609446146480979632, 10479280817724111139447176352057846153517719702859540493763748, -4571612376919919731066180708124274907280364393256338199520, 600147070711149280332551385823889549738295747996687960], [2283406727524901257723515998016432641846983669678820669295314043367388782764, 2174651204831262382324456428513961199249327416264230905779290144497, 32247429483393548718660108787976666546417630815059457725237629, 4392535398156136769193709280155494197438619441271620638140, -3907198087306618018065001870248034428031635780348389595], [9418442997385634786364804360024142382483460871627036097094416786061318867671, -4365671015350247099630790626564241185345038244524713911199908990586, -12456521285862689385123022330866443721426853214925842156774169, -1647434433416156883894508487112702651536151977292964417344, -7658242594615341864786693781070260502098103068236430320], [13230518679961120647263619960137632154491238076929465879310656587266882883424, 1748695999350625344362004978485004448954417423340357635605067094016, 52307096376717540981615111745575360574740184516744489198048288, 12718324017115943577579452377456638778151556622426877571840, 22948312962897513250790924998652707895705811396167279680], [-2584561572864020958897166859116247134315615777328844388549339116743345425172, -6297797330788053399466160771665298261222235803053918465995516551703, 142581668486777439480061913089674409979771506041604051320161813, 10290204694146620274811460361999117319741305160711192456668, -5061858564474077344433636262324492073613719677254422915], [-21570413994018911814044911496860244795864536121507345266781483155352188081708, 36218150426472691172150229135294638157762395271762919218650697152673, 299844107273261421040625092714988521962121672300885446827396589, -23375733717146006191721912990084386749829938611334182702340, 31224148998699781738346590254328762348126410107062487445], [-30194568756567850479498305125150124881204773999200949311495858008676214732778, -16289911959131236024774652028615965838189955833577817822860323246130, 296644133651282266414461313037262911293051912009225717324837430, -39488819592267743883034335387521588099398591115642758319160, 98663720156373869387708524836286807051988055098441300390], [-97349996002041347204809161426793412180379812406925734416021686121498815339758, 66968006560576215564184487884374804285907769595545988227913337069148, -82865102557465286288954635485528684868213958212794901195498708, 44603984517164794978925988589058419736679531388848007165072, -754609078191691105079302905871713472080531075354546420], [151782924388824691398007153032431544594985191527742644019784489976319187082969, -126798370044189060417155773692816822387243042921663997276101451663214, 394446667701061089907048785478528272794576894266886729838365169, -155151583214703382686612516757100179257848647495470745828896, 193408221395291639663956693712436131384954827262188113960], [-142924550075512434952300598539436926433177759041075988810915354372862984920508, 39613706773713577701012006003099287241440900417407616290072223800685, -549727291847919608680808521929055706000032540174800451741092535, -127263860407258123835934196285035231902554119176047796182580, -84458413684904176004524008344501563921012761420370763055], [-1101038950558744104764430546647565411861454478037998819079570545746150653108, 337657968086683926140532733398786527872105895099697613666433981361120, 925643622622966854121485334133611613738104376986060575154170180, -574711202982616424426899290834101579064864752464684043312160, -310043861036374215870509270283745810694205700535501046360], [67549163242419653677754107161461868956963038757819058692555894835189142349174, 363740841267852625718826178990914348001213526716453931142391976404686, -4839863762787485547582533138304737016489727291507124898297351882, 140448940118430892516762365280739043324540465436096185645000, -591812111452853625998120043452321540437457803410469436250], [431221119953952267922940930859883225251008735915761269381452478755525957325198, -149909918442471255167308983425213975790229331093094464788143342994528, -2681816001205931978112771322048300762014183364839173937816618262, -167244568504608752414924740840445025880153086305750178603152, -769506339888489757058023601922270891681809878676685662220], [47813888309432733314456623639564557003188103578223759976114947926232049463959, -83780951408494825686550209886327589796995199657032568207412040414130, -1283325263204184519886506621566228304061128798132138861949542913, 1610114200711755759879222644440822726688523983790137702514720, -496211546490328443704930591540515973156683520406166907560], [-1439896670405697457397554975819151287814159054073219798883341749854883714228490, -1459554005379144412947181435316382404773144383725556172331894144802970, -684446981477645577475356601097225506533940927722211143173030930, 571396801038892276996387251241482850046876892926297334559080, -215154413341352760664096928241027526272634077451241815010], [1497950972183072265404915830362267793455952270381252431691102696362042911884962, 2203305236231173881390085786755729988570855274758113839122078761939740, -139478146589412508067707278761400692656435740293241914921748244, 1081514009435943278817590181301134716689211435158467770450320, -647265834202456044536548081315390772253361444906576663860], [831326313160143529211940730566432740202032047001477796525040800091740077514532, -241965579081971197583944652612052392868875227857438188512603209959335, 22799483373803173569260538825313301967921710796780924318193487685, -285467612744460595015315766603751767792517801632081547317220, -1793755169828511342667958091789987428810584953764979142995], [337569322902475821202871519665205619326951558037499114706399135417276040578004, 4369045391696920708181523387473312366536407807049905908628578521846208, 1943440016464188311720283848788432509992354641916562797195844860, -154153151257058649342987361916114465131073550283927803740000, -67659971470752523239271338944584192549341806659463325000], [-2979543066672948073833850846946288940789721035782940742453658007033747388193643, -1625679171347500763375792824694628046569891505216512669375836997927398, -14986647213140562975064158052142870194651964387654270462426857987, 1825216942410693740801908488129007444177616367477723133274400, 2862706733830671307960545429529548292668787665720259083800], [3631880657525831465668736561757065423080279894427502315011572144753888371409816, -7579257055388928044761927853301139495251714395264002332668740554060656, 41296292090304047758508967196935014336113664946169111622642237176, -4593120420131913952023078540898437099335281035679846018602624, -11809201852206384000123970199079288125810559579418309898720], [-16895290908769034862696616324457197662368149318205264200989316947320441674699078, -2181032180095631350620165095581026737024515887065331438764352946901184, -20706131205572101781074763447086988814275242789418011546262895858, -5477130037844061741329572232154967836316839992806794825816240, -20411422563713326279211070582971734489484330894857214170980], [-5617873727044795264608950952449109832055547850848974937369325099197120793440733, 376026514851370068410413040022205387378835651404430677019305015203630, 11348322802649227081578072979591858177817089559343147321370408195, 8849186805155091674485013346271687220746245418895894567324160, -29228679337042486043035140933671082524205618253226702656640], [-1431366345885743952477007681660382181002058506819794572300872807156005051599315, 4425704890786111464664376766101822566851709605994953996556451542474610, 197949841954796733065271461024841868828058595313451037636511337165, 42178814235211698199796578065883699198664146651103521536056320, -12425112484423553576212226439129578365455886730776805978880], [-9709349093318067671847579461803755105085066024954039555277475825977789523632706, -6554652273504740603635957871258250855245949638779555567094726193815536, 4302099653088804684382770755053203308262876653966376105537091786, -37668382856052448874883800509922737723436051147579449951231440, 87754291623059994977144032909860695649000798686907172703620], [39927505710504871425145671381540465868280449829685312598131982205169887453043212, -30727867012190144304497169965788568732877610206904202384087327042161747, 391005153562882707256561921439697816200777647681607203751995459337, -10633679507444797390594800133562911431779582760062343736691508, -90024872772629134619756150184908623601003359283235998867695], [62205188081684417785396430317616477346402140424087795448060154084010869774885442, 27363292384198106447234586288339639113207354519577332003769199065938860, -334546620838346604086807020231729224174704961106249015384967787460, 125074428509088131757453112379553349631621780144707913364125520, 101045003861899817488648790568698024149593058389452643083420], [-1006672313190108833362288905093670957739829433772930676463233778916537172496261, 15880617473511639862900215148036109731331569655433973358185869978180582, 283614878843860610554848884794181593356654066938055383703154818099, -231610381015897324703400340569482051939365817784890220893988000, -81578960629577505829815956350764001038493646765047372611000], [-116685101386415889479026176832456292830337353260527845886196458950190670373995268, -40093352150880983021380572103628870132850362530998781421436924986387355, 772876982692245445570579705886249712716054971702081001835065815905, -82865745355780654486029519328325983609114469064972429694435860, 72873750159209869095103044171758131838668435094518089889065], [-133483120298124496473112434369127537614350252847726197978879210214954178609150983, -431094976871046209959211805061336456449301616410469828656047428004125422, -53675329040899652378257795885727997135321387657008246510979071791, -67334632738779995194948209420980916496390624009934209970304800, 611625308857911153573176745150609487905144755658781051415400], [-760956775516791696426676802018411190170066426718127443173904346524226148619855588, -440523066467903241926036481131782801015398352469809150713640880485168915, 3431962306102617754548430024121236125115532967107774850653520803401, 538115522647699364126172933607751090063331192848481690998966220, 355304985266654573821657395444209295664028288159570359946065], [839411968575760725573434114471983233932853032643153418386355524275448259486290029, 259391614855597055272692626720964233043209626774314930132389249151768698, -6067408496711606548104690368249807324037388549699149835820759363035, 1061946575335794928834209309137456214570783705715374299677100640, 1053435550179969146828173668231645115436161435111347552742280], [826220293080987411697110484310855534212005117042902255113615881150052562697509074, 846965624835937451227881668355232589726372398360024604343117011608638956, 2594704946239061706503432985340896096399604409166785429907595577724, -936171014854090950493475377915953934633507196045469723574800816, 1949542938875353843348823218986009746978976919884121536746460], [1067049675307691809329830420877265076888719395961700096724253614163055284599165687, 754527773969490449096381484302020004125920081656404701292369866767642030, -3468929558540131302574142642584121084282551014186707686530842176705, -465463409511825355838521647175446945971021775746302671520339040, -870634305744981343276513998664965676013340384148292606424840], [-1228099038703456119372095282425025238510735460354396755132368459791729864555897198, -2460639458274087095997774472662419389401539016172488934301919836082543336, -168356947500690760881114913028193562552440596638946918789886576840, 2716983733490589376226989704492522622741168718454370314593826720, -395201509171138143965407616650548417851917507670713624663560], [-1301121049655976860472962476505637946781504004361011791327933982490486191939453653, -1739214107037741447656437343737203373062687766639505845300106103428569514, -9879932920117123428252943189088785565491967097414646339301815028333, 770453889179363764693745236037203029988871818744672153270225440, 7095097390961381006681804689867808049224352466582202693361880], [1594857111714468279250149374966525223453541395513551536623654618701136934932998034, 4078760970699598623240381036744842327553861658680444705508526151864196080, 2259900151812177377741757242322272296304574392469613036070681720112, 1125618093174399712260947878353552895218354283734575338190391360, -7612736711409648170017095913397209789520260139671922710163280], [6326746895646292405947105111202337714978705844700443067556415427928807632051101110, -3754402708067087088532393154509152962650772630553157931667144452244161280, 17663613731379896802002238325427807834826264121910832618693466070530, -3296414902886995895665778801817075063701920917381449031197422800, 2726257064107690837360256692634976383309735003875182487987780], [-3254537719908577939699256471500778786169115190129884834540779050385913135931689698, -7461825324827499318764972196736719282589530347903807347828925959001499850, -53975472220057841418595151778136998577584325106272810557413394251650, -4751616052327795779636839711663538874317453173606164456519626200, 8186115955119449984836849483942289504698637556390998507285550], [-7939932020054896345376087480140995531177974955599655383957976803567666155661267688, 10982660370925770076911272920182174133924359446936516714179431551028194720, 73864857872689131625655599687446371747322429730657808566622354532776, 755701790144780247277189023387799030553958737428727569114538560, 12332283610521914969231213801094707613835414185662036658051120], [7429391977449732314502949683830323607821052714662145003924759027911003688843435204, -1237057077315809451805065861963277220589721887073770676984453297022691507, 15628690646638733820928458080086577220569293736187230702970197878185, 15796349609095230033036622508007756221240436221270172707849521740, 8496574159899967750610302832300673245401854445539445748205105], [-12353866819952696990653817918938396105234798575815436518210906236663230751710898018, -756945384411390709700491179106445769150926603794198523120947334029828018, 47386123508639066953824459158231838076065402071319988745531734615478, 18853501088553026439014211107133565848477160667589475097494677960, 3482145523995736666934696886015893982467966169518926416133670], [6755892369346986431079459879754941388693409378347853982177196154716564482333429459, 1113442241538418157880250606679895826558169270612002531079222847333045446, -8248291787357025887478142500135283671302750946289914459728698571941, -24544047268864043575905905461849606621365652918617501748915708256, -7899351748611663267754204091132816931115040328691632902832840], [10395445062042665388985450358721058084880815397058523775308590140805226048857856862, 38249562398303005224125818566983658908716479193319907788025091258153433040, -89522933371393832319801702988043300882120826406483897713889918247190, 4106570681602789034800170279313196897861706204987151354328159280, 73463766422969262486984752407721021045594380722366892138309380], [9901324210024993158103555061650054403159609056532552713584627105741061134840146902, -31726455092838468042812256946061276322902364259756886502521867507650943210, 37124832316186761096622244694952013388981189149042281015427857785310, 5182380014686706683436639973973957497293462710425774498222746280, -43098676106833824055637139468965357804140145765885422679776370], [-9306345040879825270952982202486216717002573421534839370275102436117763072032589391, -5247730195642706749903935668429652976875462145319621358287197554881909950, -145348135350212648576772111185286689788663187771519532046132075109623, 10584455647720780974006319941718484386703819627387839845318688480, 14595530248365983828592577348810355760073501679163821037993960], [-60965925915950603161831822808027715931210959372749259428427469423627695313225141758, 14575563453250250353890542443917409262484500005589861724358797985587866448, -3560673126257759782904596035628577395008087766301606331210243979626, 3600423337179021621234719653700051902644795285312083108726871120, 73906526180399699682067947154342904057738979009557045378587740], [35991572994406264922096770828611180717164033108806190635702824075281540336028190244, 36330772209879824903091842082039158020739485063144370661351347214517958649, -785736464456299370939416532417125264127582296849844972648134373654939, -95090546258426772961196805254003751207726809152081454836699020900, 46797656745593131183523885376909156964789416091314202542021325], [-10845891980134474432914934792959333912083467709489708189704623311825189562848669963, -23612013059165469666943523259456447946289910644994164645352213593775394782, 311080105796207005574972921368526474225973416814743633733119826889397, -65807075700327067045997840649562824683727572735865060872269116288, -126936387466188536885229878495844847535494312631407820929317280], [-36450832739322364368841434252047295209662977880353168425470536246712532628105557148, 126671953681777913649164575817807570078377756284147602979018331319050255685, -1099245304676840122027038628998046150992253114890056393140939655097535, 53244043969185101206027044391788726325565406739080373170362701420, -170659119201989861280087431223769952526857867056898416508552055], [-25657687997417308405248296364896546522765125412160593207157612805230532385341302186, 79540258547942115468480020625873241201268825288736100490089265375083646342, 380932974885314713413488173186541748585870441469151165940080787826574, -357984489165129205963497492040840076441804299502637605814812423960, -3206617576447118520752953226235752928997223461440797972623170], [233961064620929427695316208698371170223277082324797429428367191028628480989935943052, 34681650835073894648686879640139539757338014774652153939171172771020648009, -1237915985056206363392000885953218151336858983360190874804637068748555, 214230504046229930130650800984349758668429469069385639123346132060, 95720014041665936109907136495950237316232809594917444082161245], [30111441356187836701671181269406324953543571744519141325927405569947522460305092499, -12599043727110652164855129454446191882733329221380879483383453400170864114, -592061740490538632435704648468015100284380394746724579534785025200397, -519505594755565324443480463743063981227655931414137698553055472640, 171809519501692678813785042741856741776128683972271671761278720], [-30215302818690500801921079211364637715674716786206153733648407185177088379528248323, 313849688867239927370683966203029296876009530600524850822458227629369451490, -2743218168859096746752145471858123088118912465354210978208536172134515, 87380061494863204333063728811582891901825652803710339580512031680, 788193257942717540123739174974554971289196588192415585521843280], [-166972161018850710194637005973457230458082005846910398824392601521785493426170432388, 391095806371779854367547300762831812248918078257179804871573420495439009685, 1223415081392094968787443042156378638903396591543804936144591447008465, -344437068306254180906706815812738332925097602384155570270657914580, -75158617877872526570533493998444467026866918347824863119470055], [-306205791159173162136028122052343079298948368216180436968547380037096259229526488468, -1363401477798469817416462422521753903641954072391765591729603794987988636407, 1753750937785620011998446405400773598579058088454924403764800948706997, 699450130799043504470943519336940349742995368911523180332693766492, -588126155171340048214913690925586847811198050956440015440113635], [-293823328788398901635895827624839004833449992579173376943047734816948244096870561196, 474336003462040330761324557724520217554386169953294654141889328637073561376, -3744268592131839016324127939311657375772028895496748381029185036170596, 2134197213162711212190855015497620251632014339367764204196660991264, -3650734050745403368228141368618899867885119087822674141057784040], [1404830171522237344333428600317644554808030212951225049017822853156216695116388303702, -592366479411400927325272971531072507231131731445319550124964358289726645056, 11996348711265745875958870374825842932970739651513015615121589524059170, -3191605679559930642578748540471510208072354229436963351850298286800, -290646672462568918057629898783319727757830874468182708535511100], [-406573649760768833851358548644949072686135351807872477419807736445231608425625568876, -2749569843031262711547996025712548839873433331474364680624971673420132133319, 4514268126604050829056364409658783877170799456538850463522477544173733, 193544209528527420478858313903974396705534618305623984401674993820, -7462709321858865651870621594034316411961544239350512224142901235], [628129931610751812780654520990776907321193180879657366035011391902599289056692211513, 1361207719287794654366511481784479255202434750812906242480254972211767435242, 30540487072501164825418221311823759976938500099113191097441429818627993, 257125235138801568024565107302053530704472319612404411306373747968, 748256542005648539226871393551410513485690344679533607287407040], [1167657689263221279357794099656800189100203342322750292158882743037848957407386557434, -708684611960047057045395877543005647130956135270675934565126513355695223360, -3168082605743195419385398569915182492256459727071647436075351407648178, 1137844117653868981780025724453004794034884534181356932958170894160, 3888350360559774478325190753417170461008551384239507217887409820], [-853499841484628305278718854710505529907063615778939926341168989292454926018583948388, 119093817893044360414856224513106795081314857215349852706877583968691875360, -38019028583879176627541691443519777891383594027123886465588761118376460, 374282556194703895382013410579354676865313088046260208750896903520, 14781880525135053567058086898583599248226824211264158745755838920], [1698698726877546177783415280487773106867176061131585052704155033471585192348873464212, -3214902900273252690827656890202485237411511018926956070845469273499626334275, 51469812356762932163063953024218732519669179476673208496453260791644761, -10150373178883658880732392547220119350428437943043373381943053977460, 191679166967053523702050159251665257259012316740076936936996705], [5390110340924892968161832223779633942162949770318952580487255817586692769987245832082, -218365669534961720563940015557012636438093353992403962715725695464309067860, -29160330620157900922487844336621060589916264364821326712820961144793540, 73628379189961316545574790546991818077555436912571830815663814480, 7224892535560896450697604817469953143251051074749112223173735580], [-9710185525766990219654209062418809484521149467153191494167272259530598234221974913546, -850686750769839840969807545086355306398311865197264042218162910247058439994, 3485557619603895455384424927427030623869535350732527215554549536090574, 9237663692733972501949432548340347967248632758005248693536903011304, 3178006826668541087254148350870921771947255119049034161049332990], [3171395185559144260661980965276713943557111987557342792466506980198137175469496146764, -2933593627287141781766618298506389060667547833542311889402144590839524244743, 102668367972811658535154211303088882987976231601817646725465331946615269, 3619171903859728960028583667165527369701724800188090030733048005020, 10916756874382901276418369140178237595799835833324272989101161165], [10507500424206249903510737432787340661832953237362926710530040367455613646795699764597, -1965362670611895430197060472598691565134051362777122821898837740380168288974, 53171258817005751754183239050995818705838407398385707654032202629595237, 310818816628438342193959922635434702156082684738156508026682547520, 18873308575840252040155080142317131179228737629866100396709053040], [33322606879863678446227269214270938663625393484540052634793886467221476539805714450092, -6220551352307947150821857429614442646572895843220174991624131152835120124147, 61630003161996628688226047357189646875579351675290162493573383388225769, 8158559712293773356475914213203005513764378279715382887466264586060, -16688089988077945566290487246379899668480476730265365111763018255], [14211556652300044161575251845654895868128776460848123025089695069943403649260340657442, -37934454337917396295154570971067849163003560871241067394657327848190193278612, -223442696744762968540332204953053503641544288648942944997865308059980548, 30235717711554934219144396784130290847423085722733901165017801510992, 41673322828798430885240703306367856911028952734079756878213149020], [23925136961987726943380420740965945791599703674817109988811587796380464008407727327747, 30219223863766930155209669078325793859456102809056458362644544707328530748230, 159061578628477342729928324836410855998015356022477115086196360017567595, 50843974766977536292081490190429906120531189005406227555752264995360, -58555071190304852992570124816396544776325943281752486709380614440], [12319188109548164026807936055037920836947619180363737477945216047756198785380308318572, 81399465843708590680795144063061124937172897267249465411837953213056190927665, -198639978639134803709731569999085459659311815111705855521101185512469315, -12845022393428807017274859913124576861866395210253588600947014417220, 50622159461091242227776273580743567828162985451717349430595580005], [-68905428197089509789913826799989300199656516728048817325494689108209395688580836538386, -8277228818921847705953279967444610744840004611711241309631220944008010458848, -2881334436161664580083678824742723793043142054356567395104405530358646, -85220298325162513865487769049999115757753764902903306251615827735440, 3236360858839483807355208712064410438947847305718935999286045620], [-47738307118921122075603518423662169161986044697648036131497480104868625484391689860073, -43261221879536082777327433713109238999272422722241532977576418526886743686786, 487344845698842378531765835813601531183419819383151706429890213584997135, -54715883447564263238366841721757170196505956285554107284235214296480, 231784507107015556918430085125215098007482419710854193780141020040], [-30381697262335006426404515008730966420112846407052046207742264070378820071926100914164, -29064716137453150708392413936657834640112480343806507131836158055063848622451, 471193894123740081382049004242911816689775336513554864852425677745366121, 51768646984528415504216713240554506805059660916306752020172208830796, 162145954786528618433829488283122667849655359779773759816769281905], [109993629703131028294482996783715750353441625568378672403932757784269228778669192808338, 1764150831921016084838963580457226899642238078226653695958402652979889099552, 1006795609275633788985061205240446491184376946665804107487417753253055158, 7512668813523641966200351146488366800291916233779755990761882428048, -22678615346638159293234738066224508484698300143820095237022851700], [-122873029442090047120841379274801476537408250342552167448999089064132070393622046098756, -57972682599461978525118538924676334028758307191622544099247384947305605824071, -1083104560182323668270503882533748070063026854331142579909387853569129819, 21734922423336907737124179648898586079904413535327155791949916470940, 180543456669952835559541192062151625243358680656393903342423141005], [-7408119975672792501461782724582909035834720121209982991073749655016058241604838205838, -6905598078022331610473475847008658314858947286147258817714767926791347200180, 1946973856650443912207658955700440420350921746128134558809519939156766556, -161375562204211065107372691197438060118866215019472196798912202426160, -435697983911309760824212495921543937695648961700502689603319978820], [117037962633095955804795356035487695864612626233964171520223103960570005675442566317167, 74347181613248303806599227607424904099582944031138069009710698529964499304118, 1817122566492117297980228803081512168844831320454797085817434627217331647, 70027167901785572218354966664284489568009919452361086260557571805632, -252685102988373027477581393422226457085359202983421738345534724400], [418706000600316980106835148373085581513599552856324870186891403187350703353709308699704, -40882018202944289247192591083604052861582292289498222749150171876445278950032, -538435174593274775445846610689101580265863489623592827677029115702882440, -83182278797570338106776072359844143598727996299800678298403823360, -267815462947565636212140942178271644570806887943577577238450150720], [-275324258719372909266540062149413450898462926861576417680542637415079927470872811809148, 855326124737088377431276386043684529286226818448087687440688517990970451565849, 834319590331735316347926949957139955971925082718338782746674985074732805, 450738186890146564120133290487726535215978295789968029392484159057180, 710921284226120211691781807420570035672977766888880335883586469485], [263191374459081248035654633053672706417346983313735470596152834984226860099176804566882, -440379158972950805721761012872934564309692924826562326335369710384121443530440, -3601654662857262742400506863235334007471399192620595790528023958740325160, 588801106645859967017799217449368021018782138894939595222048184325920, 32462026969941974658648761215982743006198494342515318621510663320], [45970885209422636162881165496364614876804152443366041105214356240462596147817550688349, -93557607513429495248007400731800816523259054163241570097868845484203710586134, 257859964085133476266534741621941032211763398211843288795872842443286853, 33680583826626107438449959850464259387443712665487128317174377800480, -1881352348972539549788249050256773338814548350310567747134713832040], [140644527224892811975046488474035062824289005929507629806511705288286567745812895705022, 219573557146834478283242573187159687058098553590509356575715111649690294381696, 3051809912819219746233939966674481864217828175686414221767548375787540762, 586931852232927826667231720613948022036011863993892566457676708153200, 1217440114901444746718755884468746187840974274392560083084715238900], [-326967077953637723057613398263794890907579344226719622335366872285519307089453478779413, -1507669003060398528303171087106259640990256751349288735738129790297324944363970, -771493798755933920609032663157959942455086447136362431379608247647484149, 841769448444710401504513708925877278970649145789679631477764020780800, 848189200859923173604606507034934674730978097509590447252620641600], [379193493287781167749918057909155758176806323697100450041289180229386027797210472039012, 2624659336544761162750524018070337614138947850188316130908421344554678235324720, -4563782485957572005511958236057642838604578992104725624837937108095004420, -439415321555704596092364763155377575966191261706614032927713406700960, -399819226908612857540096391727232738388889424772198548192616343160], [-595470118877777962428556654955610760150536391231276382339433215706786916638849579467866, 157953212993990604177338411466280486714938881803025889833961300394355417843376, -145542359711742122762149320098268765572720887067144921726834324449564446, -1962159397401186133641519663035564701660167541649027501225696470611216, -1261049211148505618564829934768947436116492492109536222740976202860], [3249933930786226304271526929391652951655701195566637979017349069184690963370697748687126, 1451575228524532453317738574362007026207035557182522809152372857751063082878374, -4531218680581380676490538313075129452843150989858048534825501014143276754, -21019013776939461799563688536432297271872195534586834893386429032344, 611739593496939699169502400177759257111289934803178094419871455070], [-178949199612923191283432945674072372171870311975637565535039978069072866539383797392978, 485811004165026760310289854560389621150715829688306441124872023315919078775206, -25850460460244288315084394948671053709339556953386578925533636876576853458, -2607372549683314493672148197679575759131095737661758563713059302621080, -1276179647118938695262787398196550420960737299919026184250874485410], [2717593812562079384335592435156921375439786329532717177065848689126327223645150663624532, -1626750360678040253542754373351771366293879954219436523139983220353220235516655, 26266972304365094253462150158617062130264800457605003418486496348368738205, -3010550140738007733991469012804079539572357985186461928518000669259460, -2730540719664444499898936747896825685980237104031337462143892447035], [-1550496645201245917610975687330689571431566607391559540422430418798114818962961896464883, 1570527297258947837428504760366133859884588931166529558884874334682058593773658, 14224095836304413090244308075515810966029972149843036268040357409554405029, -273024156616145621030370515048405044466939617459405743429780586275360, 1849861715362196799725222172951366097102156761387999406056167210280], [4281158745800205972996277311743720731054830329415471840719682779355422931724908739894194, -4464469549943802549408356099902332610998554041009712422204829263404849893445956, -52353550670168774790215259316185829997119810660605188563322641815324699124, 7706110185511590545014377909861779810313601706524244214483261892776720, -2483747689518475188290003099909455160775640628769933176852049271060], [-541658439450996521871910920184692619551083034277646493033597047734059925740479666135118, -299154816392632861804554472643661881344245935669103176022421625760451484522848, 21440746767031218737246341470263416760066736643448149767154644200920510358, -626965038881567590034248641878296466157890393035760658818088963271280, -2257780816092151454792798719214743835726321157487735329181728747060], [6641115240455529083236513422968124552123866982195928335093244021926306522411245001506427, -12413801611146445500473298936628574042123493717164652322061308821913219143747330, 52377725386832830362087915143180390458334479124416343887892956154643253755, -1264295996995168512226816609311533668108608001611512549141020685170560, 20536539461538985939453313240891148322489488795324074589601309158240], [4937581510854094498380622664130544334753112637824373089392462278984523718199479191699702, 4424504565802660941857202052099119523693735394234342275692380975576096806018494, -57520081990185459267291713355733383798040963310414203862379274089098815130, -10325202290291142450700996046496210585473691445878623426073855577361400, 9215056117049614497511506817453838828644741904652447109422076580950], [-2327886464510369475290489399669899328369149343120334980725899593435524669772804232070826, 11910764352425852571419536333537536842604787227025049338947636533987187316681056, 45219064664020710067266435332987374317309237862529402813202548155666192898, -5694644856150656514848097484137989294499237240055236337446306439125840, -18165221955020740267825627897672371616719049043271872220674587105180], [3999404324354600509465755207045137002099180259817448040195107367412480391890770509677752, 11824412643117999969500007389503872167573379221117118183158932670077509065514240, -48485036672708865422502560070655146181589244792953884268535803869350071640, 8128117774882376218493492488222975724611910445807599325880519197343680, 11312094156943591372003021819720125439998515694681446553771393107280], [20993172744585092040328775109525674641747999048381887415808893257270651788887094685377292, 8685713201276141619222553820899417418258917839623982209368927481621964971871593, 106736163428522998122391139976649197344952302860154465102439455497309651349, -3689125714406554584627403331483420805149624509422983304791267671384100, -29349029939464221678121119607895517152719386403677628510264478595075]];
    aps := ConvertToHeckeField(raw_aps);
    chi := MakeCharacter_1_a_Hecke(Universe(aps));
    return ExtendMultiplicatively(weight, aps, chi);
end function;


// To make the newform (type ModFrm), type "MakeNewformModFrm_1_60_a_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_1_60_a_a(:prec:=5)
    chi := MakeCharacter_1_a();
    f_vec := qexpCoeffs();
    Kf := Universe(f_vec);
    // SetVerbose("ModularForms", true);
    // SetVerbose("ModularSymbols", true);
    S := CuspidalSubspace(ModularForms(chi, 60));
    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_1_60_a_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_1_60_a_a( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_1_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,60,sign)));
    Vf := Kernel([],Snew);
    return Vf;
end function;