@dydxfoundation/governance
Version:
dYdX governance smart contracts
86 lines (85 loc) • 5.38 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getOwedAmount = exports.getStakedAmount = exports.AFFECTED_STAKERS = void 0;
const bignumber_js_1 = __importDefault(require("bignumber.js"));
const COMPENSATION_MULTIPLIER = 1.1;
// Stakers affected by the Safety Module deployment bug outage, and the amount staked.
//
// Updated: September 14, 2021 UTC.
const AFFECTED_STAKERS_MAP = {
'0x8031EEC1118D1321387b1870F32984f72b447b04': '58425529375558185971',
'0x5AcABC3222A7b74884bEC8efe28A7A69A7920818': '502235334874384000815',
'0x5F5A46a8471F60b1E9F2eD0b8fc21Ba8b48887D8': '213706905827699228',
'0x0DB0f4506F5De744052D90f04E3fcA3D1dD3600d': '349630000000000000000',
'0x7457865bA58C4Fe72Fc43Ec8fDF61c818CAA93F4': '1182624973040102547708',
'0x9c4d592042F959254485d443bBc337d29572264F': '3000000000000000000000',
'0x80D0d54050C15971b21e877D95441800f5AA9ee8': '10000000000000000000000',
'0x5B53d310c73Afd70f03b7a373b3e2451983228c1': '1164528384606140345162',
'0x3286188FeA86932334F566E03722EEFd432a0E02': '1197372137531292323207',
'0xE3666187c7Fbd30ea514a00747f27BeF2Df27d69': '1343233161354817657830',
'0xDf6Db53933ebca389eC348fF1959C01364071144': '6450233188624267804428',
'0xd6137678698f5304bEf86262332Be671618d5d08': '6413910000000000000000',
'0xc4a69B137d22b52A36328F3ac6d5Aa9984fAab8E': '4349630000000000000000',
'0x302240E264d6CA3d83E7567f8A9150AacaB735bc': '5158542293907783585588',
'0x429f13e4ec5E57c9AE2388c5020E372F73fe168A': '1169425991608635924407',
'0xe70949032907349A132E6793140679b43072F1E6': '1562037376362245945783',
'0x57e2D81A82ACCCfaD9133929805CFf7f6dFc3bF4': '164762442858690885169',
'0xC1AB8632e3f7fF2b62BcFC5c5DEba3aAA21799c9': '2150000000000000000000',
'0x4F56A59804D464f44A3efc336FDf18A442fA8a72': '1163510000000000000000',
'0x8C5bA8D0017C92527Daa77b145919A77614dfd9e': '1165009001299474985561',
'0x7baf9864ecb3cEc21523508C86a1a3EFcE2408be': '311216401646708643788',
'0x88cE8A4b8896Fab3556Cf23308F3387C55b0d0B7': '4350619625342895595793',
'0xaCe95175B107f0d6A7A2949F7Af83d7A3528fB4e': '1180417186967154527414',
'0x2e10104bD7B3e7C659f6F802166Be3FCdCd0C097': '804632308966647736886',
'0x190fdb62971A2B0Ec9f037D4a0DaC1B062CCeaBD': '4103167722129237168',
'0x0485A925b92F64D195B5f65D0B4C3B72004e98A4': '3739160000000000000000',
'0x1b90B46F9Bd6BDcF0adDc4D0601dFAD832FDB1bD': '1000000000000000000000',
'0x4CAe5BED586f6E73Ae54EbD40A4AC4eD2c477C34': '5000000000000000000000',
'0x2245bE89Fc8faB94ed982e859Aa3212A4e4eB7e5': '1166233301671169050057',
'0x0Dd6a8de365b2800F828E95feEf637027ceBfDc6': '535053615610070959943',
'0xFF3f61fC642612D7799535132f5B7c5C0855d428': '1302831257662428781641',
'0xb97d9350F32C1366016e2C0a55E4A210D1158b22': '500000000000000000000',
'0xE629E1F7d250d39AF4d704B486B094A4bA91Ef3b': '1170182764701881058525',
'0xaEaB8114f8920A0522F422618c5b9a2c618527c3': '16214256886580559204245',
'0x0772C1EfC61Ff9cC902730d92B90403792edFC31': '9809371792403472976101',
'0x961f4A36510cbB4ee58EE8FEaf65DC7E36A8e892': '500000000000000000000',
'0x0F70c8C6236F4335B791637B8603F711F9829a27': '9642810116648550758852',
'0x54276623b82377Ff9cD0a2a9CCB3e5b7430dDc66': '311458148473422885245',
'0xb92667E34cB6753449ADF464f18ce1833Caf26e0': '3158560708888948970245',
'0x89Cffe1B398FBF0Eb64BE9C08ebcE777Cec47500': '6414332496408046861063',
'0x431c7CA252ba1c41ac11E67b2593e930608A60ed': '666000000000000000000',
'0x34Fa1d4cc23735f72e38A44C6bEb4bf066862720': '1163510000000000000000',
'0x5ef5a01b069dDf4B71d1fe8C1b23064Ffc3Cda92': '3000000000000000000000',
'0xFd920E06Db76196987d94f2904D9467B9BE01ccd': '1171397317652389875311',
'0xbc113aC29567eE89363E4d07462823F60b8B5528': '2400000000000000000000',
'0xD70A24Be28cFAe9Dba87e7eB580B53Cc8Ae4Fe58': '311394342239367458844',
'0x3B7b41F27b89F07269A0599F15fBa723f21f2442': '497163570144239229712',
'0x9cd4b3F7f05240B5e07F0512ED7976ad4de81467': '3467379013382989178719',
'0x19B003465B3b310463f8b925663F746a67c0DB95': '1163589955498231299880',
'0x482AbC7795CcfB657DD09c9F0b67312F4ECCFD07': '3386175956254526296628',
'0xcD1d9B792B3F8e19E742DC4f49a24e5637D72786': '9531044442469174544837',
'0x51447CE0A502366658168Bf5AAf96f51d22AdcEE': '1166299019058470662540',
'0xE3939654Deae5f54fD3e6B84b3A7F75f245062d8': '10026971594864629449009',
'0x6649371d9236eCcDD7aF96fBA9435D78502354C1': '1197356211166858957549',
'0x405B0C43d66D3406FaB0abc0eCee2359CeCe1c4B': '650029660563545956788',
'0xE8b67eBf4825FEC2AB6c010A01064f5fa54672a5': '2000000000000000000000',
};
exports.AFFECTED_STAKERS = Object.keys(AFFECTED_STAKERS_MAP);
function getStakedAmount(staker) {
const amount = AFFECTED_STAKERS_MAP[staker];
if (!amount) {
throw new Error(`Not an affected staker: ${staker}`);
}
return amount;
}
exports.getStakedAmount = getStakedAmount;
function getOwedAmount(staker) {
// Add 10% compensation, rounded down per staker.
return new bignumber_js_1.default(getStakedAmount(staker))
.times(COMPENSATION_MULTIPLIER)
.toFixed(0, bignumber_js_1.default.ROUND_FLOOR);
}
exports.getOwedAmount = getOwedAmount;