anemoi/jubjub/anemoi_4_3/
round_constants.rs1use super::Felt;
4use super::MontFp;
5use super::NUM_COLUMNS;
6use super::NUM_HASH_ROUNDS;
7
8pub(crate) const C: [Felt; NUM_COLUMNS * NUM_HASH_ROUNDS] = [
10 MontFp!("39"),
11 MontFp!("17756515227822460609684409997111995494590448775258437999344446424780281143353"),
12 MontFp!("41362478282768062297187132445775312675360473883834860695283235286481594490621"),
13 MontFp!("3384073892082712848969991795331397937188893616190315628722966662742467187281"),
14 MontFp!("9548818195234740988996233204400874453525674173109474205108603996010297049928"),
15 MontFp!("51311880822158488881090781617710146800056386303122657365679608608648067582435"),
16 MontFp!("25365440569177822667580105183435418073995888230868180942004497015015045856900"),
17 MontFp!("29347609441914902330741511702270026847909178228078752565372729158237774700914"),
18 MontFp!("34023498397393406644117994167986720327178154686105264833093891093045919619309"),
19 MontFp!("2339620320400167830454536231899316133967303509954474267430948538955691907104"),
20 MontFp!("38816051319719761886041858113129205506758421478656182868737326994635468402951"),
21 MontFp!("27338042530319738113354246208426108832239651080023276643867223794985578055610"),
22 MontFp!("35167418087531820804128377095512663922179887277669504047069913414630376083753"),
23 MontFp!("42192983528513372869128514327443204912824559545179630597589572656156258515752"),
24 MontFp!("25885868839756469722325652387535232478219821850603640827385444642154834700231"),
25 MontFp!("42721818980548514490325424436763032046927347769153393863616095871384405840432"),
26 MontFp!("8867588811641202981080659274007552529205713737251862066053445622305818871963"),
27 MontFp!("23473499332437056484066006746048591864129988909190267521144125882222313735740"),
28 MontFp!("36439756010140137556111047750162544185710881404522379792044818039722752946048"),
29 MontFp!("16497366583607480604161417644040292299204496829635795525393416854929276060989"),
30 MontFp!("7788624504122357216765350546787885309160020166693449889975992574536033007374"),
31 MontFp!("16727395967350522643500778393489915391834352737211416857240725807058479128000"),
32 MontFp!("3134147137704626983201116226440762775442116005053282329971088789984415999550"),
33 MontFp!("46525506418681456193255596516104416743523037046982280449529426136392814992763"),
34 MontFp!("50252287380741824818995733304361249016282047978221591906573165442023106203143"),
35 MontFp!("46030886964045328670650579467522042981756109464584907077434772786649263902996"),
36 MontFp!("48434698978712278012409706205559577163572452744833134361195687109159129985373"),
37 MontFp!("19216533213230709497947223526297848065365334472367022650183395435586190711770"),
38];
39
40pub(crate) const D: [Felt; NUM_COLUMNS * NUM_HASH_ROUNDS] = [
42 MontFp!("14981678621464625851270783002338847382197300714436467949315331057125308909900"),
43 MontFp!("48720959343719104324739338388885839802998711550637402773896395605948383052052"),
44 MontFp!("28253420209785428420233456008091632509255652343634529984400816700490470131093"),
45 MontFp!("6257781313532096835800460747082714697295034136932481743077166200794135826591"),
46 MontFp!("51511939407083344002778208487678590135577660247075600880835916725469990319313"),
47 MontFp!("4386017178186728799761421274050927732938229436976005221436222062273391481632"),
48 MontFp!("46291121544435738125248657675097664742296276807186696922340332893747842754587"),
49 MontFp!("13820180736478645172746469075181304604729976364812127548341524461074783412926"),
50 MontFp!("3650460179273129580093806058710273018999560093475503119057680216309578390988"),
51 MontFp!("40385222771838099109662234020243831589690223478794847201235014486200724862134"),
52 MontFp!("45802223370746268123059159806400152299867771061127345631244786118574025749328"),
53 MontFp!("50306980075778262214155693291132052551559962723436936231611301042966928400825"),
54 MontFp!("11798621276624967315721748990709309216351696098813162382053396097866233042733"),
55 MontFp!("34806952212038537244506031612074847133207330427265785757809673463434908473570"),
56 MontFp!("42372918959432199162670834641599336326433006968669415662488070504036922966492"),
57 MontFp!("22755759419530071315007011572076166983660942447634027701351681157370705921018"),
58 MontFp!("52181371244193189669553521955614617990714056725501643636576377752669773323445"),
59 MontFp!("30334172084294870556875274308904688414158741457854908094300017436690480001547"),
60 MontFp!("23791984554824031672195249524658580601428376029501889159059009332107176394097"),
61 MontFp!("19832360622723392584029764807971325641132953515557801717644226271356492507876"),
62 MontFp!("33342520831620303764059548442834699069640109058400548818586964467754352720368"),
63 MontFp!("5828182614154296575131381170785760240834851189333374788484657124381010655319"),
64 MontFp!("16791548253207744974576845515705461794133799104808996134617754018912057476556"),
65 MontFp!("23729797853490401568967730686618146850735129707152853256809050789424668284094"),
66 MontFp!("11087343419860825311828133337767238110556416596687749174422888171911517001265"),
67 MontFp!("22848708497596347027267124890363029002241440143993561170521113640580467699956"),
68 MontFp!("11931207770538477937808955037363240956790374856666237106403111503668796872571"),
69 MontFp!("51131682674615117766578358255722474622484771145670260043231096654077231782319"),
70];