|
1 | | -import { manualCliff, manualStep } from "../adapters/manual"; |
| 1 | +import { manualCliff, manualLinear, manualStep } from "../adapters/manual"; |
2 | 2 | import { Protocol } from "../types/adapters"; |
3 | 3 | import { periodToSeconds } from "../utils/time"; |
4 | 4 |
|
5 | 5 | const quantities = { |
6 | | - investors: 277295070, |
7 | | - employees: 152704930, |
| 6 | + investors: 277_295_070, |
| 7 | + employees: 152_704_930, |
8 | 8 | futureEmployees: 70000000, |
9 | 9 | }; |
| 10 | + |
| 11 | +const timestamps = { |
| 12 | + epoch0: "2021-08-03", |
| 13 | + start: "2021-09-08", |
| 14 | + dip16: "2022-07-05", // "2022-07-31" |
| 15 | + dip17: "2022-10-25", // "2022-10-29" |
| 16 | + dip20: "2023-02-14", // "2023-02-27" |
| 17 | + dip24: "2023-07-04", // "2023-07-18" |
| 18 | + epoch30: "2023-11-21", |
| 19 | + epoch31: "2023-12-19", |
| 20 | +}; |
| 21 | + |
| 22 | +const epoch = periodToSeconds.weeks(4); |
10 | 23 | const dydx: Protocol = { |
11 | | - "future employees & consultants": [ |
12 | | - // |
13 | | - manualCliff(1701388800, quantities.futureEmployees * 0.3), |
| 24 | + "Community Treasury": manualLinear( |
| 25 | + timestamps.epoch0, |
| 26 | + "2022-10-01", |
| 27 | + 50_000_000 + 24_690_803, |
| 28 | + ), // (50_000_000 + 24_690_803) / 2.04 = 424 days |
| 29 | + "Rewards Treasury": manualLinear( |
| 30 | + timestamps.epoch0, |
| 31 | + "2025-06-13", |
| 32 | + 165_136_991 + 43_356_160 + 20_013_694 + 18_479_446, |
| 33 | + ), // (165,136,991 + 43,356,160 + 20,013,694 + 18,479,446) / 2.04 = 1410 days |
| 34 | + "Trading Rewards": [ |
| 35 | + manualStep(timestamps.epoch0, epoch, 12, 3_835_616), |
| 36 | + manualStep(timestamps.dip16, epoch, 8, 2_876_712), |
| 37 | + manualStep(timestamps.dip20, epoch, 9, 1_582_192), |
| 38 | + manualCliff(timestamps.epoch30, 1_054_795), |
| 39 | + manualCliff(timestamps.epoch31, 527_398), |
| 40 | + ], // 250,000,000 => reaminder to Rewards Treasury |
| 41 | + "Retroactive Mining Rewards": manualCliff(timestamps.epoch0, 50_309_197), // 75,000,000 => 24,690,803 to community treasury |
| 42 | + "Liquidity Provider Rewards": [ |
| 43 | + manualStep(timestamps.epoch0, epoch, 25, 1_150_685), |
| 44 | + manualStep(timestamps.dip24, epoch, 4, 575_343), |
| 45 | + manualCliff(timestamps.epoch30, 383_562), |
| 46 | + manualCliff(timestamps.epoch31, 191_781), |
| 47 | + ], // 75,000,000 => reaminder to Rewards Treasury |
| 48 | + "Liquidity Staking Pool": manualStep( |
| 49 | + timestamps.epoch0, |
| 50 | + periodToSeconds.weeks(4), |
| 51 | + 13, |
| 52 | + 383_562, |
| 53 | + ), // 25,000,000 => reaminder to Rewards Treasury |
| 54 | + "Safety Staking Pool": manualStep( |
| 55 | + timestamps.epoch0, |
| 56 | + periodToSeconds.weeks(4), |
| 57 | + 17, |
| 58 | + 383_562, |
| 59 | + ), // 25,000,000 => reaminder to Rewards Treasury |
| 60 | + "Past Investors": [ |
| 61 | + manualCliff("2023-12-01", quantities.investors * 0.3), |
14 | 62 | manualStep( |
15 | | - 1704067200, |
| 63 | + "2023-12-01", |
16 | 64 | periodToSeconds.month, |
17 | 65 | 6, |
18 | | - (quantities.futureEmployees * 0.4) / 6, |
| 66 | + (quantities.investors * 0.4) / 6, |
19 | 67 | ), |
20 | 68 | manualStep( |
21 | | - 1719788400, |
| 69 | + "2024-06-01", |
22 | 70 | periodToSeconds.month, |
23 | 71 | 12, |
24 | | - (quantities.futureEmployees * 0.2) / 12, |
| 72 | + (quantities.investors * 0.2) / 12, |
25 | 73 | ), |
26 | 74 | manualStep( |
27 | | - 1751324400, |
| 75 | + "2025-06-01", |
28 | 76 | periodToSeconds.month, |
29 | 77 | 12, |
30 | | - (quantities.futureEmployees * 0.1) / 12, |
| 78 | + (quantities.investors * 0.1) / 12, |
31 | 79 | ), |
32 | 80 | ], |
33 | | - "employees and consultants": [ |
34 | | - // |
35 | | - manualCliff(1701388800, quantities.employees * 0.3), |
| 81 | + "Founders, Employees, Advisors & Consultants": [ |
| 82 | + manualCliff("2023-12-01", quantities.employees * 0.3), |
36 | 83 | manualStep( |
37 | | - 1704067200, |
| 84 | + "2023-12-01", |
38 | 85 | periodToSeconds.month, |
39 | 86 | 6, |
40 | 87 | (quantities.employees * 0.4) / 6, |
41 | 88 | ), |
42 | 89 | manualStep( |
43 | | - 1719788400, |
| 90 | + "2024-06-01", |
44 | 91 | periodToSeconds.month, |
45 | 92 | 12, |
46 | 93 | (quantities.employees * 0.2) / 12, |
47 | 94 | ), |
48 | 95 | manualStep( |
49 | | - 1751324400, |
| 96 | + "2025-06-01", |
50 | 97 | periodToSeconds.month, |
51 | 98 | 12, |
52 | 99 | (quantities.employees * 0.1) / 12, |
53 | 100 | ), |
54 | 101 | ], |
55 | | - investors: [ |
56 | | - // |
57 | | - manualCliff(1701388800, quantities.investors * 0.3), |
| 102 | + "Future Employees & Consultants": [ |
| 103 | + manualCliff("2023-12-01", quantities.futureEmployees * 0.3), |
58 | 104 | manualStep( |
59 | | - 1704067200, |
| 105 | + "2023-12-01", |
60 | 106 | periodToSeconds.month, |
61 | 107 | 6, |
62 | | - (quantities.investors * 0.4) / 6, |
| 108 | + (quantities.futureEmployees * 0.4) / 6, |
63 | 109 | ), |
64 | 110 | manualStep( |
65 | | - 1719788400, |
| 111 | + "2024-06-01", |
66 | 112 | periodToSeconds.month, |
67 | 113 | 12, |
68 | | - (quantities.investors * 0.2) / 12, |
| 114 | + (quantities.futureEmployees * 0.2) / 12, |
69 | 115 | ), |
70 | 116 | manualStep( |
71 | | - 1751324400, |
| 117 | + "2025-06-01", |
72 | 118 | periodToSeconds.month, |
73 | 119 | 12, |
74 | | - (quantities.investors * 0.1) / 12, |
| 120 | + (quantities.futureEmployees * 0.1) / 12, |
75 | 121 | ), |
76 | 122 | ], |
77 | | - "safety module": manualStep( |
78 | | - 1627999200, |
79 | | - 4 * periodToSeconds.week, |
80 | | - 66, |
81 | | - 25000000 / 66, |
82 | | - ), |
83 | | - "liquidity module": manualStep( |
84 | | - 1627999200, |
85 | | - 4 * periodToSeconds.week, |
86 | | - 66, |
87 | | - 25000000 / 66, |
88 | | - ), |
89 | | - "liquidity provider rewards": manualStep( |
90 | | - 1627999200, |
91 | | - 4 * periodToSeconds.week, |
92 | | - 66, |
93 | | - 75000000 / 66, |
94 | | - ), |
95 | | - "trading rewards": manualStep( |
96 | | - 1627999200, |
97 | | - 4 * periodToSeconds.week, |
98 | | - 66, |
99 | | - 250000000 / 66, |
100 | | - ), |
101 | | - "DAO treasury": manualCliff(1627999200, 50000000), |
102 | | - "retroactive mining rewards": manualCliff(1627999200, 75000000), |
103 | 123 | meta: { |
104 | 124 | sources: [ |
105 | | - "https://docs.dydx.community/dydx-governance/start-here/dydx-allocations", |
| 125 | + "https://docs.dydx.community/dydx-unlimited/start-here/dydx-token-allocation", |
106 | 126 | ], |
107 | | - token: "ethereum:0x92d6c1e31e14520e676a687f0a93788b716beff5", |
| 127 | + token: "coingecko:dydx-chain", |
108 | 128 | protocolIds: ["144"], |
| 129 | + total: 1e9, |
109 | 130 | }, |
110 | 131 | categories: { |
111 | 132 | insiders: [ |
112 | | - "future employees & consultants", |
113 | | - "employees and consultants", |
114 | | - "investors", |
| 133 | + "Future Employees & Consultants", |
| 134 | + "Founders, Employees, Advisors & Consultants", |
| 135 | + "Past Investors", |
115 | 136 | ], |
116 | 137 | farming: [ |
117 | | - "safety module", |
118 | | - "liquidity module", |
119 | | - "liquidity provider rewards", |
120 | | - "retroactive mining rewards", |
121 | | - "trading rewards", |
| 138 | + "Safety Staking Pool", |
| 139 | + "Liquidity Staking Pool", |
| 140 | + "Liquidity Provider Rewards", |
| 141 | + "Trading Rewards", |
122 | 142 | ], |
123 | | - noncirculating: ["DAO treasury"], |
| 143 | + airdrop: ["Retroactive Mining Rewards"], |
| 144 | + noncirculating: ["Rewards Treasury", "Community Treasury"], |
124 | 145 | }, |
125 | 146 | }; |
126 | 147 | export default dydx; |
0 commit comments