
// Make newform 3.42.a.b in Magma, downloaded from the LMFDB on 16 April 2024.
// To make the character of type GrpDrchElt, type "MakeCharacter_3_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_3_42_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_3_42_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 := [6095744045744274504000, 10360343667016365, -196497525461, -1, 1];
        Kf := NumberField(Polynomial([elt : elt in poly]));
        AssignNames(~Kf, ["nu"]);
    end if;
    Rf_num := [[1, 0, 0, 0], [-1, 6, 0, 0], [-3536956170084, 2847108, 36, 0], [-448170152274909880, -3100608741285, 6696918, 27]];
    Rf_basisdens := [1, 1, 1, 5656];
    Rf_basisnums := ChangeUniverse([[z : z in elt] : elt in Rf_num], Kf);
    Rfbasis := [Rf_basisnums[i]/Rf_basisdens[i] : i in [1..Degree(Kf)]];
    inp_vec := Vector(Rfbasis)*ChangeRing(Transpose(Matrix([[elt : elt in row] : row in input])),Kf);
    return Eltseq(inp_vec);
end function;


// To make the character of type GrpDrchElt, type "MakeCharacter_3_a();"
function MakeCharacter_3_a()
    N := 3;
    order := 1;
    char_gens := [2];
    v := [1];
    // chi(gens[i]) = zeta^v[i]
    assert UnitGenerators(DirichletGroup(N)) eq char_gens;
    F := CyclotomicField(order);
    chi := DirichletCharacterFromValuesOnUnitGenerators(DirichletGroup(N,F),[F|F.1^e:e in v]);
    return MinimalBaseRingCharacter(chi);
end function;

function MakeCharacter_3_a_Hecke(Kf)
    return MakeCharacter_3_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 := 42;
    raw_aps := [[-17455, -1, 0, 0], [3486784401, 0, 0, 0], [29634266666058, -51443969, 18, -7], [37564083753994332, -35063520317, 15946, -4779], [181202438823123840276, 445969526243582, -1110357468, -53582606], [-2210996548509057069402, 4459831718836882, -36533853764, -137466882], [-9557892264676115826366214, -6485295754548475050, -5106626451468, 63847564634], [65460727407124277414593340, -81391276309975697418, 18349548635316, 1793065426362], [-3848895051719143775234206912, 3146834784314351022310, -1690662527110188, -164397073048502], [-259024605386031763326715100470, -271488270714223378758139, -283149395406383706, -8521223156703453], [2320153806846972604509129680388, -1008741290236942016461889, 283781381122053778, -31160787502593735], [50188709659888891520352939846182, 20935243796866703117407704, -45237321564510086448, 2776647317048496360], [589476340273505878795956958015330, -46306056691270730565520238, -170119289005453166148, 27650179365112504830], [985839200042815656214594907634660, 909372214908070769298889714, 657457177245789058300, -41372446718770080354], [-2222496624515760974655300713166872, -6957083526584161402255619038, 2607967986031218704796, -68913360574891567378], [23926186891119796667518991178728370, 3131414375920939071186231969, 38673080384850693819054, 4639122032646113706855], [-452322209906662091535760402901354532, -245738709717808885480140751832, -1155551366761188713847504, -7644608159632009868008], [1345256531865587598038299664597938830, 602312814972695498993222324884, 662466008273035368992152, 10088901042875332376076], [-18318292816976707991014852347182731548, 5950310883755874553130140220968, 4382542782065334820700464, -95222693180444111381736], [-21099027754589143971093625553005227568, 9801822585997929977561455277838, 31100309267580989885375748, 1207391138653879106989922], [-11176638605626841253913446502029458422, -12424655553196302780518081954592, -61277828232703345708847040, 2648376202482024783743520], [354133430843698405290755473568470975236, 333478424851809456360121756785259, -149716005065463029550160262, -5154914282569404752079891], [381551678552621982056438392568092734140, -561624152394670641832714669739098, -282768607367380417768564140, -53455738357132746624192630], [-9898428055067653039666063985912558135030, -1508845611533969194965387527962524, 806758123625262045850243320, -34912683593703625345046852], [9187542525164326550985402259118644748178, -20887398846611391145293094887814316, -26541904414393157107921617896, -689216953646412647833181364], [8178469541635481754009024042650302015810, 6455274611374033132315750058916329, 2075566021919615737384920990, -1613255018707894626036896161], [139412026933198293558607132660411282229844, -40927651083991212987312317829396179, 10533907116959282854831601878, 5107091973204867787603639611], [-471770073545694944409975257977025199613476, 51009971109837721650042253346106900, -9170643749009884179351893352, 6892763621106162495880156812], [320606236640903859530442421964876496758, -203040273179279682393217082035787562, 54880320879531332841514096884, -9889392345513142954909944870], [-218158134749812902580679315567018745029598, -218788380189732858969004181258965484, 521841628279496146950753241752, -26535538745683026425936521588], [3414471283897017761503657058650966096128428, -1875311831407737610332588453551582883, -2066488516719477842194358192778, 164455725990725458521764325003], [9552342877669117044447296476635154779329924, 3965505941164846963725263938937635792, 10925212278959469467189001419616, -113625095458444672071395923280], [47400001107885993368324475867861737326192562, -9869363804262907078873039127700558730, -20258738168367755661958561602636, -117097190703317133232281088710], [25184898215835752897504076879352682305153740, -29280635051107924886037170087656452800, -30660687541833732082049342209664, -604349022026223829493259395904], [213737413089473218797920453705243507079282202, 75558284459366956704059837421608218447, -126093761253518583299332238955918, 265522846091321972627445967401], [70271602072701801318486757903108650036843564, 168119762029444161639708313487708314099, -53347345819139340451256930365718, -7128686695141050214065403127643], [-107389135578930175792676245133209607659506786, -291510785325916946954987088234668374328, 316281767363914850680271001520624, 10179146913349117209849528555384], [2129364308180786106732743353821513539390473244, -42397376829646229808342483858120769470, -206611660793926800820261459204260, -31983009924477129208647158963250], [486911459094612386797067732318954970951596040, 903418857856005311077679349117876839656, -573320140480945508078773289764944, 67782286594546821553303805192792], [-2705197656269050419731602507448988645908766270, -3183581427396681622575539775844607432389, 3296654896758486570713384390991834, 97862150942644573183751102049181], [-9093574424495647910151467146333833699070576108, -3345537938536416432632083838751447175944, 3167612332559848587509276338091664, -194034651683574952452193716456760], [-9261725570037326215848165382888979630769164002, 1834535273289693650083311525966211763214, 4659277938711843173715313564274436, 46980209041813286027426881299042], [15455998501603318353908173894166932001674430432, 13454914722300657150596628526062892713464, -19689575037453290674826624445336432, 149454399723013438688912558629320], [-20244286058797171068030301200909650656184128062, -13403305662390747934047312028193592409856, -15840715917675359347743609647254016, -981773202659189149575201995405568], [11896039476255802241183029244292240552767282386, 44414062496333955682893320969072967654909, 28898745535244348881544837532722742, -1740932200368298306322627880190229], [-58497338858756631784012438671715255913017741276, -18062587742635362434032994706748195564047, -17646599919289069845489465420117234, -543353406698784884041998302963049], [-105564759175500401246116186699402611576065029836, -137958976811186045873579321375604703886024, 148939592985136306156407308893979152, 1930961147597182404542217010568328], [1004619747198650953409836179989175908948009270268, -685369638625557957365918026614076207557119, -154778376164043826055790319767537170, -12275898151717175428120054261896441], [362724882827977106540106693385502311021342527900, -386991872880807197057052946258433124338830, 683015184516502373095622655211984380, -29392042767027537695266696827110882], [-918218833098634405776707097878434278265733469666, -590579404871141226906653800944167250685286, -1462823038620211110258410798055808724, 11593896071790724734924330519075894], [-668661946172835474377994862386529636082026245862, 1382213767895782638043127292226299834447396, 1102432808986539428391824461705361784, 35877237454673572841909428416667388], [-1895661951974554175493450277455819725387625551008, 1437014719107799864116300158619918160154116, -241269971601142337168314515471160392, -57951111342153194419365734419044836], [3502131830882665142555244405633533478020823905922, -1782880411411434273184468655512026547527524, 1686770950059433706764052828167607560, -1141458515804094435311372822036412], [6571714637415372257368505101723468469873373283204, 962280612889362937788994705630670730493086, -814791085011167920818063922845640476, 118150110545276091359342825700730450], [-350475441276576554042317718598631869999764240510, 827812738178938740977292858787333292850016, -2325544846630889999583167276051328192, -144930233260906192827280731072184416], [-9248832969663593304711277656817583291214333903800, -15073934114604916747931480785079814470827216, 4601432064194669331427471098428200608, 422529655318873611601629016534009424], [23759412016712725071465789969678448071702561277434, 3190648662934960902250879818335301260457429, -2287778416160782629456839318618625786, 1042553660453800658936952540525460947], [-17392019850307073542357085985870165904684383570868, -13537054428080089619074003714782857709195975, 22982147456424524209140521488955181054, 684033207887832018157149070846018959], [-51344673049243279188501099074062285890235041367362, 34745164001620662096024065571197290748234878, -6183302098119741980125870161525692636, -303451834381100474722031480454064782], [-23399086762283586730592580134646852080231205344358, 12593502439391399509984657942502366971299536, -14756891549487539999153330396892334752, 3290609084831555142545711367576846256], [8797533636632168534977986753630024515241357778140, 79265298686128001128218379718062907886269920, -48306165135267010680514807317203323328, -931335131877767518638529123551700704], [-258661984097512522311289545987985135248869639865694, -18764816708811241446690304832932215748185983, 28940977306352479106530246194429366510, 4652488461056927949902092170319873159], [88200739418837661542253193815655369814381161498964, -328486414595339246530469647151561210545898808, -189606415050304727401337830798213005840, 14314251214319084233789192911380325240], [199743127072369252787730180530477053335357232916680, -65615095022615109120881248428415394696270852, -347636857171144203475210494536402239416, 20746022242476527969949941262258515940], [595607524207763914852519834693738214483305714651578, -423726253123735969763525497459901901863957936, 38444771223504820679469966068712001120, -26915179050273970698877184502178375632], [292349891119220804918228618336387128042064822958586, 23548280547342829766108236123185271363015841, 334137624132463727112966352084487259822, 2571605359789355745578269427833479527], [372996642888843594391433631603654142982008546023612, 139187565403008889782699115830111351378707092, 870421823750318578518029213971585399192, -75674362400462149781866330434673580532], [1359126956169498296174871994099285786388342006861778, 96592486369395649879639468281573833054150272, 945661749032999183999020363399996396288, 29920399027564935293751645745921643904], [-3700051941943525466453934622888676816708549702506684, -559791049601738195986152579885293993914834682, 4984235492798807919854475729317441284500, -68400889387741743406930060822698242774], [-2676716741052493296044819377904982124664550238498386, -6123363652291725040513822050850799793529062188, -1803652554794053747799309865356915395304, 124002098238457652530524137537649302988], [-10309791502494985702857522977357015984190237493294318, -894063147569351757565133107699593289944090892, 499207107690558774583346586307690916568, -121526444040542336881171417640166181716], [-23366440053378356469777733961547480485296493170136720, 30493906194764881801041337841736117015795054, 2732704804017915927333423479293035315780, -319457799000226631575486578484753423358], [-8004616622205845193287347527985411847096902848651660, 6050600333129534490740321856625744803944466487, -7139011114323356914030058957819445078494, 8314618027512941588689036205412212865], [41514627383353351269503508107159390382163141505690406, 4996266359212693639883270423765080817207791660, 6767959288005448880476475984110256498920, -930562812412103747695076758828884361932], [36136887698972390963225175898724984507522786413386212, 1847478848948790103672541768029156578618559590, 13700301106319151644192320358108614399188, 1894141285506923428567103412046249647306], [17373546109907330184399845954775018381612698319388800, 25715981951802100226127049670031790895887125568, 16195692557145941547188602854852648104832, 467287557104673812209778054023450105280], [-46135311126999629166075279388303957619401517415137334, 24951824304688665415798053648822399278775085823, -17738775487852069807336215273752919029742, 321980112364734199088452777483927190521], [107513382559303062874654964022178237396295547868929854, -59351903839354182737683608798626444694110628324, 54236859453467271937105897555563979173384, 2931866593744408781458218136566997767876], [17526261340759741110347845891751587809939683434408202, -103518369673098927146282238143832012072862676078, 51623068192953976882243597286127585422268, 977742571298343565827403153749749957374], [25383948205881622521574306502862231821054045269914666, 56067159185391976334449446207834319895464804972, -25513704091983861845171101784765187453848, -2695723189414519589214648038738553520908], [-111317180081987662602230516138449221459534177567821636, -160664138238286281687623276312481569068580724710, 127610838259882401258988499734853996233260, 518940702754875728259705739000945007286], [48680548020502830156266508001779247029041376231918222, 55980103546706592066444457177435421066218861006, -124798160153513045486398631709366096836732, 7077485898992187549697444766519361514146], [-1457104180100767698894578599786647686045440507014547080, -60044727001588316676145611786512170916444893698, 69865627400469285591375818622505400518692, -7281315292413825986197048691686832029710], [5676703542612030206023482744359451360151913100708050, 198514919937040672961818548220038736065374670744, 334951711240150297729451613039605361280848, -12689101970144962278402402518580009515736], [-200332927261773168017473462309498320518004053537059644, 57430010557691380672996959645055333325303230501, -329794962476197329488959134867221309879450, -44384886969369239302940899409704764750333], [-756831397247181388098339406083047572230031770073145244, 490137445121128048399139428559937178103609022038, 748774467423044725266518408006877738379764, 36663143953705977974328854420337681158746], [814276297324751649192650019601098982503299395322089610, 282560126524264925109043028864002296593433990654, 573991658169462102959820424606644523653156, -65636708455033890852919672235790230325262], [2298627731455396021533028938150002497609765351992372474, -955712073629645142867288548197373409109473659420, 384232134788258128592942170720655442107896, -24736772260214046012916057854342713844420], [682431867184243368786905115377401835346166465906203266, -3322809477814563056891370227156941267906312151341, -869252855046885037607620564553694337381590, -3154687596141038750729776430091891705147], [2012645633993290760236352132714970962669087885116083180, 806601232120005928096619860405314673540438004161, 2269097472749291590904496628857048299382382, -47855129661100384648033690031848780182201], [-3157301848981789542901746807855982095959397183947821844, 2026012910407756923200582395170511789016837615898, 685836148240359122242113401677971671388204, 178301577953316882484532972679470441009590], [-5911829370391263873020014664493244765151054697785518232, -3456503057246016170375120002592704317933013082482, -4832565868689885852152375937790738170909180, 122021724639901753735472109194389760377826], [1586833013677822633283602831801878162745594683798437660, -6474199457020537999676914438511941255815082316853, 1100817037876009394554706882026389430074810, -254199886120222120381793832949664010769011], [-3312344445631616736377388419614200717715942965941871012, 3254505786125919362499101198065457737261127142484, 538961155867527419905577914773575120632344, -209664402748123551532480118567979293513140], [2129749289899552561508583630054176939977182846459425844, 1042278434750777354135614305846420776971970593024, -3738094735846446973222275055525258297627136, -489489884193705977675501007992574226184448], [-7666641043032721785175222875914121678051728319383919136, 13288119256869213024190627470135115515950625871926, 5536079456974812776407356339341403912568884, -39157009044403022412647532784432078291078], [-5098826057663751328325197030626198138961541329867220134, -4222079622396167791076493025810379755857914107079, 696912679772484615137510228405120208416766, 565474045107693692521326175666368047486863], [2363364721344780510290462719077630538998057686531981410, 6829469927598151009679055753337405185122483200842, -822651148564739493870923939953856005066548, -1166150107092843739741861732892569222766330], [85978651231050619633041201506284324614766414979399732, 21026556570121323653504221397474154592871251660662, -3593285041189818380144700875793174467322444, -937844105783769990591439399576779293883846], [-8951068243569446527088758573961472280580407655441755834, -29728314445762229457842208317377958520079827987090, 14133785943883690141061400684790859343648324, -1276048605278582424392825222799918516780030], [-93396681328721025370406854877102221914700192715364998100, 34457521522225144169411680079797350011778376116862, -11863977186473060750427770297605953463748828, 2399166215726584148902097863881763071919986], [151043227409673888281211940525753140585087256096543670546, 79455230514769294593221206542510930215084796440103, -16673006848671976792651580724760222379786430, 467500487515393852058290486432332403505681], [-90366656073583563362131750779064850783165492690760446116, -63169711586621603250226055974929067262978931293066, 10084820129070142122763620724516058058947508, -3321231744020413506118870508039595234970310], [167927352371323024659055519188885993300931748043582500210, -53548282062595969808516924666689885160967591485134, -12631744611279061103158516698283352583637380, 6235398411713976267138114036688802047998558], [-14881354368268516899649601565532047232291332631807547412, 49730102120573297855774299569113537708227093288324, 98569861648858709012030802966118168766788792, 3331465502742948443167048743901235430431388], [259242531473424483233218063376030949915840631905946663298, 81433542035414922600574764975206572509000753862704, -188746155014342412166536549946457724127046496, -5681918681848017356327516726912026361210544], [-32766413972947455803626412871264888630583579004099527460, 29256889429972124575356787138381122237921831915404, 288556820064097491399522992260138382651764776, 8800318051778826659427383099053483495471316], [577279738975796738979457845843115231732868754268253859330, -249596384544928064570566624463455279916470065733932, 96102250348195790603991104862883943605198104, 20390553213195937034067880640717091741051852], [-694482869757884539410850484426962718125285124600613592848, -29322332787421543465321069384061097334537408285910, -247293444710184387524147993450354292702657780, -5985261884497568023928830565511742236364762], [205222180222339663332380827357234323127003842819854984826, 105111862043997879732279400414003739147978306820520, -218086962071979762092997765903778907853198800, -3657951488221016496892457439074354979497064], [-78465126120006909132851145740285786632766035270618717332, 234539273412245727752999127152640305323631424187045, 201027489786752814818931551818045464124292710, 10964266096311538987546169074859488298639235], [330344291254166563132404106660241883682859849712430593782, -246426006507862380856554324878138266211949954970860, 516460172087706187484108819241999883124429976, 3910018440538242687209082972509980135637388], [1704268823188625256801433897226759050395732245063089255178, 177648740553181914056521261109177093207474046857512, -128282832596227228355210823050616534160397520, -7444051571551254841796540510835939286826984], [-1438019960596064490325515974354500853093498797217642192820, 521260760812344740519498553130003703290642726875160, -267797461008917625930958892432199627730522544, -7508494694796862786467501483230485660587864], [-982351122249186904642849296241127213678855564661648654196, 213498929528738872754649422462827519821845057765715, 614804128976092769451101565634620676179503658, -39730365690984352403217191800683795902788539], [-1132865644774067708155357313686353654211378699900593352598, 2025660549336569916844627687847480733749156418129782, 583329071855912551838273842144056738705173940, 46051168204595917710313075299723348969046586], [-1435353647850316180932043386766333247436524893823081556180, -188696821625520517068979316254170279386485915727210, -908685789143741441473912045694333306550434444, -45329709179432433766780493997778753414332390], [-209417112383003588526241140287576096080691573701771348752, -1466598734059440981673266405364254455865071631189738, 927383239118549764403808829744926459527151732, -13851188872924561966224551056185980302195302], [1234319842218064907016109502302817324371957274740911287634, -1869595283144597641300240547249440658087728162027601, 126681756465459220532363743477354878297142194, -21148142079441835147132138973220398935444279], [-1193565772698605450798471995424870970851031874524098121756, 1365968477186749640032951376291269393812774332141084, -1490991177984256433908529395114563555930879480, -20993321355583533093557232705237170319180092], [1296332076639288227812893872845433401656235843494408311958, 1253665534871316644159176294136258041426464674570296, -2107579279369293291866136570201717917786198000, 155179988558701882075720794680402355908884872], [4470865915661576708316545629635218411201860998962306971554, 6872766289455858672734440270611429055221938907365056, -1763397906890396300348746690575679390105647488, 8520820722718323768740496094745622775560000], [2398109744645598883098973329912558021939827874809743781114, 3211786852273339704640581834707884230219238890535451, 1551531388272373287307295332414616236499660826, -124762985609602177452725998298080674292006467], [-13765950086424178340282601568745451956975608830855494019260, -2766135119959428925938200598181312547789119282490118, -3005993328384973439960103325106324225164211604, 39916969344684746704286813948631467153698006], [-9083123449502853964602061506139148012593732685608784070228, -4647561642838412008495981386879419637015251474830238, 1909602999372789791600847855611286996346514716, 139328261793327374039841776740056679754938542], [3173869422507834481074673120169015530349814503334009525690, 2021708901452935123559416489358461263256164225813009, -1598963466108057015162847003538934453968190258, 437279248063817900946533857857021843330910071], [7229695733110545597738677043300758615357735647724914980990, -11546025183237151302967477608328146458360429341933382, 8566925595222285333827171743742575584671515372, 599304476834592399551318167531332004156784406], [-25958280080769944216319532915650464977599402469706693862520, -3171880240524820223351041154366507670219392233102110, -12174236087982272383118128535078079639490579428, 391970967135478652068931153522051777795654702], [13238851868712404066819952383099759681409594684385684405932, -5817328938235176963174444994099315161914318583568541, -3276600101122903543330628539170478588253160182, 413717084833917217616730898817527056892290741], [-13427838231503027008239171240364334374013619747922133850858, 8044395183216847760965296668249836988145595510253194, 15100814731319087268083030246903285884125768268, 440724345415305328909922414443001576533350342], [-21916449643049762453472758346359518451677190432869011273004, 18432930372267248600093199035011135144997256498326580, -20421458280865984385616569662585097562340246440, 414366495741267226449953180468359355764091244], [33227844883803888356172429926035519108645178006222297185432, 11080191794372677445145139745329343720967408605279668, 41051666575069165731824491188259504534752268632, -570195951385768354012287015081991776440783892], [107074884228759503919698909664495294791960490174135646964100, -10367522539447954748955746640809155100676737935617869, -6358548535915024937118148931213877723012889238, 1499524061031733576680402445838860985780803557], [-8775961559835456653110234279481987285681403744085893082450, 12409285745325650982881542051871259234711721722025242, -46662304924248911995394424721960843936443616212, 1997451164955693692439862684656274951926427062], [-76595365086110267057579652559356856991274505041002247780702, -19467972808715686907638426056312979939731807316906058, -2987103764182948987271344069495161694849771212, -1586278124722382578966443168726949312299621382], [3232933367171359291971685103196756117597560751729105211554, -857207461344739751300078406703887990202614266275304, 27821760327177937468724435816911170637205226064, -2493252693891716989486776431961000417766125912], [-6157814054269963477054774894952864427063138178010992959886, 91646943029435250926222969716872476373452617556813925, 32149491534252640304020663179501850689634470630, -557267619758008434780472471236634243981185085], [69937184292526572974313856325077402754496928204258666927884, 54678597062493509416104205217122985240167903676495650, -28475292638687134284069256039550217673811633252, 1609047735503909196627399004632617242005734382], [86494434061748961127104696160245488242199386229054478962146, -38827184317834167900781548022784124786961561915044785, -4038967241523354168297467213909250943241392014, 202744353584247624469133343539409250977002793], [152236469606494297354308187556754673322748488253805381021842, 114173749917028318584398800500665760684056744397392550, -176757937109467613019435051247893045529607003052, -3791741331919504080676421494407037791243988854], [-83270120465880974803549306066447759823985988423222411369564, 133722752630335248783021975077430769195901419778079810, 168635323843712224091342283871617049085016104796, 6324803499022223226100107631371662365726656462], [-340939531808526021147552280695239474698370081916136227412062, -82910656184660835322637388071647822224111959983062139, -6292782746921497218370551134956570540087934298, -3735217555234058992619348462695595393897804381], [-33726361441952430075188800824026618058426498424307990042532, -312229984366157839653918916514369832875317312024967825, -257906809666690827012609357118237008083721656270, 4393986672851197378696840336221018298902250761], [-183044130346746831063479227395525383627520073353297227364340, 251679357336889464621419081640254603776215213338886012, 145327016261114175799329145457985068187812421960, 3530688705877017482032959279266722487550490724], [-39203494671788799767886063779511520469852946990474327927226, -6611377958796033339539081490857077139491286538698250, 182990697856244684354999544318370484054687732916, 14643006599489575609827417961333610970084017082], [186753606944632282593083779343562016859069588253991394788352, 352270733499539676999172110539933287210083846422639330, -128590360192079925121995790218118256253334804452, 3265673241916997145242892984662570035410921006], [-482623640205281921118580111543169565439161678488956675160394, 32352412603072812654394395938371908708384930898665760, -416498979816275109562216016039013223158389444672, -25650995950876601305616233051484493508460664864], [313506577826640820382401043881349024063347948102724301107218, 401663339161438262753172467924749013839881972389871890, -539411842506825840396452550664060418324488423236, 22449453825322866107938303452277738479966534014], [715912012979910532345556486214228954195225305229067431191652, -490312897073214992973391339122486967828090017596500226, -120159424887208596592380967977362887991078357468, -22912309048195074512280653230099960088607817998], [681323446701740003021444656991540120927895648143769130482240, -808892627742985426806043227393449528623716644301304440, -364073677709786240926622244223332179538988635024, 15913823537114483035247360650490077655909459640], [1903335927617225452096950604474999951031218102389206173545438, 209430041042173107776016774083211719309308855641434284, -425402853084865769767504934817592617287688704024, 9753856811616299113170344716424567507289581748], [-264022279439468048074827532245109390745368796531015328669166, 839981396383337626987827352135179737581586594604576888, 553213333584298210209340407673308768087409960848, -1209021497325968535912220851642488872548136120], [-1570526312493284230298865490769872196176085799598400660720308, -402035616489161571024103055132555667503018870248427286, -210201473881123799417014413614576666162778059892, 2264720593480920795265874073026080719651594342], [788055965015338231294783564343214634062085017991290505981688, 731651000939856743215554003325781804689970016049432864, -1296569466052459439560178122216312607044006949952, 25290105291552955397241675019963241743314051040], [-161844262418524356022682258530785630643808286333201349881420, -84962022494759836524795083802725876485621756472927114, -1455456211044857904445593546180053131910816889932, 14907547971626303979367370379540233945139174714], [-3364782535539872089220200397656464336183958768205605277416736, 2173842448066649127299787948815658718174229037852864524, 1084913225718254389652608833848658161666724722472, 20191787707763303155832292347126147711529294932], [-2319905129382694684617633242687155306917792258640934445758596, 1682605242780920792374208897420121976903220920913122623, 265070366456388764899892516567600029526516501394, 44020346425791099243187818007958765118928225209], [-1611127958149654477787104955149185088744916969895669660076806, 333106963520157639800507721231203943007230602968367354, -705466289778602083303124860741266305170777449876, 136259601487287638384488686731466362726656647382], [8135026095128866754088495102802448012294030853056234840092586, -204023927305586977042400093706525023497435357253853936, -9714982351494873265143457688374003062779374368, -122169126904522794442553649257737568504867005584], [-9085684142264733675048544461100629813523440574655783500706110, -2028778323232661040992507740643359986096040031833661381, -143834972711373514163096549634486434515710811686, -33403036600752090115705319599394853893639476067], [-3803908525641744076913281902635371575129186998093893020239980, -374532554558820282959124830363250636232464176007593896, 803151719961458503269206533759698589798952114640, -254166701049745368813664346910817141732398523800], [5561902106889548015412725443709390878906633373952336952640914, 3659218124535491766054933199141526111211183161078123850, 484490957220778865262536020216031845146995948748, 52383783820803959137484047272841358732662458118], [4733191462153313470635874302228563193214029798344087602788180, 4005738979146304991053174204818843964366628010425954437, -10689921797975583428409980271274634292174044814170, -161882339673582689378661750732250241895316608861], [-11349392128022783103954362291042956257495971070982063377659772, -4132889688937163050505699771341206020229964999937904462, -6610176662017287795357000814133220570119424596100, 215354028082500842793839547234125197332176856798], [3642437068166734285935124833253084448342938362014570159752938, -4223489366831036823537518868021264773334168851327142422, -3590641487068283485467606101262867593018349354612, 375107618830891759998104386853498264441712116582], [-9508607379652325309504112945821137662448083920735585605725192, 9386584984712012600120512442533026582545981534531426744, -1184020621925032195462210750730990576529231466224, -332636253046173197154748874356546957005959762936], [-18059042642317035830202101606071262253783780047722274166361996, -4973916663992948840742182801779238796812150311797389133, 7001773367871425197827978521570320953473723020650, 381185373148388363495640861877685004171326693349], [4700136103926224601740475450599977569596915514041094820772502, 2547829832779860360825095743066117428332087718652077772, 9927143983506962978157067152770207479410058863016, 36111953075559337572513882381846915313537760148], [11338239507739910550513316665103788817881799740693960469237634, -11994192580511330689103527753853621114949756901000654308, -9199946595103265515390912645618391542214097251832, -591581293651709957037555445054184761898810369340], [6328638696793536876480508767102862338113573216059907729387722, 2369743855924457265952932461071264473676337069972042395, -7645673120443714895731547659495008125121477474534, 259196245979773722496705505498559006958574734653], [22115862718145294815161349438527478627284025927896014531144332, -15133742439938604801951058831343766290980229860650659956, -14769793057740480711154803415962937845845032996824, -350458417399670249964233671419844132279840474924], [20207891841346461708061237653310316644038821365800398862400926, -8758023390346577290019985513533647912991490850795974368, -9466580223236575502139554450187876212578876014656, 1186076016560122074816254338698063842285078509536], [-3176072811827362945271271071547798204785194812199533911579976, 3894202241114386479183242615276831664457255255183861108, 27744135339427076854568089996363598123818601010648, 574434115532191281378326478107332466827671353900], [-39322363356493267817432344767568797657423065749795235605304502, -8045804054231811949481290315188797600444845270987403648, 17883052797152248609134655683724711706757883034368, -204733366136929593016101860323751919614721628800], [31550903660594788978630364865755685368766962252406526538445396, -13483103137677510713415255655345407648351839532656649113, 4081127096618844627935489184654030645283781266114, -1130765123485038727600600223478959197935216976431], [-62006317513584545489392822265659781126848033289682698872687462, 17478541534983842747940239708328777132319376816114128720, -15413824402612860535896604266692754539555613741984, 722472666985217940864322228776397159060788294448], [-43686201740742682222339829007899060781304257274473920703762852, 8841190532750876894661355148983404295471210487869096000, 1441788576395524041530957704908500919364501355392, -2116225693695493858209634549897380695134556126784], [41624662748614344772848731788583461205738628420411097010983402, 13246588629055946211968601938760847442410813895731978335, 12471729855893147943381590072728134395982757828434, -2390193354224284549162086937900967786901540433511], [8320973532604677240627927236060432899028154007030973139290228, 16662065360512036009063378143930414162290878302521044437, 50967335081445005477867610748526482458010581521670, 615209642877348382256445028768807882591682422227], [-82340019383288555718367059167440851245455507217053592016782034, 34595864441336103097627830636902993271731139025545546856, 35386738721718914695821798167411993827321515644080, 1673628541313619666086709363864398199609726230232], [-84781218997680473044406412069549060000253613132584963724830092, 30975279567887517848782601036017063039941229246141457419, -79449631671004450163206786507669404384057924118214, 544548522675120916878425088192671535707886712653], [114930991366870009176760980234767767629570436867083626393962380, -63074938649780213396193951263998069485091146916905067090, -24131677482646427592272271716729587900769448036924, -975566160456312802573375379284838896186999349822], [-32486229324103356353660064551821730946257741993759512868479650, -91491998727997823475045484876631703660293738593186114910, 27156314507710844444106390770424201857401492406428, 1380748448787942973354659112211229080183708787822], [80077359302294610032395142315130863459553191462469701921779466, 1260100054338976994332583490940306885926585415878072096, 107442492973746249401249687342540714399197703090112, 3460997379834447284358442432018926068467922174432], [-100921618377534788847546943203795473298947989934969155342913968, -8326699686993687292863294519089644388357988177794018816, -78953617397411604169581828419109909491699661345792, 946906873871016027942304818045655562375651180032], [-28238859089498773433364523126978138630896500718031019360409142, -29523189182516307200492470243193536763604374195139977485, 52667684427626570604194293694942756541094228113642, -5982931163893852018200530659967779933900093875291], [83783198017976506860742130810881745207159759756420965757442038, 84197487974905896305182361854872542409618761358963667698, 26962844999755274902367919180504634805298316786428, -4353840537302216819401656388686347710861528295778], [115585561927076089649250502388715083936675070692858722551157572, 5671788122513398703048287348494073027395823723736494744, -20682024278327051221115345415752323278784159710896, 4771883159829320733025061026266798005374997969448], [191903560099247852801286523635170273458738877659011056617032186, 17674523807280901219166958602843300492489578539993761740, -20386433526487431813482230968518135948624194432088, 6943115806760575182351869556455628572224045941396], [158450146349379679363413995530853383678052844664265897920442432, 52779592853237694443699708883351590356411197039120383376, -95690917979813073802879606671893834039344106951712, -4805885363755476889902867784572765070474650386704], [-312159316067226335276413526697662993878186698207364220832177694, 82630843517383707855860954939880290751888644124905986536, -40620183505173928084823376674026078824374290154064, -13881036517487470350316609779694941533794571788968], [-126172408679736822156945978668167889404060597310939337671596084, -5049150954364218930626133838542482712052921666409003776, 208143541631312960520460250596138986607834523751936, -17118517881534635313288535145684105034463220292864], [183612681838709333890097448979625798600302205047243577934828308, -109313691689244525402375019682924449653278778741615866256, 103727689822169667183465976810770996710001416461344, 26703209871415764107139504141019155971249918154000], [119979087529970852767894557139112146349147078837188245251104354, 269937419124085546949564626291992251500382344161696689423, -210136464969646314586762109973820501995663922744590, -403712307948206586328550914394584708587962295703], [-918457548328864376415468439075541558081150393192670581618211804, 51902107364433763493134880647133885471211969618146343216, -533360732195671694626949079254966417070105285125472, -9121194648080259230733646580591450147664257073072], [-49982637222457256152992494490297967849875365916165562350967158, -20667919466756716691748094024665624456161751661453555496, -279526213928847825786134591076270727083362169069360, 4352302566274225486390839411676281281211111822824], [1402589823089155051955466036373922099148557782859640215753092530, 469829741478591943767186678897973866827128838070275559328, 330899295014151834732858365663398818025047508537024, -7338724125654135282399172121462423536847472980640], [506565475997960621394115502416473212585361431908685327370034518, 965003521488142543167208494274103913693741025870638582898, 248040068187139319934319050787681039768114830405628, -5801279307304059105943532246004170580132840552162], [-502227371259654307628747057562303190789463861380098689118991390, -462854246521566040357735822458993383699985780949351371400, 301632788456486624279298255184506166337141009411472, -19215982543182949373492745593760814002170495273400], [-502123584545196323069977189431374081016176771415719016266381384, -90002825717683630641865347300978132062490740342519671836, 483525422778316993163694376770381900727412261265912, 27064880161574813211498767183965588809789253480252], [-16024520593784152369349869843136697952048616949102432186588254, 697306273342397130308377844038910175923760335866999224715, 155819307497123234615372042742012991429286597216826, 2511011890051680757472188007055161925102584802765], [2002528246541476268060666171691282434470157994958665761553597804, -172547831958195703643132446842952717329119640188325975263, -444236628659391446893882361209664941080303758090834, -14945768769385799239242906240143589934690941804825], [881358812268106070532683439374309574003380631374791252144939902, 250004874161685945692235560203319903453307274407434914750, 948399509607944197597576183781366874708832563872932, 25535995758465461540727236531105361964511269900338], [1624108839711253652343111843296774371114267284781066212397922082, -618835161768242873996889307480078560531182868873394067792, -376202694955564572074054953148099667499805984620640, 46833806521708137634267233452281321582191214083792], [-1119119888331946647211891816989974472777158259789538022993567932, -789660087431002058459765032356885939707392126304670044406, 611742553400560498556202964722040867781715686081868, -15839152783089931443674733796120985960235155049658], [-373636078073754434756662508786875804316434497915556183479113510, -63767597114222367634840815607619944256411125573081070055, -352243405369642382357367641750705775608452606211010, 144455002678033621708673744805189243585009260114863], [-1246218379981403202680422497008044320348543470702829402358002292, -1676649427867704798058475698805392718517077025253695042363, 1128258842075829618386861632840575158486518128547878, -94842878937268208652554100446416300477157009576349], [-2809880844666096098363657626457156939215636253605924466367828596, -737777755268272887051944014172113540975635297562463004194, 702780128909528690740999215663105645927219407161956, -28830294737895522372535925190169269709177921031406], [4695602999743940532317969855624243973521973993759972418890957274, -984279068229316389462664966511185211658459607309781407492, 2015146657541252769632042432539606838509939137345096, 90314712778393717718898611090298058723596414622436], [-4464315702289190530323674386195382847921866759961294901889379084, 549613831821696059450342450077618484928082134603330121606, 2793304773983063087136004452240883131570325991034004, 92299003333073774956616989505531667120696096322218], [647985597166515270120202518990277110495936324054905592388717106, -714913213754462650979141998381748236455196767715356645672, 1663192033770578446238886240093667304030199621278928, 47348663039743956406855615025645441128457647515624], [2181584527522913400843036366900927460030552337875326611899731114, 1199478569982106439991926401636369997396649662624221104811, -4058507658885105547735333861222042826735684483627526, -113938706247142375629101319125033947371863377214035], [-1447666039841330681230993693075049130984853196448071576749131324, 924392975669985876430321924314805179244286918137162006909, -3617895331350634729242618529837586363492639897697482, -163567504506354554938824511402529867986599943088277], [110883947501178303832833254490153815206268388482213222784831132, -540269472709919883475977897673304639335584598542840467728, -3761591905519477695559419856770433024681140113947872, -164272365637162810001975072879941302361327539881840], [3121472739677991971356446939726285886738726352906627708718156128, 4308994384220722784398986108718735034373154572592806808066, 945968530402377895253352453907861286195127888537564, 41248081538804141329042859127451284507129913026574], [1480465126209699076681336851962216001424326305644090748667457482, 1523236322345274344572426698078801404943709609007467636456, -2345215198408315681039891226967143508050905800588368, -242353479376494482379987911490547657506814516430760], [-497758165793322079173841882084631952169877317592165996659737660, -2355591734145944058062294540557413669707947936497660081485, 2550409631098440944055374653411321237973812633432426, -68285534557355132105682975450568293521347905851931], [51187786724796489937747007888532025069704112339266501979746618, -5914688994757284243286736240958569688727930005303839050474, 1553329040923971811089890458460196196555601099130996, 94416505002441668669566477537965170684955378280858], [8436372679926580704936475191335874671141152296743236278314730488, 1087934670941769594731822339543650837212977626730705959704, 2019530696183445474609708429072472917960650628352080, 65786833676295828608617594985405302367306847597992], [14720647822204940108987501963296881915864240754252160080927409138, -4049294310264406393997490130179306211063700392323836062277, -323887021533389864041698549450947301370351739228454, 21044101190930906186390590943220035698318445257501], [-9233727482746088147133078614325523629326889749509550228055301650, 2973896620487359849835701685946788087554824424494621820966, 2495722888301738944609079490350455316881152517985620, -538122464988670583968144465556243978892053772263670], [9517367454371226333773304934034484073718366165067593396106393444, -13025154787649079568340986129614459875444583711786199106387, 3366339869905216344604231674870118998969737702930902, -843405013733096458834804562177264135420532031117893], [1134774724996319944539678588423204330443867021682881493138350490, 10488474173077734547767197639655700524361734549130676797834, 2305244560918544731335830376587816952347571431333964, 474247927402478142562119251265354609410329922843846], [-9676645207863699398810785511478390658894712019291990852945929716, 13709558936231251525543315176565012975326060836080580914281, 4652764593365508371421660808912742479440378785838750, -890724246537418249861486644368768960239128596680737], [3773089187686623791906103078562202216395850192155292972098567100, -1098277846883154238917419530746431849968814070278812264394, 11747746504514996418414417173063798613339457934207028, 1070925075726775119869750852439414913291583979552634], [12705358933174483016054609406690530704352366785628752348417764630, -3761272941211479754518542936203270100501183468938806594728, 2865460341092651308018222829000952266348725216122832, -1380110963927294353176241117170999483888897676779672], [-8396002939669171320719641668756591917089970224430173666987029526, -21519099902164516116441390288267839352985689473365517926852, 14003135631506901770899866467475654297506679987267528, -420110313386705314306661730172051473458392969056348], [-20760407449257770036210189262811253549282273895065404824566356568, -2119618157461165871350892041575435706757410400123323710738, -30406172508928833062428426696453029535934832846880956, 1193493047375673672429904235609535980968223052292738], [22645962476574396586909293125829478024424698413821957306818078212, -21793008792252662185583945960841435083666292808181010612047, 2571677291931254067626282684670626673635430362900878, -1567313114813759156939834471412011678320924331670057], [-143033205777782995976521688753735286699446899934159442341900900, -16169465759405731677688112692879949886918503850953432871820, 24977763933294840312006261946520923552587714043992024, -77391128236004165791521444852559810712776541484244], [6579405065215498355742845128959673884562263732018267168440865270, 10016240908515568604016048637870196587093241324029044792454, -3626156865566856681787926702053208691620953531533676, 137927002722080175737096256031182594807908030844330], [60797251118640430766618181269903069309572231549340015792604216572, 269285212014993029711508144268027005643596402409882242222, -13235386027076029730629322990975094496627936514420796, 1794125974716126866548205234709542488423344372197058], [-26201229870367544773560956394284328165381139098439514236582783044, -6992505478481652972084636245314470309623063811661682772599, -15385996175505634110769788062810000108535920537783714, -1218167505090918045796639816610736194324780524810305], [-84438649050351115565921972807538842423491246619385789781264032214, -22398831408018397551456932753514035986841376515009987857544, -30039081169759411658602637982843030664968785219264112, 637940580540889732557150128041229869513897088573512], [56158058224011690177014761108329488357026069166359822983135356148, 15103568847965767757441695244046997199462259247211801489974, 17347013948325445435501831840819523770372172199263284, -1256104671807608955881200579208161846541374682827398], [53984587196395329145767136769392649853160726547068335724468837688, 20208842451171672236599221423105754465362073191064049573846, 4328467387475939772383743906626837896345232577275636, -7064043327462898623429738714733369663256509819686], [-55886368679448158006477356163565656903824350563429188786202516574, -65925018790816918832874186408938471703111205927730501840948, -4794345943451495167222714996434953287142060152357976, 794206823121251222555507829080578521123898644855444], [42376304253113981930585580646080975301579957381004006890806517786, -20379472855059384501651283280924202389854283613429185941473, 24655988479750510048247729478602753892344386899721170, 1327437720010697143127242750131993602057227593514969], [105877247502892929873803399128273402610380252766287722424653160084, 13794513909810148362018954841988593549513586247357925798834, 40876957823393673566092510501564991670043401932222844, -921756233441742706056963119713708752095858277254178], [-112325990927409452225620433235485370697244377915277262162085721712, -7678054173230608999151959075163001938030417722083808373946, -7164672904220642114585519502474268766006029278861036, -1113606446037909369430003772408928051918464070963990], [34506468405947045705853775185204403303398030960217199307194639580, 41820374134250152673422429665453575713260604054007257851782, -48364293738200286121142334205268016885055239903566700, -1348383325397039850481471366156819034038099362219350], [-41800312723651799248192661178054866326393273840142267604510034516, -27297889987436695224599010603312416692900495560622854396156, 45859754462744015050791753104246287649703745591527864, -1469948992782074488662971965150931490233151639956196], [38702653924877782336670684358244579515130702064834838900016541436, 5454657721751647661128181926962022954938113721720297815131, 34340644630747742132245269728357122171044353122702234, -165979925035022625607674313614645638360017178136195], [-152160016258692382963829630189589315766628836248140374736943582802, -42673520857246164085073295605803513925458289217808395303360, -28809642813012734175673890072624385308277681970388096, -473414262093321522168241570539327278493452969784384], [122771614569134275419217716819236440642187584056899157413049084370, 15455169157420253948312874200335657913200302765309513558832, -63809988211560935356960786894176127575507113569114464, -5587007135125419163493789871527612505123258063839664], [-203888706154368355309729292911063629923004268835776263582145239248, 44220682899521852989105724726664670602961314002186923430282, -9294318217613949048819782143461003910707349580001204, -1489619330713185930695820502383944648642401044732730], [-272227767860718119318614094502371292686827026341701858050434317852, -30504028597908443857498048274816434121537871827937151019385, -94131393654506608912594086610950564488982443697777534, 1420825686952972800145417890956758414490762197669041], [-198859860526704505607648609973409595683661404687035786005123909868, -17328217307455965511672617421327289534188828456786008879884, -37612334131789630238373481107224589027901403878850856, 3192432447304812995883277389315524774033461842235052], [-53610443680051422889941943476695357926885250465102766816052942308, 122277154182220946049158232504386071091043003823650922713460, -128482702902803937682415678927529713176347596664295976, 11337385068410817102058173384239709339293470970572332], [6682904759757543927794234867407208604546693904379624491890789632, 86872090191263450806784176890861753456405759974168787172908, -36685900623314566728764442185592017547727459898324760, 9468410156915821723849033233257410957385068041051956], [368483917661152953007595240658249438180110284646496708604162698630, 147676735219935416507751211100478867936152029498541290603750, -237247483746124226511270848089411629579461150037098540, -3786934556134408334012320444507240109251122072221622], [223480974784282548819236451655305457759103036719510373220700424050, 199585680894120623907452081429833346790688555768299348023508, 79874421977184369848897555230351597220471433599437080, -6297798606907863327685607600467562328164988296330804], [-383452716207237544994869837376635453971234283856898920915560392944, -42999101513248027916799578101602073852386723796128460475714, 168533134553477314931646697891541867709203715230327460, -3445048829339470650270168648106740724583756916473550], [-276506576777617830509932295982092976645566590246421956993269964374, 135541456884553940286336040344141650719904041170847184070328, 91719324288043368067062585233324199292201555879671568, 573294504180392618112371294524208490564893530670856], [511948848790853033951116932445135106879926094173938793518648911482, -185570247592623833108596649282023683760052014036175249528827, -17183948474851757779768815885123229151379476244549210, 4589649888442703180865962987081976287958113104317731], [-457965449368612112286171385689584376551137517367394600983699885756, 340915053635015536618816509625697212372030515723637009012596, 63618565736371045667961714740662939131627107543073240, -2604258483146099306206328474798366387285159274997716], [-270889177243682919343712350403048231395841384262313181605905596482, 346735447176751544778239573642400788336060403578697917582862, 47098231611348912068238911587612544736787303439121156, 3438233849522873313848403436344086278269913271431266], [-121871355117316916932099328786166023135156560941456824040070347252, -268047006039295295497225231034310503197698794455551238785020, 329694112570729782003081996717775286541604191750571960, -5440678616669235354409439022188645197823690222875620], [76984268970211561640467805545061954924348091584010553583697093266, 167201881793636871989612046038519457421985449947062348116341, -150814843786281674914973021690215988933483796954933306, 2854062586277309415520957240275513288931198225956659], [-80951026751312387724410651067264598600542010642953086953926137446, -383327917251003471944675588799960681607346805682268519600664, 451943965882733909871514929784705368346367704496416176, -5226840336000913818786315785056598860655020157474472], [416509818134148668788807811495978507521245109557366364692031160364, -60387527275693846752901175230233174739324853698129297276355, -131899566861948494055838975270193854462129596619528778, 7606546960808578049966578052014069364386622150778027], [-302231782321103080013605223552526620513039907662214675907579281692, -17852249747810212554452110813542669821912435350510052894920, -104914830099721977473386371897665016939451196283748848, 33553234580242537340311807336949047811385750947355272], [313418038233433289260122092673940705516452658147840341540582325902, -308570361146366179329962190744032437300234175663852721469946, 393753084648198156777114044260709504817721751479303060, -4077908767295119956321967324213091964851324197343190], [-643615911229005218889022569606343828857617806878724247844765924802, -293761214257957777811717823006199912736013649470034242499104, 153155996651592144599528255158758464860296107776236096, -5922251704188853101184232192232412264026510598790880], [-1153991836621828632858813760599434536021331994906376932528696417958, -595839248083208961585655772723226156706935924514661979372062, -486138441697262290718396934094202510519375459003743716, 2438368334030173106273985967872058007309140212050734], [-384521294660630252512699456411138344490188261112223772361969568460, 601313842899970059452601080944326269933683860988057557052492, 584339882992777881835014414122647976929549033259178664, 3725061930369266061107430376772726718408281846202900], [-435906962952069739692550920381344674658853822814701853799681886158, 373298014010319389254551741821421902044615326383006386260927, -304202188141445460995999911322031565814076876138562926, -35683495459485801867076745456244992356606500159037127], [494057294048328671090829731935856131295855176932030343358963025994, 31658415990416884493428371973355768018377753052859255143468, 1062454686125115072493380389518165638906707315639721192, 44062687468439443503951995579942221910279699770085684], [2192349509261045607840429699789076183311890675106399099210579327444, -209548293733449159648988407279762772284672267387399966364070, -37307103234341419308029158914146212473743347558315604, -27842704665148986300663639212507894906645234550702474], [1658545591196913999870300597379954146062164823328920154815170854090, 351266433961958144291866692355096878974188592007028250907919, 794247561170426722611350894604315780272776678292308722, -2697260911443646314801579031279028876338030024494487], [-2239317444858633847393618391213076622226800326834878517072975682434, -908683223698583902656949049538338053175219065549972666337252, -240765749737670117705381179609978730362673537791124984, 14515035104949476725544721550369106767285431490135236], [207469417534396471487365856046311363818402539248744611960967565092, -941905424262282962416689784998898341428373664885561998436260, -239246016567612704567354574520605279544916765831278200, -75968075558534518070787640900952916078009098775968124], [-1061143096676457159491327111275497711134053761281399841407430931302, -276720283531979918564724817549475454544889821015882969073408, -953969548744941909540830295160755477607558520900444672, -49902267112934034173472329757119791275241625872953600], [781990975352468038080573911470691458275269544424327375087949134068, 987795243848225021619564246815086418908390858368013409644627, 1725911280543788001699856914029012618913584355742182442, 9336759922806962913749009998715524033545273957586245], [-4144655140029460652241741337009788207920472699313508334630130607886, -645781654381154669775811715144774158787349277933628088106016, 1086034555655974257933837598908419817877877095502658112, 29926049301747850236313701656471205108888010591419168], [-1184314002148962773001383086561563508248330934240208652046064019196, 1019714064128412126050991723897051795031000392543327257288805, -561432779196706586958926993657294301302509119040125210, 9131822073013824519165206565195206767574701278877635], [-581757841665408552784095736757367274613550316582754573775131976972, -3209221520482458309745380341238769416504382674086258502750110, 338093598838972297519851490444410574121454304687209756, -42281194402754298051888373836375284838296819391228754], [967192646226592766939032867809304149425822689271057856789694980942, 3018377576384352396352404181351559704985262319568269298086036, 76933060749926733327902827525186557082482196111876504, -1995612933699871282373307054146304805849637892421620], [-1030670808119300141924492285021674654415356908356660678978367144598, -1015579415954482655442597542575154650834121198806722864356232, 581858406137397007043290063830425429358542997556946832, 30164469127679222284864269364690327428056684807649096], [-271750795381866575427656164874328565668158309534230730631293503612, 1450383129127536057793128560917864427852262466608441459995156, 2024583901980419153982746944032460659390245847735886488, 97060829845462152355218381168723276420432160203174540], [-1503415331470555871506029636740600907864631290574215793345610102360, 2648249226852517721796502990312324359020031475861273427741518, -1465804606038759250348740333971358681685965607144986492, -32064497224689653694599156819562142432539987578061534], [-1148582271332497266148772781075346570752287655776573216858981409420, -3261843123598803617943785138322311089436850889748491601693867, -2117891066866202265850064103138083828145347189714415098, -26033708358080550661855712392083596665522121060971437], [-2575327311468052860758976072129152157963136983136389943849293327312, -4159489099094434764599344680753876890919854854407028805624878, 3873656281169713339104331728851563374621407562649630524, -126388167315455001378985321869655128515008659810339650], [-3689515178325240403102300493154433617470267337515271143163636437514, 965368161922901056827771752768240957539152776995564916141068, -3401931801928486472057221789144605297015304569607433432, -127036943664513870018482117251036338862045476577468332], [-5512000926702305318920020280911706354493207529167571680010694116540, -5363491197806521799595649219652383813556515429377195559391390, 3286391141518251068719883336773273517993377295335843612, 9047660765743501297929980262402688405580897931300270], [-12109155697271214806968376625621296090681825127883531588067316923840, 4184658484494648168932946773884739448555235339254782697909732, -811157408931584712299822948458907070951819812067688968, -312566934091950649667403551608438548977508725756598980], [1278796670008637701996837111815941253077419423397008820637341824130, -6584614261057872477072294640947024493272825823920380407979724, -332888642765221521711052879736512009850377314022041000, -196482851424151384197755435654290357083770641397523348], [14718097832127527879292540380224816920830228729147433083438318418442, -2316841818163092396798663972959118562014193262156728176755549, 258966226884812886591379454100868523665639348339733130, 338875300024344978117717442458251696639172637069400949], [6165660278762911651914154472464881764635168045145009050030392551244, 7636764126485808000324871482596955248436162271127576208851995, 2696065386867648533933948566802993918423300996464683034, -119491308931695929064476745462239386211267862339442755], [3008548747789439858642320953500219764371020583042681586012557405714, 5692277105044160873920752177553601223497398169528284780240308, -3549537824336680963387601296658479448721281950259793576, -80519747162180099966915560477193954040199341509426196], [11828558121669582296106410367357818050513047251957684265063699280434, -4271499360964552899281149973993463707270071233562773352295569, 3644154114102054147396326417744656099680684851755860018, 310835004876488011785597710572617017021192249324865289], [5989777978307890590353410364071740535929762930754621430416843015988, 10066061271151875978432614104890369006369962895779855423368608, -3664278076302751457498495012750556414905207771561018688, 30784723536299918505774617160990908570257353177931616], [2003913738953877425826731311944341014648025213235993355566767891018, -1144565174224799268762664009942952470083214348645302997628708, 3181310535246114219933892813941799699300091674964068488, 257211576926949114860946950225868899707625163686877700], [-5081438075215678187174226278164355120117494672732055613659452072244, 10080775038173190736733322784507581394678772227748646157102336, 2596986002017153089731787587664783245420491923087435264, -544040458310494948191127374225647777679794703241266432], [27413825123379488329691257416654581740837806407369941798980189216846, -2192438401761738253042114934288902853046626618865037975568840, -2813482013417251842691472099308679085044149202662591472, 168586780491506504191942077325084200742001995239607176], [21294710985511061330417061707138737364945180649279799029007063409106, -680290136094524472680088350062633254874801629586245940633709, -3831389760989694077185660783480261893220635440878518870, -137092460259070331680986205650154733695769048273584123], [9649511488409266710098470381136504026757293239052044306521848266828, -81504882651566192526828149698113464037119720568513881046659, 832573993052940391501821157311347042880711666640704310, 656449873121384605658006213542215776346897226112423787], [2059175298984176766391686788092880130621242160544865805322114913618, -11335097464256265987293793066942612647640736764179825769267367, -11666555377843753367343937963670305255429267938765322818, -705525688178875028946741189978722626618897336471255953], [-24819219319428172168680970119412621738169756495160207006862540224620, 6172716400350429416331400686563121602419654492022398651638186, 10457727751790935493499870272811966553981749012222703116, 574485547382602304664760493726611912887480567629346214], [26106394581165282971677317828809711325529415417113053135298560509340, 2563291159463291624880565739406164595830109730453358915792362, -71352987216746843302325009738041133698762097512052, -649652317203552446762404145973143756128312744726836378], [-26740412632980893269633702999845855906684299396170402466586089168022, 1173629804859694653697808297413970224816676210236332050129896, -767277262701319582898653748982708268768475683229412944, 167227303423009893295205229820013474034984074975290200], [15248381093231348221487853340942590362333847883332985978974720556242, 4475718379452231840630947115531937926093747708048798595051935, 15701409780675331210210333218919218853237283931507769554, -446738972789953221072998774072722027673202631730230695], [-10117770907635903118145835978754349786021921187224259493249314740620, -4023866765862160170712442022758764931202555813925555448048241, -23038170426917129236073400963095324307130377392454797838, 63519848552326990038522337421041592113858840240297449], [-2325092738054339629242112482572774694976233745259441616354448351116, -860340060078181198430424401144989203166466062844089980624728, -7953978017187111156757781080078858610431013496066481104, 1315798082562845829753076483176924644534668272905702552], [15852187770365964651939779507905474700211429463687581799806511626132, -12052053758440445763775261765374378684947295133502206467094286, 12678881526162755731022604259702917011681976614023449340, -1414485020142140297464448346289814808140876758648549218], [-6440611117832106593966552379843220341522883470692811226797052130062, -4429471901869348340301472080940883349841363635881881684407780, -21876680258894051230389424397087022183895789703988950520, 1047829378218884115926352609279906285339093010561524420], [-8089086482641990261792618557434164095455272061369706859825685179276, -1282794821487521806990548851024423788111228856591897024163298, -13336654727265798029412796823768765546340118188629084700, -910958791590624145532765459118812885503995020351062830], [62652459110292210972118766361792814508885258112682406668745005862598, -7677091777762441792874663771595309819669955554264319913764670, 741355145042115488359975872108847833393694284339475036, -81653924109453004298763032666560059072268771942191282], [55467699312353660520059923624052198805247881399555474682237463629360, -1067804423020722601108236961914352453563131765032188061303550, 4289725057754655611350387777969399666446014332888773084, -926419162261275927389206281324443940822813575563784946], [-67184119150020542859555888480149253651274672855678020349416616906858, 17311820071454906940732860056324793241999983397041129670849300, 7854891400344346690830574387323811240626839967325176984, 38178030781989675303376142161726540742200666882775436], [25265152260846775548310131885188372380004532159113795204353582225008, 37871206189304258280941540620023750887623602538731780674423336, 7353879127826435587014808012209360388380813739535083824, 1255648566271106715333869438918382085891002608055971608], [44219867609698619897730910871242296988945278755406954105534065333426, 1844165922698974892487968258139088701942080364093230547170649, 25631588562946653782873380416172383681723575328155171262, 1175132986355682282114799847060688953096143171864428143], [-50548833720756637735870594573245786583271512404756133542058425005590, 20245442704869198335899612948333997693580249402641467902605054, -1348319482714438374029661213919871233171786472740096476, 1568974482379296647267090550536972320255952962464472818], [43451537177565984501536751499235387950388055634702710590797583808204, 51154249248060868424078641008635603684517193386331231176018454, -33479193479279400847759626985734254010004292783805440396, 667195034011274930976865908589057969554393248609303706], [9541724263176753567019477579232529108642554860750001518633775219896, -41597328401096390713151317581287766393880998264248633657996484, -13724035129494953427056526485973128745158582790334730808, -1017688776325412086802741660975961064460918772467103068], [30448271166132151260948989660700472435945701453242888583405557337482, -47397327859452792398716441815694790559680545909692704863062792, 34872869614025168153875708026195078333393319235557111440, 482067594456063606502695375795748071741789443047271112], [39963382796873181192823946517032896280967880596231263113780983877924, 44188814271741575286182067794006967965205932354956194716876276, 25286388446985239459465124196472141162801159921336884440, -1056074992370493473296439989089989329373573776894024276], [77808771137488471649503527129698159435291032783713534590603526384216, -36869651192073041245205136853424507807859104854594995904541366, -943201409257217070557218874728345102064651425814836020, 1234415780732962630996725576337368028033736708533044998], [15127908089017465169534862965385259685202853107491771835018229218498, -30174837131405321783522649871148429476479395878200388663633568, 43321000305404497599207643937465063585388976490006327104, -4593292284394323827421427213981703722474605939802418784], [-108481246724240178860438785076414289918253636135347310006570937198878, 32031136219962031159370056816644407930571206736722376653003356, -25286294485811900682984071052312960818918269605444407928, -2814055402849353335845946138463453004816786541360835452], [-93736058055497464854581504806879690871849857539643305707293187354316, -17659365115859908596753534605942702432503099732089658988254184, -52493788811824318644676147620360175237614994487529015728, 2268483614271732133618116611463696236553869650169318568], [-68191409557464780641677678276644160052126262784533012265155916565766, -31278848045308373309996737807559054028077779212059853046133048, -7329963571711391035873121959274862944825613834195268112, -3567686556518308433898001647094207219997624344048357512], [1721346426284617602774134915549202376374493503418995705629736515146, 62204722301562750589425754922358492329653649395074504362060853, -55639030776169177457570029196510944465345195607049697722, 2108717025286272614462759904681761379583251314993945203], [38661775484598513746050871624422443433262092506187810346316885635396, 110282738007179963054387607993364036432514288076210519619854591, 76626528793943265754683357214321296162855821395438798866, -1619655265994123344037683216783590482869558212505135623], [-91938082490355547656873242355710906798666836507451693253322562811230, -6034627997974165270300793906389740702778392327624946642853806, 94494607319867531249395348972399694749781935258401400380, 3952247277720694206745476622705660753626184389750395966], [-123057147118456443330335669441078214793644528000753067357653123937630, 65220557785144814341637185423457954721731694447492918025876020, -7929044293863391946862965319331362417186190966825050024, -7562268881826006709872211090573952270451904550049803412], [-243316305454931213498269696671279222918551294376357136949355108809236, -14629152210349115898344736618096519912827106739939274124184602, -104589488694475352220183244514013306229710045763421819436, -619825928083406581269795255922038247488491343956299446], [-56267066673207382225528898860271124602336141532600738510880903210188, -77455907428692634181240452073359582859837592513654044405207942, 170153719024044772749173441592074619745447291901398596460, 2608646581498959247019662598042051545114637390088474966], [119557306107654728694355958514874564249876296796297724618264664473824, 58164542774443908218603464327363856229996538837601563959517808, -67729507441517568698912328525682705381263660675628731360, -4922009622520977716936868670650434626567820074399555312], [29223607735626218811271551321884529042398736503991872174519137244394, -27262844176079287356838164399824366729353987572088723108894401, -53826626312514374057418097056905711786720074361571653742, -7634724070036910037115517237189829372275396515841019975], [263682046120182491366606021169901774566158869947675965448131591606742, -16959481924011207419677940975065561500318310719547101172501490, -80860349997834354371370688188172788047577310937260802300, 9308468854443242101480030816705483487327864562802227810], [34547466921656475631597417763554962003967737217255819944133324907570, -19284183903219203961202891888200847485616436788173829440166013, 230421050500766013558831964091712281213687746937945374410, 455182770263364454034534393008736535053124832706144149], [-78573115727155904932211390905725786011629497637712968669921006422180, -190633220444201621393442071868792134866030250213995013179689695, 170325494564562483892206037769017033129748535014875638190, -7638730806173979894184066332432107307742756953673030425], [-185540290432402061929869617057845970593540890657025554182125732307116, -188778595199827750838809239112482057386146896414381536844105652, -136746365504774403403649575678180714165401126631542062424, 6489311827389781483774332783081333664915300051690984980], [199893023296240517382526986046597486991515956050587067013201210066092, 199942486037834491358217941444339363613609132465054347573036952, 7703605902226352497508002795020803134720823826169739088, -5936489356480304873952637887584087221333988418792829656], [17161754226968202411291467552885056332579215128354216371855270868596, 333910436347057260162755401007786653231674426081943390308319674, -50077260738568662919734867260206833394601699941427735316, -2542737850983316322164160457585940607269603788459088362], [555626827590001747588655873483444858012613145580395880888276886150782, -124727046080392112283369503064107245330905369948487414608402720, -44246570162405363090084488040052805499172184673786865600, -3663798636818810575822522530464119024745260238367125472], [156108700359381669445645752196164960934462302135847341995253824854002, -71808445651057887873347219812054487197786921801342623388568612, -162773031023848903009010386520373601521923964797622164856, -7540933473728238656591119682299419688182853545007986940], [163047080122621286959875546143517194104372935261404917944146044080138, 66415248792255479818499404350693507792514144369605267866270344, -146729929087033914849727520647868221715834030425898423696, 7919769653518013411109101369725354224350161104332186040], [-191601257102448042320786600441438131204120603598549101796142149075332, 115023598552626484446222478884479104065982113171676067826644229, -83184443739083470791742798362457161562466579507469597786, -14656847310389419033027662415423837954085255355945826269], [542004898459650377060822724809380332271246172333379455509256909316246, -226884111652735517057064241881730153134825823358594658816266672, -208679446491187443918316937903867053490309457471038094752, -597478619003202100823494751366579053548011748137192400], [-802544564358404209923618368760026176287247270873155640878469891832590, 55574048330998779216988181417464298482261725092105054593639682, 145773193892888553631447269435280376094302422338273305052, -4019691568281603774457885647134263602111714431404514034], [226466871649998071119013537740975086773100137467804702034919603231682, 178446320403778598705299296628418504956772953357884686742329329, -530973984924914552741834923910019860628113024064255800562, -13530478164248574387930492728865754875796883844388353897], [-189269460397308503721798851937906259165543991779469918703785199474972, -111625192733153534748637827806849606717850014784976452215420591, 278830022304941840590226703418003202001974894082792394318, -22275806745400533825925832986005750858165360604128779721], [798227069374129926394042648840733701388705501600729929104721033655706, -153320980031498305203496459711881349092611145181339519524202639, 259345847907449355797062483945328531082979884409390818318, 20016701696550024294496783451496323271361457928003650839], [154470111439358193947463536353906906828771972760699595237593283122732, -297312230906312877437082208214827747882443781137353955981974082, 297065398756142503339143057783745981759565975038152021156, -17628765775004218877320789781095228674180349100102687182], [750621701823374158152645985920487239688643008552087718349931186867934, 115989906744068605800624726360581257542456914579823210807720954, -93217369494673462553172320185121659635182003775864944532, -290751642217976633111375043134023248368693249174315562], [-578199957913508674454228228673305468792706884691276989854048240528356, -66102730615620129497744731783482824573937533408578630315357004, -343668694556156750826696680337499996745805432063993814184, 18416814698181600021194833197126630957542062624051367148], [585996739517572984518157346819949406999752809850459446794123194340904, -409002337678494564580475799501349070778292124560832504444613550, -72309252135090678397748968890288304288279055631540908484, -28404614228010791303531084184315983713779125877388556226], [497866280170245937112198624273044631684508548193462639267336575873026, -442590462208671497626041031855753148925759455003628181018381395, -151904708553997523826743239205268905240479459031993057322, 39221018278080431422765952183575687979133050325760378555], [-170558747931630813869827959485025647893371575562263733228831220920420, 1080536541414318587202334960256571453695415737964056240633345482, 295506710728477271674948029564677674803997567818142868428, -24942164609396338419010665216810335030542996774830038394], [-1097739457345779079618944066184253855749624938925505716975467577795654, 263386252376335659576702493081213451674593485332793141118210708, -159158513913832996911745259683999707197617294657853908584, 2558924947168697874121753150641195716203276447133160972], [-2081743037396388965390175577808118680792748183594945325783638853690422, -155236373265953015901815122671616942402747364493420255387906479, 63664204346776685745235515454496750333317434041669560398, 4149496835795632852452434790895057192441729992232510775], [350560615402641242394455044658435610257220223976887447986302078908764, 539933505783816652090324119626379026081993505331561873349519461, 738507555398867546119140511704924106347736192907981817574, -17891842602062487892159639085138679671045570829342421053], [517165276440122509805535209533473510057659503389311015557968991260342, -558331505779976635586977362771038867610513467188911507662555360, 336122289426948713258877863547645636817157911339837039552, -44553809249482698380611008800714204215915436092687318560], [-813827100060391942544150551556421203218573884712746822856098428982982, 288669437543051308521879307486865643644502197810514127902872376, 143719764477782440211941246451619948345202356823324014096, -56073600824445502028940944487041108211119353979221623160], [405982238663971775055721581204392265022145475967961685460620864954800, -950693862478364192384418191269772411225039668516334079902634932, -116228243159549704059340901744405412032833497419123836248, -16430126389729869401344877776760873593793091145144712684], [-53984647147817518023135134231386515424781661042950392150244054178308, -722182526468789321648248672955595844944159915853597398300851700, 424872118408665741585326002384524327414323490780529640232, 13622198900572176865368467955580813594344657299160652372], [-1657042666008374071548067033394475463045677436963037917057884698927558, 247564535776106867340533007806524971642644254168981273661428318, -94513758471067047632435393520199982192373622955751519900, 18988127791132962746240829966378028399925947408373415570], [1003164819666148116293350192330095262512465136126806100734864739391656, 535730347017314201262581907831184355678531418012671461338710228, 166802517747814306794214031402238841607753161752239298840, -24268432689039495209075824495970236723328564723857122868], [1498203307049068546293567354862663609411845414060907919383674750727590, 1047593986837760270355101331622180079012948942455304530991439568, 1104777361457455819620957122982209050146950240117213536, 32317187065835267652006133285700488983922069006107527088], [-2184585356060262663838292630168570581258555468651262799723014538956358, -822921191396948865278399496158820438524780145114478744514937244, 815421517480285562636710651188628270198556169110404633848, 5063002902304717402511336646961346626470712571145279676], [2228549220778732311055543822336322219513992805394881566509984511641008, -655955092330453586140390520066840614114351601825049266200189128, -894363497699298114551935160649306722371602826867277890032, -22855909019747810429795102405548297209728283328067958136], [2819847396284439256123048798460572977088486160305790046873606394540148, 291419409790420193940504522248777042737762169852970230456522474, 534981990961355054321026344474343111820182285923258840972, 7092493640034863462309077047663324465338834768258886246], [1966678129167849915916008499521366675765865271872864205281330890722516, -1083396040937806425711257749380266146800806967633716662564050204, 325641383013990671169898274890049162480933513023879623672, -63251891899814147706355332367381487849785092788113256388], [-2171099376353128015821638739965092281860475205678067369145672437732406, -776012662441055658470542200690348535509165776219223507397510328, 383223641671119124666025236472702864493080629038950468848, 21635297983403187083754782185967325556360704342159156984], [2768597090394612419050629526026644558697081040322664421654296753482362, 1665544771842102677001380696529834848096645212995404780856473309, -1334565819698352907781347064009582739366321329904389421450, 241280356395304029511813908497925623152778180355869963], [-887771100910719023138641129101175271306505391006775892790039656811732, -1561666410702860880518971955114273650783476575036557323834006177, -1064288707711439601363255315709780701969226059820496352942, -65356239543424819277232425096276103954497044348663556967], [-2969732808640082422152657092128699226774692143889741481383488573922342, 205380834292543106157684547871188706883107500953284861098990128, 408436087813657104644352417686475245450166368386565789856, -54847452841340387658609721659414526301497833667076331696], [-1896040205986631329020623950777112382449340559405467441366353059766468, 27226805164596166099789128641589294505633465411203343942786058, 344927171706661586977117921599020611479651706473881779020, -138812673752646591517950709837281073389016673410540622266], [298667352215323075039744756114346046064378688686777448577527827274900, 1875764628330541115973445973534257878308604131856340936214475606, 1005589536696206131706218890116291798132154491296114685940, -64618683181461942399263152723322424635288939136297837222], [2609101068611850210612457520651719501691448115329344416823452418151696, 429763460612007395728301252878757650737995427430415673189839992, -887869001646132881942250352140240712239002975036700065904, -145773263972436970173403033494725143533411262893299275960], [-4502498983459524520530025434811534524217559384233399041051606541963566, -1932733036905090680649138670465808229808015395076218568970635255, -515635726764993345522178242267553822071855825883277280930, 22702754144415787244587196102720043531300164446354686271], [-1534150164201560906252969322335770080609850994248977386133368729889204, 1099345645138719169470354184749425749889255924366246786728033603, -2550258177562161454887150878480702073653171704567155182774, 133978649138029187724309282718284359731954095903124086741], [1333635316619579174187660929086883639374863897932552835096674404163702, 607834451198344984722500407958325691149567846559511935592446266, -1532590075921017512129662573351364637950209223631500125716, -169472483994330102204767412231893588480949667602106824042], [-1473066527329639352440265608165561662335639278008837979606231106400836, -1334350984986839824430571626576054865024552999952510091863599914, 2163751355623134074912725809587548848034047356102450066676, -57222626549472418050656322043095973525869276429756086310], [-3997661656638872954514921310178815046928178012823674128710254088783424, -2560568596857269263321695370144772037950115612947957954889294888, 1438808995685673531149475544235187358184482749314092591824, -120496710929246829560575291356912089782243414645072569624], [-6555742317376021535173829374460190548650963851498451357105126633288414, -2501754056210938466962382438549471307272683574718273045472931712, -5111179574511612090884663538998008460300146713025339320576, 29897482738946996721189938483583923943118580076181320576], [-4361390615333186027835708644704925819516382428825302772666256849394294, -550385743733744769094686308647132265021151710840752775956266726, -2382043043529554860869925164686497686001513484313275439060, 177209674345985516556872980282846691680648056206775861686], [838952863273797790134472760580859911660087107886065548387117336492842, 2399574938729315260816930120992212791786371369219244518671000404, 2574544295252409788331724362466006565792315946602867061784, -80955100993947792452313832055220336487692754174095602868], [9213004561959024967941307318747661821272270764654263093235461473458354, -487654334212611353683613677110404686569374322495027236149573693, 384004798674234055003923181511716025927861349069970049610, 37981216740162247954283434432579580161815195421805037909], [2050616707447832248981928825934132199592800217075027912402729503996594, 3244945472379956229158782850642077752657629472788918846625973030, -2979662025211172914947402310345838135434923413565238117548, 318727319142487427129820815627118171046885277399958920202], [-8630818462182309691372213540875132896399117047802028626350771096906516, 316877774833213686038695756521640027825136862498141126987528243, -5316841367644910056572846262279967080206595540236578656662, 112492965132322351287861772467310108965315271199279180901], [3867499750470844423389899330748804088163409821095256095633303012534050, 6151831784819588479393922931320291312763984791174001520935229712, 951936864797851064590942288786901873363920176071901838560, 182908574268785228346507274313913960551147120225586577264], [3754773235032162932473752922253459554669404530596368097906552969003884, -2705820123532526165547425629508607343987130858526912431390859842, 2075871501513080322463995464343141198464021597577497320612, 25253307139436073541702029766259036503637395370660572722], [242611606266262855170852510353323012944452962659468633614658945137192, -3499468396320040070546908808928504524119020612792341866105023984, 3081107475692051488083883461508673394955832043148197853920, -78755307006473121039373551698660872451966822379631227280], [4673804955036030669045697059882078814696240728346837349949758915834052, -3377632172093865883284924907922001462061938024841549523389393085, 976424981126164301092842791052918887958436871892754673482, 180244658056954917859640718362441818413019159400712885717], [11738254073570751054600797149541037289039947357705435508167061011647070, 1181656637586563577793808938648086189532582397591258483958501166, -6213982963794902769395638271301604320605796054449869490492, -204323370816036845592780421940984134723789745983447099326], [-4107909053990333116116764273950954438421689900192696345127211644077252, -2290553955513360476766448588948949661614708215295194217083932768, 8886978721448994439831208878579074706029498233670399702720, 1088339927766130993101295156240029673817307537026985312], [-15763542290134661949019470906433802124623880563030885841629754161564024, 608910663152343958599268078688953965810936036143874567592432366, 3725527513190891270512551930456288389476670629503810621252, -281887186623903247611449964972968767728709619419878419838], [3446478741401879766425480764229339600648750261483722965528643160255970, 2871708453314162489242641884919114945296609360865235510555544680, 6776801599041360806152061820812966270656094059901335777456, -134749533266487531823406028505488190078143644460071600424], [8476086898144547807654388535028354780360841211398651507809573951397946, 1154471742001164574826505992718757180611831221869331069181406787, -6015658800185206597972221142593247326813254576041238239926, 48006387922771572863837033681810448281150876370342418133], [-18214955228785406710121629785634758801524637881802136156515400425912948, 671422963853068145620912855840707859363705420947578074752875664, -8932989284896044249130451820541017371524033446111405081120, -113497340100463510250014016264068462740764042119824902160], [-3858891576550692673211095013829649899607477943706291277759870348519908, 7373348776911258654648824560383552090168485065903000380738712606, -7247452155372195014288856304453452608050066468759485081116, -470916533921933117638483534482518335603525951297569756462], [-6922731558406935374126612075574567317569107376325673237614133575292600, -6321610532779636840525166832035009659812266823396505435566313228, 13334178514766080170820129700762426273016636576818159691480, 42976568703823374275943607607669788268380753106443946668], [3447772068395595578570557172891439048551962263296193560361361936247178, -3671678306694119669748099578875074626523796829072527035223031660, 6471838741526799935162845519197672708458045798649878822296, 330664465094491504427430607837797761141239488491595110412], [-13712849332670939359372122229873446225901207662094079254541375203148308, -9673571954827530125815401774350153512349258262524469245504023659, -1945448125269137953123603819376304277529259801820981625466, 326713862290431026456075678447378039812774736590886759955], [-11702923185767875670467384111627354831554235644241192996185790226083102, 6714925720853805358298673669190603724874322325292621331335893330, -2079862491378378447440914857212745074187754196588148267972, 87943946634080409838339155429372056298703934891796736830], [11777391888190506352831040417413304851626664032081080410813654593389460, 5787139864379907852365740600071706075612860960366640694879663686, -6009747382981175731561295746022505456093861950569169231084, 387995378053539070996349142871167637083662064772792426986], [-4695716652575515083716247701885871754256628976397016252424451740246406, 4261092795666583919151472618512694508822383975871569834169464831, 12843187474766730303355714660861794861511477398696638873106, -321762607835544418777167749711106369858118054183816653063], [-1443685819572407756537586082380218089239629271040158724704313481441682, 11925585895410748629194992842890045469482355961900612305400289788, 12084884742526091261330287608688680013853684241501595002952, 492303205245463157867660509389246519913729522134704820708], [15347340358944256064010610118001424224494135055049002541999426461753210, 6342657091742232976868437169798562186152573394813501524421630114, 2541582355378561057266463369534750254193842380350556713116, -533658979476426431263349700860448618105433376287177200018], [-10019566560644787964066094125844798883472585025957365398620408031918276, -15567496389973608947193254067567054916534199526310044032839620467, 2601511194062244812628466822722601312000096120395277366294, 362737909816560000970961910297624246881783647275370395867], [3626789905461550571520589172938707375637606962449961640208564579397746, -13826688013595512127721574835427832673010570738063758884279952870, -4519243021676897419649948426153529769892404620573024074196, 303572267017703068689555234531790494502126852816530550966], [10963299919433466183091851662690405828233080958712697386006394952852450, -28238542209810706758581984164097370932541516218568300217860479967, -14503122218665248699204366865881320610841947893038296866898, -241752589428131657085945504356538993829047574808081396249], [17150568994011505347064379568380957088044509746131481773919219083226764, 23132974663871879283035711483644507428132034466013358862226060111, 4289426046113072760460078752379726726395551474373347348082, -343072531032759745174225661413514122393020271710149646807], [-10412400367456315544598674855044403811845444804632862223371744035032906, 1097424613300098437464158940200576968339161061419449574413220390, -463779361058162104293407539142870120279905654711889288876, 844448972588406435361624565934736321129591654593904540938], [61690386169986146584690293075707225756931771602132556159752110860981226, -1229109419493471833908960058534932399360571253858150034870513678, 833571571526703577639585170370314980976602097226977500412, 364726871332452649541181715738566183296080512148601323934], [24460671012014061707169906608183257547860744281583058416219571090475228, -4095922331216562023879219726922689828576061584861247914292911930, -5538010694208731964376895856607012897847706479818349238764, -1045834113121694425893214151589340743736006102121715053718], [27352135147027763067377209859953096425378445017120978641634256933313676, -869179193201263493161323697278104012173031396785393321535343970, 19856328807545979027973278490593310818980595106445490834660, -910966106297452103283472020241634781442600878014638399406], [12051074093945981876772415118029527708773400758426725239005640706186194, 18440070388237095398942839411200678230262035626483881781822695664, 23279546117902629500215455490716417811135242897677049071392, 786454619024188660529101498530751117114771409895905349264], [-47200362993372531499204473382959832545914439202981720925767049107700086, 2007007271274769329956740665531620579697129975553673746658153843, 7029039598341481702775122407916166388848938972084291376106, 719191780871788204009950994165781043323423122911188310309], [70713117193904831504684914344466517360444860053919653685137392486607364, -11283066326326825513853663313017799739028772680088620982670476090, 5603943354668525941090891995878467673687755965816677172756, -808015138213424974457720250598085864970266932894156058774], [23442292480586811068602196730688635525267890813936125088900897634030204, -7623393576053862067148949246478581024847877204880468608475647606, -6014425638031867375823184708077559331108564360526273126324, -52640976822310588100191017858957198616719795687090649914], [-34360221245769393754298166848889678114700459838567892958823281979250486, -2930574514579514341614455742587135346308652844344925888997071256, -4131842277743392569872029902152142166648447656877735742288, 1304323567780489737615430989061277692755044577235279475928], [-46270990260627158653458770860563631745527451043144097444858396655781222, -18821152333810106917657307082973602709865029938414116786760413451, 11631961763752811092048406488102554624769526999737316263110, -340671659207649389756315471130008959659768828349135155789], [13089981184247723027163586837410855010937864422753329196339505758598048, 46219137398104700349618127295055824647606602149936651286927517992, 16160111025547862813956939318710130761901050145393800518448, -8805997414939073075582043223403601799075596358219184104], [102744586187924790828736106572739771091786291188674686462632189255016972, 13029336630466184639119617797383203435984149460831902403109822279, 12699129255810802452512147855749687823407503880226826036994, -545190955660033350850221708680260469620620833635008572943], [-26738989227131294287331955869500495272659841381995705841390390504482774, 6366672890046097471216987145485691998379192628154005867034551546, 9440683927219544704452113154254221649884758820930906870380, -2734806300396814916006635555344357299553425980172296479530], [-37306290829924469873296864323303019613270587754208374224398220954986608, -22229395997486884241451733852177473847905616379869294907651430782, -37165113308070211035660120652092708738069589752579268106532, 507045378799928106051704741430726748397393405882934816654], [-32452424256360442892332158729700302685309835548498378264921786996029806, 1991667104047564807333533440685441887793913242123629198504360147, -29929320817471719025615495995128354841181692940830524635350, 1890256221157231067753313341683879455531647874011977298117], [-53283441855371704047296054729969871545732074544987477949892961037631642, -3123236913399276692771663222567958281613801990194449598249921832, 37333266763303569930789547100613076892745754853981888454864, -2044961380600666299554500321475830241493360753728393069592], [-36340718353424552661132690226756639939233793447730290444447121926245024, -46287584814653947929366389858499669253024174284425538387962185948, -17525415243363502953810979795843942224772850680129580017800, -594527871375647449121920596936386338499921444361562659332], [-92150288046988741800380497066886884812539475938031754050860858644699180, 50955934822054247707821252253110718111214047597759379041311579274, 15222871090049887036772073990351753491328728017958365397580, -2301761618886403581639476811684788703423884078070908915258], [-64492312161371719122969191359778446104787293232590243451325990413687894, 23215741649094824464508355136611400568322456391707752796154803528, 21783610770763714574332766630854897014982640183611111962864, -958306377722708441620246522399672539923711642398187881224], [-6453291681191622269560413584213674105164518002654379769128662635109190, -12414385038804802883200424766303372347531676033221967620804314427, -67511236731554067899602616381555691712634975639062057914330, -1907731273157740851715400750157734309774629457646975823773], [35863366016388113161523510460827224305174911442007394245443239724126124, 16455184781050306071549475754926959178135928522396811047649128666, -57826829554192416636118419916446454794893620730080255175508, -3144553859354257312476074598563311697909657614812303912970], [87419172498034704564704604859894604699208304491024302491804083864659562, 109414115942691031044198955829094734914297482046760772712129832988, -17115367204977217837095662704498098087376824324235042253304, 116694044721013293718585212391775285345850571086404252868], [51653161594007325407822344130693174252099794923546223146107272948820420, -63063278829675698429618516073082638188187479307061032356606196618, 27960554362578704647872658067218722250652533761894602650548, 1961371227067845261829071713364045138230661005635922179386], [30179865629747532769742686517220348977852519372030312697820975271979104, -2051809509479944450522215462490462082724768802854036432294323578, 54749312274453699973759448022951037892916206040012403222164, -5858579368478853420999607131344844150807835348573255180374]];
    aps := ConvertToHeckeField(raw_aps);
    chi := MakeCharacter_3_a_Hecke(Universe(aps));
    return ExtendMultiplicatively(weight, aps, chi);
end function;


// To make the newform (type ModFrm), type "MakeNewformModFrm_3_42_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_3_42_a_b(:prec:=4)
    chi := MakeCharacter_3_a();
    f_vec := qexpCoeffs();
    Kf := Universe(f_vec);
    // SetVerbose("ModularForms", true);
    // SetVerbose("ModularSymbols", true);
    S := CuspidalSubspace(ModularForms(chi, 42));
    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_3_42_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_3_42_a_b( : sign := -1)
    R<x> := PolynomialRing(Rationals());
    chi := MakeCharacter_3_a();
    // SetVerbose("ModularSymbols", true);
    Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,42,sign)));
    Vf := Kernel([<2,R![7858870206246628249042944, -2484749039974539264, -7072082749728, 69822, 1]>],Snew);
    return Vf;
end function;