
// Make newform 16.50.a.b in Magma, downloaded from the LMFDB on 25 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_16_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_16_50_a_b();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose lines below.
// The precision argument determines an initial guess on how many Fourier coefficients to use.
// This guess is increased enough to uniquely determine the newform.
// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_16_50_a_b();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose line below.
// The default sign is -1.  You can change this with the optional parameter "sign".
function ConvertToHeckeField(input: pass_field := false, Kf := [])
    if not pass_field then
        poly := [4289992005756109702361620, -104434803447206332, -1, 1];
        Kf := NumberField(Polynomial([elt : elt in poly]));
        AssignNames(~Kf, ["nu"]);
    end if;
    Rf_num := [[1, 0, 0], [-11139712373505648960, 17410920480, 160], [814502346867205307288640, 6966187410422880, -11698720]];
    Rf_basisdens := [1, 12670249, 12670249];
    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_16_a();"
function MakeCharacter_16_a()
    N := 16;
    order := 1;
    char_gens := [15, 5];
    v := [1, 1];
    // chi(gens[i]) = zeta^v[i]
    assert UnitGenerators(DirichletGroup(N)) eq char_gens;
    F := CyclotomicField(order);
    chi := DirichletCharacterFromValuesOnUnitGenerators(DirichletGroup(N,F),[F|F.1^e:e in v]);
    return MinimalBaseRingCharacter(chi);
end function;

function MakeCharacter_16_a_Hecke(Kf)
    return MakeCharacter_16_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 := 50;
    raw_aps := [[0, 0, 0], [5401204796, 1, 0], [-33937672133946810, -78841, -1], [41826393076734599032, -99835658, 3700], [8620012263944688364255668, 76202146518283, -52537400], [981707932652784383692094414, -340286117859137, 4260419575], [1303585190963313246796784889618, -2043132990929384798, -6325836222350], [-4863424327203457171530773403860, -18528996595190482627, -8505702406600], [1651052677544768579983631637586536, 672080200343670345266, 4043926350742700], [312435308431547730160618167673318110, -972793429813247325889981, 2068317919687048475], [-804936663925442212878555363998046752, -2127130596432953927412504, 21160996591207173600], [103125992718389936402479023797080057958, 220135701522236215147433627, -1016938682892827725], [-381036547606877530886371391517346335318, -1048300107021286074353572204, 8880071172129768485300], [5859673124049630106349587355381370701716, -10593834368553128911626809157, 32425517602920708841200], [72857978667284880986342891571212860780752, -72282053492482834301978693388, -311091131213007830232600], [246733593341670643376686149777307694978934, -1056418100476345825698681510037, -14114653363408826401481725], [17671454438867589211865171366621502775746180, 19895825943222398689460021448047, 81225961357722016471200800], [-41576700868908461705469114238127247370186498, 485150219567104795251517107543, 184905579413053905726500175], [-370601405299120406294048303793525823366626308, 51104577613136547444127733366601, 278700156272482139853641400], [1337693485623726456163934647704871030756010808, 1896382006255381314203668425663062, -319963344618921466386115900], [-3338546254809545224315419250245889762228222006, -4054875006526072919845469119455462, 6042920524243897980414292650], [-12025789334501823142925663864408222527990237520, -3230133946479802455811702630232932, 9177387958713241247952177800], [-50249819628242666406920971834701131002509708564, 72249429787032305415868488360178965, -575673391368883790523410774400], [180750645354836702618735702472949013987429980890, 602138904033141395074525359417829210, 757513770799503321866899542250], [1447948084779322776231915839094706352094531786338, 2882868584328306900384901999002964330, 28409718427781803033286550729850], [5921056116994223310784757760714608936510135162022, 31608804240087220550995020581365965571, -19174685316996104426728613922725], [12512699935631940894681581040352672927997763281176, -23649311028397348941248890214633723730, -6685244730536098563395018443500], [16468201053295405648260130684277039687279838966612, -30894162770689364448214784946637643309, -287902344409770126614731484549000], [-41691970935193069645754478508580803738601804181970, 47032781553815948264272751226524899131, -147543631183956198715513163258925], [-61742467650762712252034503405500253075221169140366, -215847902218539463076553165022453568976, -484651045733132969887877180677200], [3407809322989463778932386541999484288937192788326272, -1277405977709420805908588006250107267664, -9811081795650836775896521311942000], [-3442757057655928693894309912820456343633155827892292, 4137021948566019106300940046457340807209, -18183519168271834957346548432052600], [12457241273532637040553312439580289980593524945901578, 2751481556979575564797330746735895917188, 98594413627538621407610745168068900], [14809847251429799631980281122634110351340211315106100, 21294858414080703144620877032623977565747, -57005235035373116924290506098817200], [100157568292602115197771830833161224319238426823342550, 294348384668004298699687975786186195709095, -221721104028579390401646233604061025], [9176341110771906892977714271203355225182991266806248, 47627866286863475217398619257416034130, 140796123149051819786769626469763500], [423368852779463984544216723558877965897461574434093918, -64380873040842573364909188408307398545697, -3091608021306695162854862956416654825], [1821012792311870674281713931652102547642058004525047196, -1100870167446391915360790408882208457643015, -1496721855969199551148491912062999600], [594021847090193279358884312414508759365614088245963992, 448864595933410087707965786229868050524526, -7366359792714014030178579587034435900], [5594714354685369530467587720408816042808762608845300334, -849323125481969937505355813387049772473705, 21011589371094894636640100122794111375], [-1481148656363420714170151315795069748557090850916336500, 13272623661091501456613540684321890805783389, 14335972525567864591757373317613569200], [-629585052359290616526182973351609659006314183172671498, 15105519988174532801424433775856009274647599, 42719057804044148905809373649843913575], [77614355201083248922974111488615622871404568464361374528, 1414597793522858068979276547897766029789152, 237423923877299982081635219367075431600], [25026613546658719009116855187132325505168148288724428994, 82220718712685865165046693477965603333818490, -148443686646734803303303829933022492150], [56975654750354643735185093707201655366566884277935904518, -156967933878131584397125355658290308529176961, 767084428763128224498102596585817841975], [-77773080695826772175210199066808835099702761737955351880, 89628328588909572690117331879306958991696806, 1070120865879616951420272238443850195700], [435112974175415962301270960421076412129801293977448614508, 127662185664389448038191775676571118652500645, -3950674166710451938360378914067705699600], [718931555912539075628865652004083738146162926485730756896, 7208615483276620073831014487239420075679751384, 7839571627943168145541754576607277188000], [-154648594965728354026317457985065646137221853629866305188, 1443528289797986939347573240201170348394615353, -17719851972891537535997912371169262700800], [101035094567407871512817227092084086845260372562531460390, 6911239997189441436058673300617500443319801183, -22723142618528426135051691365249829141225], [1877517594672771755774929015250770589604539948864632821354, -754627471886545036918119890195227152196212118, 32683805786954115869075557639366517949050], [3500452295053587576819578145068228895966480646082973922320, 572202074257518427598980178685687478601387028, 101651767862788498371682087633775213616600], [10850817449538789758553532912879906831781512428539766462962, -12069692468311371554331765637246341135427539070, 77748079427631969432059636905402730042450], [28497210237666528253392546546754534353043974292435552670148, -31498279141500693062852202954569886767120171105, -200692576220530943685671928963661298040800], [-19074070604957546671052459917377490709869815157563242434302, -5620033150694712670191965790683267316518145408, 61059173180885563837259961805142519376000], [55784068878687084324569727307479018319185717752373065657976, -124104804715301754256717765064252573165719628026, -839733968758251069317516457491996569421500], [-71246174462624240815782422751713818847514222151867381615410, 566682432556886042187593961227810013083363848211, 935780808740889433075641166492408328506475], [-34179521675259820653800933005447742674433041287123090228752, 619031702548954090842888823076212880062023191004, -1328315728799523193642591189142173603415400], [340217422525380426293997546709064427880111387931981153475158, -1178909564174300752321685379190629515244301225557, -453465994354545256153965597354751635476925], [39828368676243726451227044421832836615754939111729524608922, -1287784509522986078814013410009437320713298109710, -2507523498265394202433571852169997546210750], [-221726768817906973059417089008436332799233696181224622088284, -2728418573517324413528460256517532714166683841281, -135548286063305682190520503278396091451400], [2186550399101285457257923043487229726861659106484021156520294, 4345826883380894205631734688154590884554131319215, -5028161323326349056450431701660633243456025], [1630316669920148756794250659850844423653545451724595356820492, 2510389501313035917765464391444012475830062347365, 9431436805099709958512051369399238483135000], [5382642887979518908917489753012938440502605108078206808409928, 7066227446066977597212275330218452963147418599226, 8346382409216022780020652233299266538043500], [15088997273478690635272271589825836035873998152299831552203194, 13304180294641048181964881222063992904349585840692, -11056252481492817432224401725927798624745900], [1607122556767609410045875730447829746701933903035808670824958, -9880216011333977444522858827121160444176462101181, -100585867692573538034832201939871762322058725], [-27218575080980110989761762550460936271503367665079228138748812, 16681092327788721110378768878299546590866010225483, 167669227881593397805717676852506188809852600], [38906520704811696533257813029362602022939101351380254381172818, -156979509625573184791316041308149763978338122789240, -322814067314735656002864635495160005683564600], [-4121925094812014709206309475902854494118435505006989186225308, -159471877920402977929197500878276498435967892789081, -507865848882825367998776123763661132455145200], [64966517331000027948752972205768318452886460194646013745735710, 262258138090089429006542963880171357547347537322763, -452679231920257797591600111151517798103893725], [-236961863135292557295357305296637011366519265617921972478430366, -313342753619131790686790166546163853374006094520472, 4583930150215858235398521410261604077004200], [136042693892874433091106565020314933608227083370001734226907160, -84926971777342677833848217001094399520864531372754, 3670637263139625358863369331098648825302850900], [23329595258836538609690600761987285242877131728588891709369232, 19230699848370657842686166722097407592255268790788, -1468912755376625382383015347431324704350675800], [-106045667019235349907064544199068886126651223094304779273653066, 996835143169197437980856135368030372296852191916595, -4277865948618757156740985372763964982655489525], [811761244416857857945742037090836415819099560965525770560137540, 1162405638965344161338036811755502106002536117991631, 2372140843640207483713238708917872347379262000], [-136942828793263367437590223436074110951835599529110371447224704, 1828723062653990327599941725472328951714676784982048, -7806467334697495477425841422554535054869211200], [1457725864263015513028373208676729998677918895089419246377591750, 1563565675481229982453794844305858805967034159906283, -6734097621647943159212207622084324185291558525], [-4126313568975752305632531854099330446717217583032640879759819442, 1931898905398043294877216005708575555235178942913851, -9531644430746910985412313356189976619396654125], [3382817205791681661841627004453453989900707519499214200476276882, -588271219587639793959269223490277268350603733598126, 28142569987763746000860978804258385372969004450], [4012997751684795029489808472760727504927108188066329832719064090, -4097895726221507552573246707680090574364361383407036, -37361553130733109185669190897308054786077846300], [-6752259261140330070947879544388734597593654641469722245504500580, -10738278536301844383110078836697003182562290726434783, -75783465318814356914651105319419126962257913800], [-5292989844786099972059980321253936193065235876080215038132065818, 2856200606188722580110886554400245502377814739080535, 9267740134235093726011433231649410643788519375], [-1940823456005965527721779150675747940053412551564963635209578672, 77624942662684596669817588145031617092620221878553540, 98297130603218134168638678866400423811326752600], [48410251840761027973902750578196568794156724606764501875247832754, 15433178132844495621071662990399926539413250401634322, -15956414790071386712952571358664654528106197150], [213035036475751928306218812932589596409363104974583891699310280, -55816678592091692594243954287995005433676719263241894, -45837608847633305758181858481771058659986231700], [47434083085439523155562628414122506276088951046759337039176692996, -112326744894729461689831742033238723558618525157961673, -180786503791204955959851610981564436044758295800], [21382346601041704211582534123674501612803968251254650982782884290, -7031878788123313657145385056970777109985736991306278, 332173688105819570289880233015332813654805215850], [23849788643229365842791907024040910179358819905340954711835440458, 216564179900168565203465762291687258657018625492118980, -33557406728049905322944021965185314831602047900], [122062493622141598123051069465606142956204056474592540894182099342, -79780017114179021760464014785261152829948309149063965, 25062019566059879143117226795483817687433593275], [-242399482450320404591963982153469576684372294276824751250498208464, 110245706180122275798574749896145525622289879238123452, -179157428169201413326466742173138253468015715000], [99303860636308206656730229134291082864684268904318271619639626092, -91800823615754146291152705681816572587607521215153539, 279265745395579464513564429159956691171489454600], [147683165952985911485950058343385770905762264953548990312849061920, 285170616268391675947727048893420521315157392549930840, 330962487422444283244089423773355505133194476000], [-368263091432551767176110911188148230250403501984117746004849096808, -357744932997649767887875825550407495830124576325562562, -1375342927522199466888194390899921700648627424700], [234039482257705914912384256397017749981615680242518066144948849108, 383733892675894038639046822304942230882278799656389051, 4567249598524740629030420273348799804012147728000], [-1398350935942878655640551382807118675910518451185285079473624012980, -924940808139868333571029326405262541352083832981478659, 218528842016772171440500995220807952849537452800], [263230760726868741029705738365016683959248776078164837603211635336, 1600747070868437563329159639884291266015523746723200858, -188406799370422324134145280414523398454492622500], [-837004653507021754918097378437175590015974739343983700519928240450, 1447465659766389415792717460275750458972832253213983727, 4224316359729537621448755012077830376960475787175], [2192262810376097337028317543112959449951710079129463214146093990282, -1410649997257155347504891124497122503113912118063023180, 7140086052060706938281103189242950943767427065300], [843660677942826511640444011141286326470215261581066655565152663476, -1652709597242083281109847541994671493411495845828777957, -666392461420533883435749726048844018467657388200], [-5106609960753048274163892531114085376905457832073002188227575884578, -2768512501580359342036753209295221055563169314695964937, -64516414536932055443444726669336167294657928734225], [-1864935914794773077292160139170707153065099401828398006736058797028, -2931240804423530018989211667651135269527701524460249087, -71889823822168033880147575382598833882797419477000], [15300431747641761172999824099603493257735529017622015766670894160878, -8192017576056175711328814530493513226781528764601006369, 58084315705926779172481996049163603078055466884375], [11026712540753283727735004756945228989703120747227399411228386841356, -2572150010750035384519083077678603408232206374904476827, 134880438149555225661688893432806522969609998685400], [-20062197321403697069218477945257810990711729975878221777824131052870, 13085685988770012963990736200480992001198512721768859828, 49755397968881658184191463743650916329482366028500], [6629394099843401786695179799976023799513542738331539121052200068, 65968073634541191344262656558921200328933436607632503095, -28446164582113031760120974900419971976114209829400], [-12359894027426565492336078895171791642538584076389261582614479241662, -23313798519768213444877952717587440124027426185492063768, -127688156626379808238689560057529084553708521187800], [38342237294656430259440748233820931334645900095578471208295707169652, -78150744208387072074961637844799346493064812693181635109, -73353762835296129897113143608186529890397922846200], [-11020141524215450510633277187155118073764968037229195395100262569646, 74579430440012781355007988534071879210874786757510916368, -239093468168785250213120631368617105029925594559600], [-53402713112936502025346780381815099722401520481705439044066493608920, -9616919306770342645823245609836904870775744068465337806, -1030775466029164976447800005436870238320217673513700], [96099443001805392847961251324425377216700781346644835398453666151642, -47438249322156536093278770106937426219174418826583192358, 653960917328690709999000072057032123028204848582250], [-94991616348150356951984275949401700251352325724821046572514574078048, -382975507379972987508325372874488848356675954650516930712, 637061768776040917155223423946382488697047305915600], [60954569263521772772065610826271135447873143702061544197959630765734, -321673094900652660486996096352066336783597919386726926921, 663747956710845435618965278402809731709150378896175], [-162899514736880141968793784248811632422321241446827780986624941568022, -319294600077418947380988611387942669605955585083662298270, 257606617531939979582943618010619657977107908889650], [-206637298796884965327603636509118497993131795847079765609905139240620, 300463651464816634693839496030628224599627733197191745795, -214187435807686852240230769546141013139935167767000], [-106183524556728281452720592999999947081908574392921836063498714037752, 99593463611223780489113956327301930618539131963852393466, 1619752575294062345415136909099332406433097172865500], [-491085025829670500636466824718732423137210685160609774516108672557438, 751464314721907320034830011401372211960901692661614261930, -642475459085464549074877947371440034708137941857350], [-405697753997815205146840301375341993950279364631441969023130639663684, 345694310575202371762509796729883293961531777762893436313, 1092669932491083073045471227502853817575666800443000], [611200982949729172531040228776122069924244603953424269628076814152952, -461715435838014875221926908826335103166824006860668096218, -1834666094137785394022396320801129031873602269416700], [-538403094736079575089732894419740217220605080537831557397580089311666, -483623646565775475880807765929639478363023915328535039357, -2950507618144438253084579215059821372857210165948325], [1072519661271349214797742193467576864360233764740159052155280501583020, -326408532857027124797606525918221341503712143175759589051, 2999815930660097025640488707609894731522428888672800], [956705012570599777122101714765278607527849383331041013136643828952022, -571901538802192710023500778881218257112363480561624864561, 2674990096557287043080485043393904623426542177587975], [889827292380887644147535623578601362621143256849064045630774564201634, 1942399571025994147539869404067285350804361469481488610810, -9116170805801636049820456633656889865803762249388150], [-344320198334828318095236885025754800139277667477445302103840370416922, -5121503756367463252803089953823321499645977316527868530261, 7893035137119721402222331270382121756925122494206275], [477043517252265032924127104163159033866652394569117892368032662256916, -1295826354402589487909636344097873876227454302978694855061, -10384792724944757252863050424715415945893792305017600], [2576805556843281159088773922157270152566791726608676804431245222107788, 1291857880592155651281368391800632479359046539707630243485, 1309273729325600129594727892914388773379582135378800], [6715623396700747239704044859305065972175742177605342633093063089359742, 3807053283988946404055915403783643496063634636965390511527, -1885246699646482816936279322028169944444197175712225], [-4107431522834939751667943700957880010129854866471298536936483937881850, 1094636551565441536231883133907724346177061244118173937547, -27331892391572908892074945414814129036394708457077725], [-2415634521992202484821208928145769751834291940267563170055082980103120, 7194856274414088844089535976749117111327560525480196441500, 32426371429450370901842027305526133707551995126330600], [-6984998872610557142306380921784090898632752575825192925169711372754008, 7823749074783088369506375484657740814551198507966547840722, 22785228811842580961548063001308149366563052263718300], [3564638373907447528692310965587060403241278476218158006664710744596894, -1314447949719675738328331287578179557544998121424300786861, -4028040191570658775081238266820665851977253406672725], [4366760916319458682208103993646609905102505304585093521121640942434140, -29441257137989415131467249462655881781169869438069143088391, -88189198322445663779835640164902007200281770448708800], [-17100111874433627529233655137625772520783621880282657522091463065258344, -14678417413510435625468181878804121916126938072733659691650, -68534250926085393069835341189520972281429568113594300], [-19344552399145848524210511974208344412730847674288025971484511839743472, -25902535384829506139818976658923593389698424772876342014476, 4180621567722244600717221708052710322317727419225400], [28903767108283363239098837241525774542867164243427672089158893061522998, 31037003247081505073668457402914662014759503639698680531607, -67169509147080392282766410301202146231187613137789425], [11141137691634267569150252460875208617712391535053852683518294834057082, 51890146261499558375201519835810155730224834919740732239092, 140854572851051297203804582678326463137930934548033300], [-35522714750559698553532815669952101753224081867302172256806660084443390, -55123337405792381811376335952262610337880068009429856763398, 104320469805242877495908262593944068293536956668115850], [24774370274309104988414302281293202486175885221696172955348600916241734, -71335755425891966715759019484181311814556193626173568628325, -292169456757769994283017114724381364757811113765294925], [-5364893924799687209811696359392010148441477474302415201104282156956628, -56541642960571078739153438641726038427106077631598828528363, -712269245638820346111443038711798470358831767779626800], [84590547373885892761761051801724879181695939652992360072914262750131678, -67358333904452954674926081642192879412080991943493319024593, -24019303628989715636454204977223063181946109915929625], [-40697445130266426533268132523943073406678352005140741185192532022507350, -91368704855793475014598697948721454802857773186610076506508, 1037444192818475628916913561941336775175768499835415700], [118537585203418583205208440995678557024675669824300662306217037574661268, -33313759516250822241414674534915370227152459859265959850477, 1769971808787097180008954952291706970350259988391041800], [172551396543532016684850180771262700797573074680041837789202408841542262, -439622244097450383764293406960800323742149469032294296239181, -496569552036238591098227661662881800394425017897335925], [-28458677056001740293440011887717882416814566755027306921424123460344504, -223657705257161428455967334397967219948515925851305212157446, -185497042645302400313674526015778869897729849459958100], [-100557679356041859672927028494210902897774130673908462981396580356998268, 74394368376850142387702411853776044345621857909119414620199, 961737462948045846777708152669843425531556828277781400], [-189628228357732624304468771921484710482695130044633355212651013413137410, -217884842704577672454408373282289890781320851761139562655537, -506759612300682780579682536995925799238688363675157625], [-12427559430778085446253259512246658390450316965982154527344814673831880, -25809272050740358436567908076230986160675780882246694963802, 246385153061594846502533146721899854607596991361250900], [117216901120118436002024996248150751533668406888336870512979349625903254, 1080404645487900298762030126599073013972779446872372532894699, 2451590694373719988187700705328040760204122022281388675], [-159735739897259955092678294314208179837162535703903331648216360810253862, -40368342349967963291962133154174880839764883160497323471916, 3910228490405921958027829565667808710098171194589037300], [-148927414803314095040514438097292820916297936628491649149283081001219740, -865437209404825941081468696986436513171930997866791904848249, 1873890746245700627277060179172174013530248743941516400], [-690148220398169421965095965227307845983876593601114157239588008767701344, -1001411825812157429959775669355434527194780153006009316316392, 3010891726458512044962443905808625713530720165476718400], [-632016812680087741998341308490571545861635941560335226906721411844706002, 2320744503276848715040493143024272633030897987536208846949955, 6449242127579965746624426588249787176570150105607682075], [-214469931188817235314475934040415438213427051074146042027680674734600078, -1586480193517682870504082388135159241224403911151258661425080, -5353356831148844723280508408200424036652875973070254200], [-1736217489316765175476813775834200298725583501555468408044371995027456564, 469301977626937358328710914079452348765001369398924207498085, 2805870935479369258258202593334521930260816118713797000], [-94792755996739641577625468924558198941869168563275879786017237492805368, -2001218857235543909702677284462264787969059344895728478607670, 7215521142590151730275831229886714961431406657758555500], [-1946160882775367474576573644460634624817432348481089196223148761509245388, 1897806936092954605408641118348914697405345155658200996687971, 15888812521500009440636693204480674637097304442130852800], [-885988322052217284354904512459057250274183116076352494228781804141416592, 2953034956322438156069146600340604786924589055182679201625180, -19469049976193133448681737208162400411481071880234385800], [3430734305655524860228225784291727961122922286207959103973355702357575400, 827752568804927970729421372480548746606798483689661747023026, -11763359055952326193898209269891333021284196285403979700], [-4234753541453964054054658520438427391058135290460889483179766113371122270, -280963468687778620786959029853867898503598444402715952328230, -5480652871612403881070112905867045046712888132684934550], [1811893037522998277388574623557305244353305353480482841743289548293176618, -4153503822178721666645719504352518294473129282857336110608310, 21611464960009822206773348216182456155180754958602761050], [-3366944838456576690691682207782318057908613677804616072763760411360051858, -2961633617482222887037787284757471340698566658574430296710741, -7138382717348748285057437056461231140257542267687537725], [-5072437210044112892819792191838031854659336658145393494333350241517225588, -6945783727402567668078635551263698433840640955824432558767195, 9664207860670425407983433328499047459504089595655395000], [8589314994305570234739835613663078919263388892201165232150603187345683514, 16093756374273486137777702349018094246589612640074601738075492, -4855912213112124292681126261311390659750347198709403900], [3101606324250497311197883136371088318094958269859668045664556913940639672, -14030833490940410934594197137044575195270733245811564555862650, -9424228776592992668238772828922590533402993147988421100], [14298032008628081886248704429228083748784499323592864613543664093268468, 13090769711811424714625909100428161611052534310215890600387795, -80119913886099946808549379091622855102020165300966802400], [1890345814564626182933108480582320964719744542934889992084782145219880658, 11025504864919339124394956737982300006190536347522692561104098, 61998576852921522566159745066289093654801881592387203250], [7616113888188281040405188374492783081268822249301381633303381406976905896, 8074282765731894709611092500470338764536663375036778884802418, 8267656883345078567685568085779194101313021305964463100], [5654533256959716885385974813693876195797055899488223533425867784861677088, 34622685951031002032711929321273778245428546556960238120673960, -69651753874603925638770591558539738791291205376682462800], [-13868081759919846522079708563653896329879741253012521372509458161509191642, -13437023384910143684544777211165293808342593151856385173823669, -177266159680400803746125154114183804389959247054639005725], [-16325756223521131704341467965127549920253472035467597483278684088885629710, 33067330108521388218709493989928412040512041110263567576853794, 11459659108635306212626836902741871937319945125012100850], [-13481719363250963027885666753583846109218161840869083196687818610048047306, -60731572372797589659527151679529244205832719686183541691398513, -46519312382660839989488535570110524259794343625782580025], [-61537912468044609694260673146032635404926422652618778011360330998798659900, 192799720943437779870436570192347025659362292398169710796391, -69686895045541512390454356207306517885439368286327379800], [-15824772710593498183889493779956713385305179753426308945399851158511730498, 14717427508762438179013900752669533373208093225223188566498171, -463088002501932336658458445367383734538344057266347596525], [34769073465882549060428119480378291437033816590890731410246595475998014328, -103993017022504680689387856976709366031829018125153290165585690, 11313981611603587957448208559724503848736338655053849700], [31283247414358045471086904637165727363586329566007465539936115014011441034, 5761539702700432910720010187248756634265755739268348673633106, 208571962245406254996373800185327473656930210599156089250], [-60993008629811796666100642045545196829436904118630756034708840039833499920, 40904111909395988675743656090794057607290172194935201413482876, 109789310089435120409590305101587319002039819086789697400], [58123731933543401285165281233555090175725120863974367892436384223535981210, 4806882150473683315047069801333787022126626424466226499796178, -193461402179233413870976082772516302746551856828815177950], [-72732267564107551016454617931062083097815409330134483495057989810223276892, -19581124087318539638030075220045272875486103644456130958489177, 265442092365649836835305194152979503091098162890534472800], [45330874125767677648576560182770502884027356675586114421601768917311134822, 119361318287161280812310471528148103238656972185157070034954099, 155706524344110761633750175938426066949816613443588518475], [151670386288636312566211609002364672317828143994410785827966759634710597976, 230926715511669294757445724874462982396057261150988878187163694, -384838604219648588107739709719762713278222616371450775900], [-13400599782395978838305295326042609552680182976869979027382835798939054610, 81524227410843503547526850531953273600865196107501656406559111, -26570583313394011140231143343553153206999339509656385025], [-26448816982768456671509668843038632519552757788906867691608327570328254528, -191500145527711139035339732254420987481445069539488126026250128, -15362441969835393452888845580767581685298535838972964000], [-161043397113546179168251752342264218170263194615155386249743897078002208772, 31125729299186048089709392397792269867197360358917591204316817, -1429069929254356592496277885673328904387207268267579804800], [6625050377649854562466002708823451361119706449692339757127277706472952454, -59300661689563853380974115546453059462771311206520164380963177, 1697629163210178293179085378000468608389621341336146248975], [208188132891544112424899347321587576169591528830655269319703482468741266378, -96244102804364887155130855533723232256012888135310846711027438, 1649994910848679693413239600786395371079351342498987985250], [329354547241174585434662904393941221403034640741789453156631441710022709936, 36443471848646596177499572442607170257983814189332871059822028, -512167483705193716201644543888655479058134033171509078600], [334292037507175285538700728268238894673484785092637309915842438743418855830, 240295494084672458519555971889957110045479497116604293919559271, 809947140800285833989654672072889472358506453065019386975], [-169962523230857340251589348279506750070909636388431329142365655539658341602, -174614486101899571964336369219570871738178895498272842992842209, -1721206160929124642074281238522853713036995184202053139625], [-90266078018177201445492581355013454130260236759858388926831099359755452964, 190730517302170806878328806671110687561613192463763361088073481, -3765060785459185545692911596748253884233146017868862314000], [32544329282148139610612282715327757576334470224283700368030709308524774890, 1116344258869060016311183800308937732025446866468101904618666788, -1261680879506435685678135235744473578359395270334185885500], [-51845865171462668188028381147048893552956483489725088669510851381833575552, 2002317536234846988840976429372603607183162180925011648490638240, 2595482703861469330651837068579621847873967481134292291200], [-616497119419455483765451092245855274573150921519005729396268820769189221246, 1469934558874926619790199938100288968763722337014050387575912904, 3080913504593920217767105135611333592681890849814428776200], [-93132320071728170601614841931024142552984626436934553876964804270499095244, -975425984725146438669337210390607140119896188483191458719680717, 190691828090540586035678962589775613362595286789927038800], [-126079548867427635138089045824450884287350815221272384555892228453280843092, 1537002018558495038839715672985573853647098381931413192793599437, 11899439265352703740617708012649953510272159120630264492200], [374422823969101683861635981641602522397560868361297052343021370939885635422, -2512255570533096227846572989742401636709463356337200841770742765, 9004313689862925790296446542911744236725517676562117300075], [-1108927026847179500297202321376937429445854502391458300053352507161110128228, -2765699768297338406595288656597451027443274159526582291070457703, 10082037766923573512005202831271280749057777094169178182000], [-292797643704032795746266502683159652612524533859926876699365747202071454166, -2301297713593712888097365849382027930802858970381066558454507038, -1605724162111099770388082853361227433970367029760438025550], [-964449701588665172322988100068796430489461253999349508226234548614272033358, -643657655720302138114021703001255257504362924267473844346458928, 1743557732644512246334526768179008613273256272828350168400], [652287306072081974460490332279272156714200817728283727116946599503925927294, -2972535093119862350211992377624585272496737067613481745781312513, -13865413122875487201601612308232305905387793119887652052425], [757322389952796875081202210125594438483777172638983181371479080364548860098, 2700520990534422349813048870852397290130037200713792506192416416, 24361686121248324776773972184772257393708367912569512247200], [1169389037321177078965196697503143147391137437950199369223873561136294231736, 8649717685293311532761876210674291710909191095312070068828617206, 7024037003254584350001994009390462371605112942675899288900], [-78554992555694645469512155304039021246239769294866679149846681210783869810, 3876051582913441569713160466932103622021316364934947478045342223, -23254202198495603118280660661521114711536880934618833095225], [-3413760514083795254657457162700533025304828159016488599234405996501001991632, -7630729338195883075295043926239170770763931921293842429334207268, 17747728487951774260879843215879654406569963394981501145000], [3639374416586980417967879235655987957272157489868189556683928388240735023638, -7198337824325953081005906124515326635004729766448152589390444349, -852930108506875769770050020054826864772075179875733085925], [6880696179796745999870883216264966590185192293860152285791293068747809509090, -6105378407722017214823324787413288830377751318133153755691267328, -16422406080734833898679414621920437950608025339614280518400], [7370556482519840284696718971046704264703336254463818119116917733116514641620, 7834882876562100348658469611713630928162469876209997961825440659, -27748395458957815120412383165196539260600166824176714580200], [-7525941726069808350934302404240241085577862491611733384524004844913282223682, 563815449355348428362345275781307086153166898151663602017948571, -18968471101793637415687060030592533741467754380303110514125], [-30282273360874304299911892628629094046406018912359442343498125252134114560, -8240628245708785771155934239195112828397854105280847452026976704, 55071423654307145421527389647451510992214904352017343929600], [-8757795458380391619426642018974631071595551145065063010542046864417859263684, -16731511856465087554620539525550075432717569659085729778490363151, 4771378015383037871608464115948609693945501285002635393200], [10342979358717654725968510860551044399381058302135717345634209371759315751050, -11381413062852585392262134507255665844105741259780558360649322822, 88985667909996612922266434695765569802011727671712985336650], [5481214739928893886129062583421636331429708318660328084505758993125233435828, -12475916122742604836900714607059840966467559832555728808934263413, 84356106263138649225122357691445147892704769319351955534600], [-7683703944882627595722248856538572301204132431861129507815703719450781998062, 1955767172637382489161887093567983635727763009174034630460322690, -34219097131815249885112346891567400976798822227878370885550], [16160720320300564326278260271157674574970377035949287315200005603125738661462, -15507087128852248734541715547228721490720168057714653726477952417, -72383387164869083501994208098018536452424719506186930312425], [-12789181305246081188253565366113364912330809859355202774283226190740403098264, 18901354947628376186303216524937555484625554020568958501153093698, 120445507402032268155462219141637520529211571269882311205500], [-19516639217801552496984021230199183639634653595174506813527329421490101011548, -10282408200631767939309283104733107591890769986562365378940159217, -60320467945796532833171572150662456511478020368447621201400], [1872426864617482781547223439329114973007236722610658217775343688276753006680, 3123286492937446372971268265004837092921107995189501120834933870, -134194246908392461516415322580364857602537648840829282532700], [388016400678389429671536014508829074473340780090225780746537280090599189162, -9099718333341629478020101119653438852666301955294642632100528236, 201669111717717865791010002249041312945849399362628645176500], [15079706881225709358194819732940123496393931208195159667582812920785853086672, -7490853787427491399963901799658553712630971143011315090591624924, -47489654304228756110476176951747183206139232829443058677800], [-12554192683665898733639812387691680805972651022709940980313538737489737215918, 59483828080522368946457898017216558594545120195712970046676546322, -53505495119340258411111286593083363015056343446443036865950], [-60438288237468639431772231289052963310258353705327290887733527335735787136728, -5348492453288268090609454547041556251502992751491657864952898830, 174452870527120572349104652292957289564759059898770461347100], [19511451745041983985867040584006941929789710195666752290048619285172722924574, -99582576391436073179416171224461630646910393420263669802661606093, 355694433916547900120533150933774511781893718283025725998475], [-12822995364040727244344881792504003229654617661826793107970391320157587783258, -117541217386561169442958765009715916031195295523733051227942119249, -119061538465247855486184209092128803023118498786272859411225], [26086485275446475711513459903044443305927502458367292391704162457621232979720, 51735449489096030992003685367171840624883176541767408655742067546, 618279708121337453027860935725715608907244230802915680344700], [84957264512778584150177862079035201568543353012115392491517085649330217447810, -85230493826514574348757557941573553108075600606349679787949429110, 634373749727911294849201877036850010923376649032578701917850], [-7764884141158733364236828198434687766066005044010076228624327728332327457424, -107566298248818819412339344982347036715449295714307315015995754292, 67875792123304846983766810139464261788139613526132974653800], [220613197245562877289340369233949327127201909011824647516586070885345207896492, 126928882119481739178360484711248670502897213855185515013283245917, -242414722391763152128432864085712006388166839839792855131400], [75985219483882317854340239148617276208384674408517560183523958244794054944470, 321461592017485951554313397814966555849070087805422411903060027987, 213389684324916097551580082953566494424828913886560042444075], [16240215374897618271040231133962038657443190081145340041853217017268956658714, -218576652551003464329919356189823816859167743431465308990622551110, 1019165984944591414103614270147085507066639213684165363685450], [-261810806453083635106990495522558115193206667458535402874603579416104896690080, -106537899478471632760049033656232745816966315136280781058308393032, 598703881772541444619168549724386774452508500287925006686800], [-117229302595291006616696606499963727185686775798863600917907673279530531719208, 298343206005969541918849482054483053006940654275992005799030899934, -156995555633833623624940063593464577189366439159938594802700], [-95562964378693358422790117744271266024979544336269892635776181512033199314412, -182814706676070050305177645602801423072526612735370613049777343813, -551377353519940164746125156509089328830796119568485770521200], [-168244273665739032261657634675264689118113074413221453356907856704364439859346, 222708675492126651279324502045896963495777252394821897845556421379, -1513592279016011451115353815259283698593822338109062328978725], [-289213911848583738561486723144309225216624181821925314155334061777072307964020, 7670942438827148539880489308939111118172411700922544643717160757, -810072238137237697644380842751223360847101779091883077747000], [468449828907887540589225356233056288372663050310781528308937392590570250653248, -358163404365422021296811889187705347730589963908484386318418327856, -871125542187637396255797146894511579395794908376295936023200], [-372105078843560507869785945436890322652607825883117589313727579105343054035638, 335221476248745707202046041659352337258730149879090658917376427602, 256030023691921104057651067878532305601466002516167471577250], [124164798399861084623891168964191016743063223121133644547506067104431575984116, -402157083423450966058723605540556662835002903890562910847013407981, 1175048347340401368453431641492431622705390516593803073234400], [-314440586203451936987996628755106751582523387353740397055988418880065434683088, -628856503759838263663969190648763714399900801278341557533230920836, 1459448390918837390576755043676704796584789151058123442005000], [-65626270857937090608501038482527302538216513167012914405741437932063906191150, 862985268874458414214925467472067028060278323778129427835647138258, 2082590163650853170603019135878158758272054826024991605609250], [-110944958603875852943088736829055724057375250826870703480108542543467766654186, 993345975983745484051597744927317829805286556389958948591315371951, -688670204469140192433555441226950166746433834557017882950425], [179564897695283541860876537780665484351140636988115834630541267618582648868580, -444490408578102655369090495716106679556179326134888208928053440561, -401031971756759348515677119439009418111086865855362824567400], [403357549198042904315853938611657148247591906220089602892640601269039461696408, 1012792255895228098221208300013058390431483506035501432515961517150, -3589601773027995787644127357901875350660514075961798866175900], [45174990136612113881571129392497895210748132956706024338441803235753391399756, 1164457258616515410332651849070207873536828727254549381283605767517, -3523523937030006596093277803720856863365451113490873178052000], [820245000285235263412945938838680384136653436259422267500294827875399054544068, -1591690825136085607324826979789940160219546854822093360703700284073, -839909215660029455790114935534545354212752248983993783565800], [36057315061859775320559865675199820218042450093590145349099546227694390466936, 1845471147863594250885727466917166321615372842945182384591996955494, 1911120208528770638376265343924936062798534480563311053760100], [1537186844266176068831614864517346726356898002938858225025790168357475560378830, -1114877098538669321181832019985249952232136590862526937143717380201, -967586805702851471096191014340444956319969640507982403923825], [-246663997653977589685478682633186010149956796896110388562088202375278075064046, -819733175228949693664852861483655810866216220034684756174320929496, 5613656543305035208466718239061963400199397452170758538954600], [-619593594146491228158975515256757168701110587452078057502547558000436570727320, 321151285581749168713625581214003504663330200935121588708672893922, 3851031737765182592631497592292139490846055673672723237825500], [251891772327636181548426325361567338379159061635520168165998563352792487788512, 987612780766066036110240869141703664682805481520128873025349237032, 6127116278123124701848614660572589978043420044865984585354400], [-275637719215696672215013635071930491385904561838993355628932783023171644190692, 1083168858757554317894706644309305651354079686495238693635715412337, 3995506408461737013032978927002157878838011093840322359268200], [2178253585118151032598117107833041616073775815096271168072205622381114796917140, -955457216651054364159213763233767006749075847074999383287331107829, -9642208346838011827734177290525123512578176084428364061134400], [3270374829264081241432949453400059379198128095017437385183114725514085541063376, -2631341469589323823668914349296378925857663805714220093249722822108, -7131307475738592957582772856884077936744301632308507357053800], [844215581934056306779798560887716274611087957702390326715095409463262441291518, -3810381219784699461827449308273410523749019525043529900940374246901, -7922123937144145559082680363298785681033128148788428587548125], [1205160507662383136512553594184938205849966337419607699156151493904267171201602, -1647974388333848547104227011017252970741319013048198357636950091640, 17158406467944094170512902907085238479929666909235812324166600], [1672369523356967288723515685792711051335498415361617304409284868833648569533752, 3392464922074510057816043926133725555935212741624256177558114309878, -10000032057305612093553812774229243638433522895471467545782300], [-692927975786445017581355375908571946595997087429135318676423143796738428801590, -3105468553794605327605207478141866644103997730670901450265828713190, -13973329680322306585058210031434537342387983231670143412126550], [4622362115291507880388759478956270735873506399672176935673116135811805984110094, -590973199998417072737831086164134812214375134181517389251710192933, -4918241370737347026832018049180687179564492411825044302333325], [-2240776171580454787172797928367094224294669515062611683214459109431643416974100, -2511180948665200235665318954643933921902561586689265241490620123739, -10096825347028961417959532274742817729907752375012293442297200], [-3721300510074280193366232132396258916971230183204948691045955280879514923523178, -2484709088700163260762478527130565341557681164498873651467890194793, -9321569842475151397956023730788948655086577617710728068259825], [-5901504357854514157859655727900755882532164722108215024232033219946167729392028, -401126051939755475159698710616752421628107983500407056484750559529, -7973841906687453405532616460308329634400421356422388928608000], [336636732351496553709403430306134333479889536221045345591173921484401558579878, 1503343358714497057928178096340628572561976511083081948509037991003, 5686247429804687826067027923574211316132028811722347191586675], [-4230550103909578004862752131900436220270276316233026804163276949042087052682502, -4556262087417058610173938310404723667852034732889986887021626202908, -2948831412105876595223242398340702459777516425376043032184700], [3177280341677021601611792693908213613544116566800455325985202376677784404242816, -8472267437499145048310357510460026550717044094679417372589128930144, -28634284954510577534861442657825690624953648418624358004742400], [-4376840570388657239171349957771084855444435634198939455295100763108998759994948, 7251097473469070749172164765112486340084033377077515295536804854049, -49122067868382193410941474604519359084954675876232624155702400], [-1885694160927042602277937089939274309449264217288186221631002925960636823123770, -8288677421156204434986354734993817399346878420867630403871271525597, -34309114029997203840913877404936530300536477705775012017365125], [4647759080128586459054299571307288148058442758873222769424887766707504316791134, -5295830210984106800505363249160627444861881882259334047049739848773, -998477883154574014311072544381485335421982430207836262999725], [3610875580004497976807898908934429566614997732346096819555357323857071500445858, -3587988922168624234907692897630297834355947712325397379556979699414, -52676785988221607148917235861551723129735211794761664778065350], [3960414257581626216632358752911409104537468400530945493197900302617845793515420, -11016089238209913315395199242711646899305087027180813760954669452479, -67372597543230665490600326016158256348641607698948704405684200], [-10406664297581639217057366048187261107808585815985125980987585731467760664760210, -19346057116938323911152715127236399277090203897505108826812440883141, 39295876096593864965266090589987661630110427048897961424830675], [-1220189637675609907494750614719024619215192975168380885233653435944564199111878, 21800712662432502282013058063965632443289897778687942495551878679402, 59019237832004542632263894904781553255361445684913987266217850], [-24646037902532837194524854304603584308137221432476318938980296314043003715555324, -603009135135173826075660626013932176025304870570763317830996125617, 22822552771777424238131061095187631012263468719140586094415200], [4755491553901240240073778234517363193795408279107340835848511524215417359353094, -24185723113119393231948343450167596951630042146123132014063040330701, 12505507555894147798865885312781830841545337552234517981214475], [26185386125324455587353107316174416884034598734322432044474020440126126443517582, -16529094075109338226312065593156925235973509678118314129553875446049, -72801332490353834944938048006298885664839062510780594292386025], [7817708302032388319518875835063819622712767370443253356822275215223293385667692, 18043890663732945559594839015443551526566665022239624431195874987709, -168075795321087134445615026486277747081880318900894929218161400], [34904595027650163130654896190277532505249856094298793984609020122128908930582874, -22981743196647034903583230305709947979585244839849361870911502099790, -44543817719583781245645953883522984977101374508511066779799550], [-13992514177346808049055722636484539845534930477266906987894891464264088884264160, 16794899017062404746644043336829859283903218627818304490178968754760, -45208268867798467137579526425651371258124208593377333497004400], [24560145775843154355036160347333694594820184029360916272131537492153868964232178, 68277968020101522476248002098179458510285310313114816861375593482984, -64298543104653621800496180729757178622019865847687447863607000], [-27959704182528312623050889543191759430006798729740241325635778765307880304372344, -6583760564679175689433800228706704496290474886362985421041398483654, 7338317331678325689172986008366180422102725307332035421128700], [-15740791851561672414570297729840723087662235833373899380962693400715302647088188, 37433235444806758652289375609784299347565935000692982209225049186839, 152576580986332009985820974968882867366203742912587438492866200], [-25733546226867695699529432500587688446765489823251721382760657624284151753483330, 56254482688084559152824401916961662465699357515860122773746166625999, -117359131326728944085876256515155934231739084111105108819797625], [23182190552120372739918964395414985038267434267641198071288806842831029975970442, -12629066541834518675026815137538216197275056827630772554531781548358, 298365758219343038903641186997950129971169546798997979691538250], [29746269018551154512170674375408676759150442874795405575630962143512913066225708, -11589151252802640273792359974116954474728993414712819802290328540675, 304828048787481442423212903201581530862151542775485598995238200], [-35379161908928485636396711155033193741374805909142159809015775823790233651450144, 26969045365469436555187833580420460403279413751822294296020883432392, -271654148435037041480829891401261893087983163448099447077088000], [46141123521277070149465416553909994027263204311484235016142092021637162514726488, -47666374911970562743637948046340213152394283007933353361466040485602, 347227002976961052934548270599188164617085979867199101575494100], [-81390636999900736973238306423353972191027485675888469283456174127163399226638008, 11751897456531238961834783252185397754138453020557492763873748397834, -246047921454329139599337257671832492709689639501133162783532100], [-12370469082042965182114135735732859471926984094895529604917726319609140208401018, 213950072863340554623011844482279597913381884518625441737011147707367, 597115993510852622756713560588851796718666595874650747508849375], [-4111401477257638678519875757469020880027093908833337002344978453047682474381708, 15258059936805752316201381771997165014936167037142860351923689437411, -783783503474664612877334233602908290111564317358965315228116400], [77046219775824168925668338956736743765789348308998815803785334453252245744181168, 38252860603939133478677924991422705625093831799875682356451794070860, 514552704321678265112067518029742786455047644131559099338875000], [-41162670035283093857549279461727726366621217410770673527120190873209390672260526, 211652349147673497213241187181719524103210125200410847719429661353602, 300500135117612782640107125228355041326281253219764144890548050], [-126420208116784419547891960450239075998895034421455464845326039879060583059817322, -96355233613378520070588049528483960304375328445678907169736822322501, -74049183609951523414355553851405347393246767616662655606330925], [-30774351358668626961397109606882534843376364593329147118054947992723944634149080, 14914054704559050352856546451232626204187453065354274390999850012610, 593441628238217254709837053218156282901536537434451653663995500], [66932897069715597425879940118714123431617897759791341329741682003202362588666210, 151548921759739440168272454824970302154183118241039353214396066368776, -809596981040898296855292707406327589429253078657314223452150200], [101192850044579636890429850958676782836909761249026183262239604830493954986972462, -150476282364171684925930297547165867388593017497552695563822244201037, -461555809794417406044212363904313555433220390182999829823060725], [235968683926060401604147248311892260316419687216850502134338768781195448988506572, 16811641028002698348562817114299716288575228550693873776560244863189, 647247489008709642582929074505031268825570890620698222933348600], [89157001920164809988876121535986910032555977552581753347063551037830055614023674, -311107822018164874043365781749543713780006114994176859392405177781814, -1038880243662536357131744998476930751145207484028804459297722150], [295761342399033140386952794402675484053762318957932365013781599685630289032772148, -23934401917357619142233461066413258728998507752536495289517342372629, 563923629944899951646784327225925858641373352902504279693677000], [10965949616842040663026146513806487883138643361435286534110612083952245302735694, -477917497715969104899564296966481480468114655354141150745676933302301, -1156756246358340204756442317101934314517280027071575959193638725], [456155110000576933628665023328222616158736326774378110839886432057427017700491870, -348490637288586822978239366295391592591961415176085542844953520971689, -479907600953853322109190029386396751437335503181885657898658225], [30980090470249045112333858895820305246713947279148761234454080422059844128753248, -35275797477409071208195414282121819737984232301604563957603759922360, -2063964562281813664223825668624041418468206883686598476148496800], [-117724205127345789799583081922529584947828112011599466624778042930975977419571466, 464391531859692303890452231526238745176912667359605785290771206615335, -3170892322138885816686611461668773325439351185571066034341222625], [-327873350410027526669770322033799508727337974759022505944639079404396698277531900, 227888131672213655476721129858218081303250141379150529531002241398759, 1419369555543091122354227230778419760637708907869966307854137400], [-522672181031495319679386213940586668875690656620697714871214608235592536942943108, 38256891355351926333329935962656367443110006892059648819381344466073, -3413666097622877963671478050880975440577727810097191963697821400], [220408028978205162335372602230330197064530649216882699238792401906011537689639754, 1671121398179259353146364310268450257252877818028557306655604528131828, -1147096062629543014049002283623054348049708701896697603912817900], [-596024755799445093130728874681131435205377452232331717056361525386716719709780082, -2986089248787512070199700740074090794635668044493071327122351373121, 1562486317839347190006666308697275490565077964809553107231734775], [131159156969021177085412757109860736952505168857772154617991863389224874102028080, -625991168126315237244655834823184644607991993633323753071452208151636, 1437068407090695675150281240707919544391832245735480992462358200], [289282267786067199776595554155092697286364039146792113770014226705988978651853676, -1469871154311809510338538539434224202459239209852548348074954671157195, -3738883233911562591021456543607353427797648816863191871022401600], [37965239565011944467619943584681053993605079881212510250891018731676657206881508, 738097845768561346030545903221155164101423417901353287650017062543855, -6403470603164006428867917182863732317990449968752567324725798600], [-307309278997219211495497051449036806614863971849716945283539224674165543065426462, 743859290470018801263711489318865019053102030459916052974236155277338, -2002631271690057634547837538015369635342523254479183663012958550], [-21072343471630961231680595384416198881031227937982377211855240246567856595692588, -284208902728224770486191803059932077824825786845109124486361707439037, 3645661875167460690578127569093814444655066075897907915290337800], [-655195229040338622493111827171514453549964317628661155306773769813938873425013330, -1077176887398166416107762077269124629845779502188133958446700696192633, 3621354031300657298843983741368201360822106997103602546522661375], [562691486118190509900370812406378948975961914249415947467251923993514883038127240, -1702641800517035415268856534195351633759455300283394329202706847728246, 1003237539400862410427905865436566631708789214697439981916076300], [260979241306595771552919370935244870805237274337635896750240805899858977263706694, -573852230170953997687876688998042890897788443858770465510059233468229, 12406684443871378197038901807969362824179734464928786475935576275], [532885349766579000096952609622395425380431739705210074166789177295186959140225776, 2796220828814809106510282053169078185005611276725059668537878672501084, -268574540997781859325342891701966065007921186255984740700095400], [-1034411335460762275185448593587889282913154477190938473663448282221655316199605930, -318786289687898700619848490292836745615408382300759278494880126745345, -5550485191704789545042148539634707301216327954791847868193975625], [885105499120204938777278938711613825089937581560734424037343873094371687167390242, 2593784233077102235224528703912399304683928237995390951990164317968986, -1089080520238037840964509183522641122129856988047395712265040150], [2152677076040865336572820057193292002911951826348691920129963185005088216338738716, 2082738181589989512036191989756072239113033864618307804826987331609489, 2869976756361351779187539860325420736296518903896314810770229000], [-838535096233529927721920749979324719786136820750559519622379583176441756381196968, -416368313015809060519819593286398058958779298477974134918826604302930, -12284428147741432861465539792110017488062996414099173060063380700], [-3022313163365758373968288022582815474146708154927204670248027771840761086655194710, 1369838428054729361101620428955380256538300006538984693386454785613130, 5713441092305504103006797460555519885465201322017700187333468250], [424222033729540897445290143865061790161037637759948049292748164445592441789177100, 2713031266145604178929216831257578140986646632545384791152753446719085, -1252690692202466408298892311162316549642600376575236783576960800], [-948830952934318911979573369979418869634564475404231644409588138788378317828717632, -4355570776871820089634796955437125671990474889960986824437468614107312, 9212209298700021467861511713992725724919908105689219375260321600], [3504688769973940765747541421788580324925069430566038865852053787822931787458352194, -805368255443013843019100952418234995155062377996533931381021611190528, 5642166681979390159274778833271887283453019767680168409300422400], [-1188714970124296388628193828958805835515845901436483570686409339288778472845930670, -4429006260178786573873997292087660433390206600216075891562844389418160, -12381365771719300169452240466267559844043906977009750053638295600], [-1296174541592195369933308845198926087779844368527314470741117832156543893175162132, -3556029591905350490540272501314288954853992810639576828187616948275563, 80107964544262469652444694070553093025543026435756013801152000], [-1962702231498984114071506618870824551232020828632061290675400757256839936073013542, -3625724144224630055366542047956264898214281509551897953530008807376108, -4564182769833710913387366591140701346040491189775726426273111500], [655530915396610320790117170986103124599682614742818257785919932808882045974970142, 5966463396570493614707309565690737005238877896548468837804168301311019, -12466274988054529925959484825198056488505702368675885518577857725], [-2938368971183481049202265171495550427620572701058588020107089392435533616746362464, 156715024537444347582703801789130423563765090953716358259640868900264, 5784257613870523756646353071127290417862301339725900165397120400], [1192857979653857773031719246204744963091478490917929193136461447277084221754026474, 5375557265740372154429652762461578179194411652473553808606342413208180, -15101215041964025666952256698137261747468351999208727040795585900], [3149544642739679517644316797531686756283235823000674405659220952555529168142150002, -6094608515945443218632156048864454176859354351958384999890131090929102, -2556972611907816103437038984227009507228152030361173415639815550], [-3060672146100487109325648835736010515718297335819135413152381806500261511276869700, -5622180093378195701165338179568980158177536353461309517554487662188671, -1049004588527724960366362000911562897994667095372746694281892000], [-1579763063050683595568137290544271340236647014940598038737107574900936953422069724, 2788896754135396844443813611088723321520709884829094316741915147212815, -54635690375102817952744108088257779799895231654543971245356631000], [1828432310493739351193963855351171053106236541876869177643492706345507672865879392, 1697783438550274677007179690580175483587465308560688571510704655693800, -23121948109383433920743438388333547259253525045418214866441070400], [811341394191112794946121021174375300989740845605576487531000114366375758887399654, 426326792918229116601549422427662907715323859019515243643269316039375, -17038442151414622320614029533074337230048292715283200839916562425], [3977344268788015437434709893618995990217226279262431581835240567297453590771907182, 4823128898214593525135299488357972515967235703985982650681632363517375, -19775835962565621040439458012290385725995204934322293494578780425], [9284818080789676747045380132242604236804403057095523906605446073776039967510767998, -2953839957857760371226100689674229908436406932118475010410861426726861, 23397340128534241453179364841949336201887947562277193864434126475], [-2206667263042748112479044628334308168022466856487334681861794039302610103778075840, -28148105396624185752643924367288473548052878704689030158579722057200400, 9686181933241758010053322273920794052367973274251071962825054400], [-553105177080534816711499050956476554265072580584527066006837035394034919922404484, 10647486951552032923347155888403246108433075411357274285669833079853513, 33886162482280410999537810497886057717798302982497529410522808600], [-18098167923694570341294609754816651219454654628818923756693182679802647121964665612, 38917805081248278671741390226920241758118906313721264911336320563187, -2623412406223899246820383926744376292669731817705602030374016000], [13461992172616461672559630978478837980275798455992959534181245244401517052294548452, -15183543219908684928180171513893655940636293614002166650843254222835721, 5231588942242781654023324023729950254350133811125286554819081600], [-3528405316635040194564139742160315004597320947699794025187752976631586568863209570, -13721548837776849390379641147924924542223866605384555174977300011985117, -46996868482964676169264526283609387380408655043682353079867979525], [-5267783714975014407474961548946630361200284012134013981673201678638701356778839326, 10127256050052838951849051462279370728128300737917996706581635720613352, 94903867315501446786373802086397901134220803547918346358228009000], [-24594954382686980699528919746358556971786208274256729337081351714071989130211111318, -402876206288960475750480413075396059475040847767865074650590362886302, 37172351379163549938726955322273497132587233423236521989424870450], [12611591298633121880697260366883154756818335821530959658944772786073704422870731792, 2890882341879035835942204863115272353207152278800121619783990346533348, -43695837393910689373612649502115744640789196705389871462593223000], [-18177802223938716558633380765229362397560284531284729287553893698655589465074344906, 22997128358199584889517828056831987641887714821754755796567675729668655, 55870127852486486316972660214265127923094202303501302149253564775], [29180893313798162703645752029508366807656065762317843950051383947605165643251922298, -4069013123685108584469671006124909343121510396584700766944868120679372, -15324041395776449607215952813849488873374973041847058834478557100], [40306152650467871897959942735505002587340588915144975084357355126700502747156017990, 4621261145447083072193492068637702230521864967646517473248978009856139, 8783348595136258319608886673167439214638334857416650483559338275], [-691533920252055043523427864291789301042108917727374822940058516979505500612434312, -5340539100016191976919583586374039542119148542744486866748762065555866, -37379178368925447056642582470220916627728919799469924490861681500], [-15965949691016029989137301831532906770895428079758130531283309405394186426723955746, 40241803219689375436859416195566044911180991894472410427856065902278087, -7752919241394091895831841458784245773983345631330821968264530625], [27033021803050130205957740782310218829988893522435730934849156531078963055519927580, -61426306022430020861599944470004104494700173535117304299420795722905959, -131929203537920722599907558896541891881827243260740623521777070000], [-10726819889397231758179577743830996159751502565311113731411960821089622774151243418, 50072518744152792399136371092196979704990179446948615619125311717741831, 184850061820483209743665162502069041317225304603655586110758802175], [11625045156641186567100728458362607273124203838800521330219212297380043846547439252, -18299770118954969141888596776279458044734345665254615581131444281836333, 275740023125501226636596297323842477738775681114459195310856649800], [4797613518120726026542436453254570998832594867193287534558647144788889075617642448, -17997847593390316343741581889269609181859538544196217351447491440779420, -68167235286196285315815304832461656729261335704605879442307041000], [36219933631516380040483558909757802837777760485966191918419931856677247180615034998, -18129134665009432667838254121987464927266596183196991815693744347505753, 229086572305773304706009161818435146930005648150198583481022812575], [-14904417193852117546706297906757033283779415902410150820859894733510697710571144452, -29388333007525359141605023330996846340031670359521484526721749151774111, -34858830834976985334423096639526341140062230201302926186846530800], [8905896766846813736921402603260534346230434378029762691863848586973767658088907978, -12334560857046059410803456252459215923871967356185834338860531812445036, 183235460009362192706816207366692116015822024783549959565067352500], [33417296259437513284668385043328302380811793475163645613750650468176279753557553422, 71702602072026484589798281288929878541070036312299825087269099781440095, -247927239119243603332825577015026775127124894664369242232591525225], [-4790353646207662324685266545432660328119260595817088616565396648732193755651121744, -5727303240808689133095947635042635061745644831479554368235449636023684, 289199506496926277294971493074958751146522568705747325894109020200], [26097344391980437272658140180114841230929560841015680556418651120119673218923681430, -71584826428358884059502258715442398706936236920395200578124679291820473, 63315961132990915262700856075770025534131046412264127588125651775], [-3281187403255854306774744460945745314119978850261034572436045358043454623003982886, 8245432157453012750533060804425112901972843618777382870700764805923506, -148057584376837425897697568358939598497994275303382097732351972350], [-10145241196127352135880377028084003365396626346351981101795957802200939225091819360, -55531205793613959223791839153698485525865896192016959225222712381849368, 323407583299816419033854843830528832660820724539583880755446829200], [65604043019195502324019350221185098884785770910351720637697506425947765601338714708, -60846736374215406207221639738506135250115785376736754991408382644755605, -6133140206993450655052326871301386182696866586222377935774874800], [-27472884713545489531765531268695547549615739703161300928244439246253776004576052622, -178060660854958533463367509921022665040356353284270527586137781518426430, -19057155038292415265446515621333765744306456757527225337690160750], [28745398751027391775977889900088870746992218141951247927685582559874761651874458376, -131132439414913457652953348278189003044800209740767720139455849540133302, 149092752510055937896651679189107016623759740407130358996528206700], [-60890057204602806106769692526753540826060084936276972498760612703109355029113078842, -21169268576591833523575375605416196447392256715070134715689786409441453, 110446970956076776548301342574176822051193689569421896889386738475], [39816862732739379085461325020870742524998634715002217601881182849685312322182982922, -34926301304384064177902614529629234458907568025050023459162507134550342, -500204252773458753205733843599759972355024464563612163621249645750], [96068552201053906041506612042927722487591689221018596867623225164348884202435365232, 12185031466392166764218681381172424404994656681478817922597744718061436, 347637833023809056566482752450238997133948441885814683492582539800], [41604544294097729611106582982825257425874318457849702954712788035979879314793717540, -193715432761664509215327677257260407409607863458788763603262682529878345, -913619229444797137770131897482098721546845872912850879260190223600], [55035860529290823391509962635745134740870202469703470455158623360152217400355480732, -115624274825109925568286181573454597567851649448632705905083948098467927, 1100648654835216930257044999522550769328390587822876082960364916800], [-90337055365889120574180838706720122009630468031015445690362806238126581207400328406, 162041993984397986725958132109726346029947168562886637656551045997856258, -425072758049330614422831641182306028275438050905051592797512571950], [-118912248903149077642317834948003131839339820887160907675226593446904873413378323602, -139500701981799365036754141397393550580356923273931241749719543253503985, 596121222180615539071625112753671479001740210277955842145702610375], [9152747878856190591719025101172938561534977410401257395722767031194254678945868216, -216123711394162846313755467735153140983451489377309865970432785077904938, -602922527219288692169815925752354844105473355285603212679379804700], [-225098311042770410027122408988495460226475004764846050847537461232018419977051885478, -57722749097332406669715940723608135280430376932937437280371402936653388, 65427783281345066143325393819646216910448492153752279480835871700], [78007354621821003753234671915686384581492554566470012799582221036865084227625455708, 5094385301408652168990496122899142374611970697502977024294414593005489, 1827038594413386421427721186170000194075531398311018170208725660600], [146408847681316261886064046604698675470328123298614714595056732753737226888646521300, 196886787245152199668956338293293604647021072468784638311739343514377027, 617748640776030639224602686184922980214075549582196405146295589000], [-62567400037899927704329847934313930398493286527547318096746265090279311882826302704, 529567130885714448617584948896054928796034827443381469203539912702299332, 429565114963250439364131912153777810707684843000689874454007798600], [101467841603739584573243814710350024665113241400609667224736258197108284040602260790, -205948493757052758390743454334380921676963735199142488376113767364687933, 756886228680956228438129317012374988442904148545897897936538382875], [-132538758126632951207976081107167590242823577597190565436283063479641751412565892472, -359682589156653831524150162620460340976388798560148223394812876354847366, 10725859410596915691947514108867148596354780337305250799036075900], [223725089898635027860502407988991796870100690374281390490254499488366648040923002558, -58636717492632740285075496884107319345085228215025896363837773994368925, -158015922656714247357032137741898108359394788753195368193257577925], [58451105263773440396748228582858045882601596270699378904663137549750456637429878060, -700068517007450041039050732846229401427802453126896689637243123666188843, -1916396845664711217306366896042561907122989831616217256827465879600], [461913122539805185373203407903040072371611404912355758484663892868283837450162846688, 427493954152248461649465495012465405460869074952915854440669442967446760, -420879333644239746554563097875493259122049484445032008106278640800], [325051496679455473768966948612043686383785948332114128024349519074288922466634403874, 208312818711568082232857728186620888119390281157098420444026149598580384, -227742387444205022920239890897711408295458683063227637674583023200], [-568195427771675738406659252788676806998592433090686362446520502119041075543917379790, 64027658612807933195190118124001112306422603217189247843439820652772850, -1830272558184800032531700229174108674306181204964858737608672162750], [-222996925082745895383829791437195774381195050844491600060317207359416038088943308102, -74758528243384709088816788881751943398699764557587613705046896905363484, 1076880903733142722612864068622353173832933369356331746744103936900], [192757858813287205515744718111777885458123445072794039944322144811114502910300779262, -616364428940199757312446011910629485091765442855358870247469132187411741, 3620280704021844928009767227838531430137494859929493317880523430075], [431990300038180100895643614905472659176624993143323679683134884665570034757108766154, 1259922698181706005759637942086202318901396098674897684954946773399309412, -1185883323749227077959744593188921778070209003030177402016792699900], [446685649061668627959073456749390881190300855545605825551345946555468718243760448552, 315119307290836351791263528635082236902267264326118562016908781465485762, -1066226251409022892501854790589811393442765359001267749174538198100], [635051413872764811258395103710909194213212929759749726964052137805702525111317601378, 296971585907026022571322465224117370941024317554253792901585212369032096, 1113608834077709984358793978314925630976843140212700323361605066400], [-638768072160994323554881016249755651834003796722261580182815964743775043052974311460, 812151820657712216024857215955831627486080128783473969698382536497671865, 1111303136055712322789783467236176488535727398643546363757711028000], [-225195885150953546808221223294744934240944807232422081191097223791904385952822167784, -525243962048079624762997124037115854181782092607391967026046913243861874, 1873925087180897688807886369527759144415954438958916482470966877300], [422411486702106008849641732701765590731452943445041005109649672413667392679894454928, 689514319767510010276787157644576307631022205763668244880029215323767428, 134779922840623098712661132798154623164689193382795616548522567400], [-260996730099065822497904815879779644277698222495536040785472915720785480543536685642, 176454503043204773499483110510000056024561926243327022931872189343158763, 413393254056454025484406448697326981608692018082448647280518854275], [-18328909741727472322109014638407949352732326595520080155788266364904254924144054204, -1130390222556750894364674297558901983428150434957368949013800440595294657, -3185668193165895971306377058973142386613783723983509874481598596000], [93087054899669319168050007314744217381609255379135547565116680588559472283136929152, 1714501457337099047262049265619173841583571748659396505801366172171584576, -3306965792916327678149708738057148889307421858031238084195803183200], [-9132689606123252832542011068614098927512064382222151217687012662922218829671165310, 869106038665511205884698993093204696768956729155508616493914789049132520, 477781176653215223825525634245673227231165716026611820428206953000], [-282531525933155183694188281238740434642002018783782507751635476175187183603511296826, -2069260892098907559958904281624124747553188165149154068454982220027945541, 412711572704962239827305174666237090411859645639884353389133253075], [218541101111618966807427692210641355295777121376031453649394703132798425795713296180, -994567540370521753817375292076347627468134968567904873085204007865822821, 6071258689673978427912330776637595158943552464097693693810553123000], [466760513675084737187317501018459588357554887520931369171786024507169727580039849132, 722157046969941143544326553743767360384924526345666237945301533723630917, 7261204035578506930465090211463107823590505376292436619859099399200], [433133093530350883084472450569976937273513843484740922318242170462482826251618086888, -1585706863315104489248014194595396244186969483530076191752835613798692926, -844072307675106373301009507433041984100057472719714791422465337700], [-501989523799431581348041518761330171823629539759641957398754674140506444243557444326, 1182767765990408273372728146171416545281494290391708484897877448349842916, 5976024427405760670224556134126731911675430506837818591170822541700], [-99359047804145982678575120169598354778748679239942740549118057173421336599781084320, -1496192294297207217125091756793950527145724460117839534567496017839077960, 6347044285408074604403932005673833490982606009870825203562391792400], [1063691064147895323703988896853656419307744543458565630560205479762451154012353271850, -61490979977453871771420738776415129312380502560813838787500388714712124, 2264263648827037219902415903826061406762401354169176683519526732900], [373946961349431887919229698298537393400821558848896600303252779806721690505504945428, -2014138635467648716821632982249115794577276125448733794725876612889117845, 3596843797075985638406282890470206366504891813244092533613791334400], [2030972800661063216374668934050566360446080542954807348736069957641314281528012155382, 604037515316877151042226182505220760024873021059952132215455179703360291, -916925550567599936273782590605801279584009853699575449455944449925], [-390512669058093251446241693590851738548554120300806566602568127219512370042253870210, 2201089249930643304570654916750516064465235360429404592763761327064914507, -3198763189630968426046746856789999920270126049767956632833911783325], [135641108596297024681272167932413407397998725896874912261352485829786151869707932354, 753708535963688270538026235538588771915336226480700391612751470568262394, 4039405383610351968816994568097731650351721296328705990101490855050], [424301152218314657207289069700904757579364483473714272031887774608024872950361662512, 601470947091114379771491195061577161368086810493530673611220882472725852, -7255184239478972211123693661686389157035905086790113118250752301400], [-692210744957770699682060828140390872146854581854542953999797876753558276851356171942, -4929575210268283449820749265647872808022765057255397231818565673356007612, -209819791878765922623056074616419416742654177492486084304898102300], [-1558851642771892585309407430866876266550931689460067780087552895263495598831750602970, 1450653801679703072871731150289375461727916332574444764289364078322126087, 11673973756592798010179146813452216147907773405738259758497246891775], [-648801462389523404889541098994324732538972058881529365932093848605775067445308485992, 1778680733140069756209865058405063990406648597207414916020094621579235406, 4657905167211001167493387389671272514500263614732509560549490746900], [467565755475341949937321959600757959461953649585702577486107454582608325176164235438, -4661530948610683406570681324342226531407049285687825109543966117287029585, 8728366161131054910045049523566479241747088248254691576667602735975], [-223285414297520185711935630654442841870423954322303095520672002690817472563582721038, -752641639802665414845318618743364825134942340709770683563673161933915342, 7702852710835082820878504303123360280563875493045251869720709400450], [1855609043500255002700347567738813334421776556945780399663528185597214414449359244876, 2910918519465894415465537556390133311268148398712879668319344656393673885, -3708308573835429116306407286993745959773204683237715107313497040800], [-3367194920218409053083066938911813404908897602545465653346269725988346718456177324740, 4817472506964334032760914671422929587724463428497842336286176386699579209, 14475868697751655441047564687941869691367731366559708554165394024200], [2164074355780758021544492464721561783185342299235273079260076985516212047491481683474, 2807761839500655445606615168849186585887215278328183802760401302968528488, 16476239396293571168000822576953170301125819722055985259849586450600], [-2206153590580469872889492629107024748695750146763654553000714422795464042608526486442, -8218424506327383958709529823841979624879543236986496066443766504475373, -14821797487898981766911105415440162660517173022248746856537280623125], [2673977808853257873225825533023331496074153476309104285555900336269757445521660159396, -6016304782663865372030012498774694635139751032778527403231860062059864793, -6695042063664288476656495072382931066235520753156641105511011282400], [-479247032957975233697627353076905675246179357380163207632161290636961633101177058532, -7399332738563523350098719539740105264585623655643229114826759851870525879, -10289977242011347893799565470381060349926355755838868572297643350400], [2807810587698683511046031148017689671666002213399563149840081200270249805536613915818, -8724136688380365818026120128119562965409760635938343093041551821760909822, -26041993755270486215790261865091594082478397443562998878966946504750], [-1601960615019536216189778673417915638133547685245448638019396137819609305374800014098, -1032259836476267518037350263240363061248578262362270759972987054749784897, -18214428559109357630449596688751056479513646398535433932443555708425], [6511625150829876687745759067437618145930816835344438792983998360923826638934368637120, -131126798214918593712861125639467968419941959023250804419460552223560080, -6456665081383257841880222989206742940035894097015355490885912546400], [-4423003372041373787553760150022925293650233786371199025707932212952973868351607640008, 821377819525520566589431434825683580411554876812659707424032227710810518, 18590881335445292678539354921517348507910228430429075755171986188100], [-1051668668672493806566134969464145771925036469222482271510110609846811456564002507182, -1320007770487310931014418711953181123876959120060652530066031502043848366, 2549511651910368353864140744583983571906991441669803941564747647650], [-3641661980446467009765202153577083224703781083405829819644488708774534698192709946584, -5065992482911345577294551584146256769564466351383780566286767072425263118, 15679743130497973166872475225062800340874981385614127109824789919900], [-3018035962461970519881814277198875168355799235050806401900189756203209529250347701730, 1282079939558743302971169704077962006150779330995551467974008009417494183, -35459623176583016524313802754541625637796227712839460308174363225825], [2710524050374842267767200392731447055124509382738773933151591333528426069652875931558, -9814847080374599288937142664748587644355031677589105302593037750695152861, 37630463931981310022991685982498701830649306442086460618582140369275], [-9446331824495612710182292388291931396500948619641213551239908338219846418116621876848, -1256914579530379849638802791600740102930321269319404978689074525776750780, 3130299297291559545439038304106541961905758560096647622446767844200], [-5328555989441496483391216447143752042834113281091017932623126412358215264032989233340, -6218194200585447838842219861421148386035709217004862422374326965117055665, -48535357166918681851733833061401016815981765996908228873324658203600], [1176154385880401298434125767385747001308538812420825152732014919389235579706213913354, -5889061876840071344670724638763862506739023127992133849411299607897783436, -47308226978899666347837198972051567599578324835500048779301536149100], [2460478197567002326738515778191658666362045328167854169260717205949943602016505757518, -10473722310681861685986370061601253769774186082824510999000380498872920297, 14007425524565840660208879666239031823423584872354877087457046210575], [-4443825297902200933014156511165181439465205243422059535287397425241694270382551956564, 7334969838651770016345317623442730187307383098562545495875286986855361997, -58930717585537726445434240407683918785864907190932391189465081042200], [2839487700518758054176509162681469083919226510612396155694715575125735202797663691290, 13602522333722916011452871467333104656894901182039937221493519081160603386, 10864981745125119472008104613576843049098931167346418059740200723850], [7305658730319350576166308294024172637357572973805172422843484684243103883318619319588, -25417192688586496358042673152757175114515845434290592827725380158293268609, -55347044658448125308160812881947667112948845006210001172563316047400], [-3161527991303629758090057839852701965239109946412756506660090114828130315418847185720, 13105176584886019988197826227637108619050669106154655310505894699784312474, 27203452242413951015036398513462328967548921065383688309832568857900]];
    aps := ConvertToHeckeField(raw_aps);
    chi := MakeCharacter_16_a_Hecke(Universe(aps));
    return ExtendMultiplicatively(weight, aps, chi);
end function;


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


// To make the Hecke irreducible modular symbols subspace (type ModSym)
// containing the newform, type "MakeNewformModSym_16_50_a_b();".
// This may take a long time!  To see verbose output, uncomment the SetVerbose line below.
// The default sign is -1.  You can change this with the optional parameter "sign".
function MakeNewformModSym_16_50_a_b( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_16_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,50,sign)));
    Vf := Kernel([<3,R![71759294724891880256790697012966464, -553534181046157255103952, -16203614388, 1]>],Snew);
    return Vf;
end function;