From e00eac768afbfcfaeeed543c72076f58a96e11b7 Mon Sep 17 00:00:00 2001 From: itofarina Date: Thu, 8 Feb 2024 17:18:41 -0300 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20add=20exactly=20protocol?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- protocols/exactly.ts | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 protocols/exactly.ts diff --git a/protocols/exactly.ts b/protocols/exactly.ts new file mode 100644 index 0000000..a03b2a5 --- /dev/null +++ b/protocols/exactly.ts @@ -0,0 +1,41 @@ +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: ["exactly"], + }, + categories: { + airdrop: ["Airdrop"], + insiders: ["Team and Advisors", "Investors"], + noncirculating: ["DAO Treasury"], + }, +}; + +export default exactly;