-
Notifications
You must be signed in to change notification settings - Fork 94
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of https://github.com/DefiLlama/emissions-adapters
- Loading branch information
Showing
5 changed files
with
158 additions
and
46 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
import { manualCliff, manualLinear } from "../adapters/manual"; | ||
import { periodToSeconds } from "../utils/time"; | ||
import type { Protocol } from "../types/adapters"; | ||
|
||
const launch = 1689972929; // 21 July 2023 8:55:29 PM | ||
const vestingStart = 1717200000; // 01 June 2024 00:00:00 AM | ||
const end = vestingStart + periodToSeconds.year * 4; | ||
|
||
const total = 10_000_000; | ||
|
||
const team = total * 0.314; | ||
const airdrop = total * 0.01; | ||
const incident = total * 0.1; | ||
const treasury = total * 0.1; | ||
const investors = total * 0.136; | ||
const community = total * 0.45 - incident - airdrop; | ||
|
||
const exactly: Protocol = { | ||
"DAO Treasury": manualCliff(launch, treasury), | ||
Airdrop: manualLinear(launch, launch + periodToSeconds.month * 4, airdrop), | ||
Community: manualLinear(launch, end, community), | ||
"Incident Compensation": manualLinear(vestingStart, end, incident), | ||
Investors: manualLinear(vestingStart, end, investors), | ||
"Team and Advisors": manualLinear(vestingStart, end, team), | ||
meta: { | ||
token: "optimism:0x1e925De1c68ef83bD98eE3E130eF14a50309C01B", | ||
sources: [ | ||
"https://docs.exact.ly/governance/exactly-token-exa", | ||
"https://x.com/ExactlyProtocol/status/1681380822304149504", | ||
"https://medium.com/@exactly_protocol/the-exa-token-is-here-88a2449c4eb3", | ||
], | ||
protocolIds: ["2385"], | ||
}, | ||
categories: { | ||
airdrop: ["Airdrop"], | ||
insiders: ["Team and Advisors", "Investors"], | ||
noncirculating: ["DAO Treasury"], | ||
farming: ["Community"] | ||
}, | ||
}; | ||
|
||
export default exactly; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
import { Protocol } from "../types/adapters"; | ||
import { manualLinear, manualCliff, manualStep } from "../adapters/manual"; | ||
import { periodToSeconds } from "../utils/time"; | ||
|
||
const totalSupply = 10_000_000_000; // 10 billion | ||
const start = 1708430400; // February 20, 2024 12pm | ||
|
||
|
||
// calculation for Investors and Early Contributors | ||
const combinedAllocationPercentage = 0.3821; // 38.21% | ||
const combinedAllocation = totalSupply * combinedAllocationPercentage; // Combined allocation | ||
|
||
// Initial cliffs | ||
const initialCliffPercentage = 0.131; // 13.1% of combined allocation | ||
const april30CliffPercentage = 0.004; // 0.4% of combined allocation | ||
|
||
const initialCliffAmount = combinedAllocation * initialCliffPercentage; | ||
const april30CliffAmount = combinedAllocation * april30CliffPercentage; | ||
|
||
// Equally distributed cliffs | ||
const eachInitialCliffAmount = initialCliffAmount / 2; | ||
const eachApril30CliffAmount = april30CliffAmount / 2; | ||
|
||
// Calculating remaining allocations after initial cliffs | ||
const remainingAfterCliffs = combinedAllocation - (initialCliffAmount + april30CliffAmount); | ||
const remainingEachAfterCliffs = remainingAfterCliffs / 2; // Divide the remainder equally | ||
|
||
// Corrected Unix timestamps for unlock dates | ||
const unlockDate1 = 1713139200; // April 15, 2024 | ||
const unlockDate2 = 1714435200; // April 30, 2024 | ||
const monthlyReleaseStart = unlockDate2; | ||
|
||
|
||
const starknet: Protocol = { | ||
"Community Provisions": manualCliff(start, totalSupply * 0.09), | ||
"StarkWare": manualLinear(start, start + periodToSeconds.year * 4, totalSupply * 0.1076), | ||
"Grants including DPs": manualLinear(start, start + periodToSeconds.year * 4, totalSupply * 0.1293), | ||
"Community Rebates": manualLinear(start, start + periodToSeconds.year * 4, totalSupply * 0.09), | ||
"Foundation Strategic Reserves": manualLinear(start, start + periodToSeconds.year * 4, totalSupply * 0.1), | ||
"Foundation Treasury": manualLinear(start, start + periodToSeconds.year * 4, totalSupply * 0.081), | ||
"Donations": manualLinear(start, start + periodToSeconds.year * 4, totalSupply * 0.02), | ||
"Early Contributors": [ | ||
manualCliff(unlockDate1, eachInitialCliffAmount), // Half of 13.1% unlocked on April 15, 2024 | ||
manualCliff(unlockDate2, eachApril30CliffAmount), // Half of 0.4% unlocked on April 30, 2024 | ||
manualStep(monthlyReleaseStart, periodToSeconds.month, 31, remainingEachAfterCliffs / 31) // Distribute the remaining allocation | ||
], | ||
"Investors": [ | ||
manualCliff(unlockDate1, eachInitialCliffAmount), // Half of 13.1% unlocked on April 15, 2024 | ||
manualCliff(unlockDate2, eachApril30CliffAmount), // Half of 0.4% unlocked on April 30, 2024 | ||
manualStep(monthlyReleaseStart, periodToSeconds.month, 31, remainingEachAfterCliffs / 31) // Distribute the remaining allocation | ||
], | ||
meta: { | ||
notes: [ | ||
"Distribution based on Starknet Foundation's plan. Details may vary based on governance decisions." | ||
], | ||
sources: [ | ||
"https://docs.starknet.io/documentation/architecture_and_concepts/Economics-of-Starknet/#supply_and_distribution" | ||
], | ||
token: "starknet:0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", // L2 address | ||
protocolIds: [""], | ||
}, | ||
categories: { | ||
insiders: ["Early Contributors", "Investors", "Donations"], | ||
noncirculating: ["Foundation Strategic Reserves", "Foundation Treasury", "StarkWare", "Grants including DPs"], | ||
airdrop: ["Community Provisions"], | ||
liquidity: ["Community Rebates"] | ||
}, | ||
}; | ||
|
||
export default starknet; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters