From 7a5730761ccf68e0e079ad5eebacecb9dc4252a4 Mon Sep 17 00:00:00 2001 From: therealemjy Date: Tue, 10 Sep 2024 14:59:33 +0200 Subject: [PATCH] feat: fetch remote proposals --- .vscode/settings.json | 5 + apps/evm/package.json | 4 +- apps/evm/src/__mocks__/models/proposals.ts | 46 +- ...proposalCommands.ts => remoteProposals.ts} | 103 +- .../src/__mocks__/subgraph/bscProposals.json | 1248 ++++++++ .../__mocks__/subgraph/nonBscProposals.json | 118 + .../evm/src/__mocks__/subgraph/proposals.json | 2805 ----------------- apps/evm/src/clients/api/__mocks__/index.ts | 2 +- .../clients/api/mutations/vote/useCastVote.ts | 22 +- .../mutations/vote/useCastVoteWithReason.ts | 10 +- .../__snapshots__/index.spec.ts.snap | 199 +- .../getProposal/__tests__/index.spec.ts | 2 - .../clients/api/queries/getProposal/index.ts | 17 +- .../__snapshots__/index.spec.ts.snap | 158 +- .../__tests__/index.spec.ts | 2 +- .../api/queries/getProposal/useGetProposal.ts | 38 +- .../__snapshots__/index.spec.ts.snap | 2486 +++++++-------- .../getProposals/__tests__/index.spec.ts | 2 - .../clients/api/queries/getProposals/index.ts | 30 +- .../queries/getProposals/useGetProposals.ts | 32 +- .../__snapshots__/index.spec.ts.snap | 12 + .../getVoterHistory/formatToProposal.ts | 1 + .../src/clients/subgraph/__mocks__/index.ts | 11 +- apps/evm/src/clients/subgraph/index.ts | 2 + .../{proposal.graphql => bscProposal.graphql} | 38 +- .../getBscProposal/getBscProposal.graphql | 2 +- .../getBscProposals/getBscProposals.graphql | 2 +- .../fragments/nonBscProposal.graphql | 20 + .../getNonBscProposals.graphql | 5 + .../getNonBscProposals/index.ts | 22 + .../__snapshots__/index.spec.ts.snap | 146 + .../__tests__/index.spec.ts | 12 + .../utilities/enrichRemoteProposals/index.ts | 58 + .../__snapshots__/index.spec.ts.snap | 203 +- .../formatToProposal/__tests__/index.spec.ts | 8 +- .../__snapshots__/index.spec.ts.snap | 129 + .../__tests__/index.spec.ts | 108 + .../__tests__/index.spec.ts | 127 + .../getRemoteProposalState/index.ts | 55 + .../formatToRemoteProposal/index.ts | 114 + .../utilities/formatToProposal/index.ts | 155 +- apps/evm/src/config/codegen.ts | 6 +- apps/evm/src/constants/chainMetadata.ts | 9 +- .../src/hooks/useIsFeatureEnabled/index.tsx | 3 + .../libs/translations/translations/en.json | 14 +- .../ProposalList/GovernanceProposal/index.tsx | 9 +- .../pages/Governance/__tests__/index.spec.tsx | 2 +- .../Proposal/Commands/Command/Cta/index.tsx | 48 +- .../Commands/Command/StepInfo/index.tsx | 101 +- .../pages/Proposal/Commands/Command/index.tsx | 87 +- .../Proposal/Commands/Command/useCommand.tsx | 24 +- .../Proposal/Commands/Progress/index.tsx | 2 +- .../__snapshots__/index.spec.tsx.snap | 10 +- .../Commands/__tests__/index.spec.tsx | 40 +- .../evm/src/pages/Proposal/Commands/index.tsx | 30 +- .../ProposalSummary/Stepper/index.tsx | 5 +- .../pages/Proposal/ProposalSummary/index.tsx | 17 +- .../index.multichainGovernance.spec.tsx | 2 +- .../pages/Proposal/__tests__/index.spec.tsx | 2 +- apps/evm/src/pages/Proposal/index.tsx | 7 +- apps/evm/src/types/index.ts | 59 +- .../getProposalState/__tests__/index.spec.ts | 4 +- .../src/utilities/getProposalState/index.ts | 16 +- 63 files changed, 4152 insertions(+), 4904 deletions(-) create mode 100644 .vscode/settings.json rename apps/evm/src/__mocks__/models/{proposalCommands.ts => remoteProposals.ts} (59%) create mode 100644 apps/evm/src/__mocks__/subgraph/bscProposals.json create mode 100644 apps/evm/src/__mocks__/subgraph/nonBscProposals.json delete mode 100644 apps/evm/src/__mocks__/subgraph/proposals.json rename apps/evm/src/clients/subgraph/queries/governanceBsc/fragments/{proposal.graphql => bscProposal.graphql} (58%) create mode 100644 apps/evm/src/clients/subgraph/queries/governanceNonBsc/fragments/nonBscProposal.graphql create mode 100644 apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/getNonBscProposals.graphql create mode 100644 apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/index.ts create mode 100644 apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/__snapshots__/index.spec.ts.snap create mode 100644 apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/index.spec.ts create mode 100644 apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/index.ts create mode 100644 apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/__snapshots__/index.spec.ts.snap create mode 100644 apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/index.spec.ts create mode 100644 apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/__tests__/index.spec.ts create mode 100644 apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/index.ts create mode 100644 apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/index.ts diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000000..ff4133d798 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "editor.codeActionsOnSave": { + "source.organizeImports.biome": "explicit" + } +} diff --git a/apps/evm/package.json b/apps/evm/package.json index 6e1f6ecd3b..c8bf821f40 100644 --- a/apps/evm/package.json +++ b/apps/evm/package.json @@ -18,8 +18,8 @@ "extract-translations": "yarn i18next", "generate-subgraph-types:isolated-pools": "yarn graphql-codegen --config src/config/codegen.ts --project isolatedPools", "generate-subgraph-types:governance-bsc": "yarn graphql-codegen --config src/config/codegen.ts --project governanceBsc", - "generate-subgraph-types:governance-remote-chains": "yarn graphql-codegen --config src/config/codegen.ts --project governanceRemoteChains", - "generate-subgraph-types": "npm-run-all --parallel generate-subgraph-types:isolated-pools generate-subgraph-types:governance-bsc", + "generate-subgraph-types:governance-non-bsc": "yarn graphql-codegen --config src/config/codegen.ts --project governanceNonBsc", + "generate-subgraph-types": "npm-run-all --parallel generate-subgraph-types:isolated-pools generate-subgraph-types:governance-bsc generate-subgraph-types:governance-non-bsc", "generate-contracts": "rimraf src/libs/contracts/generated/getters && rimraf src/libs/contracts/generated/infos && src/libs/contracts/scripts/generateContractRecords/index.ts && yarn biome format --vcs-use-ignore-file=false --write src/libs/contracts/generated", "generate-pancake-swap-tokens": "src/libs/tokens/scripts/generatePancakeSwapTokenRecords/index.ts && yarn biome format --vcs-use-ignore-file=false --write src/libs/tokens/generated/pancakeSwapTokens/bscMainnet.ts", "generate-token-accent-colors": "src/libs/tokens/scripts/generateTokenAccentColors/index.ts && yarn biome format --vcs-use-ignore-file=false --write src/libs/tokens/generated/tokenAccentColors.ts", diff --git a/apps/evm/src/__mocks__/models/proposals.ts b/apps/evm/src/__mocks__/models/proposals.ts index 525315e50c..2d63756f47 100644 --- a/apps/evm/src/__mocks__/models/proposals.ts +++ b/apps/evm/src/__mocks__/models/proposals.ts @@ -1,6 +1,8 @@ import BigNumber from 'bignumber.js'; +import type { Proposal } from 'types'; +import { remoteProposals } from './remoteProposals'; -const proposals = [ +export const proposals: Proposal[] = [ { abstainedVotesMantissa: new BigNumber('0'), againstVotesMantissa: new BigNumber('0'), @@ -10,12 +12,6 @@ const proposals = [ title: 'VIP Comptroller Diamond proxy', description: 'This vip implement diamond proxy for the comptroller to divide the comptroller logic into facets. The current implementation of the comptroller is exceeding the max limit of the contract size. To resolve this diamond proxy is implemented.', - forDescription: - 'I agree that Venus Protocol should proceed with the upgrading the Comptroller contract with diamond proxy', - againstDescription: - 'I do not think that Venus Protocol should proceed with the Comptroller contract upgradation', - abstainDescription: - 'I am indifferent to whether Venus Protocol proceeds with the Comptroller upgradation or not', }, endBlock: 33499859, endDate: new Date('2023-09-20T07:54:35.000Z'), @@ -32,8 +28,6 @@ const proposals = [ proposalId: 98, address: '0x2ce1d0ffd7e869d9df33e28552b12ddded326706', support: 1, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('605461000000000000000000'), reason: '', }, @@ -41,6 +35,7 @@ const proposals = [ againstVotes: [], abstainVotes: [], proposalType: 0, + remoteProposals, }, { abstainedVotesMantissa: new BigNumber('500000000000000000000000'), @@ -51,12 +46,6 @@ const proposals = [ title: 'VIP Comptroller Diamond proxy', description: 'This vip implement diamond proxy for the comptroller to divide the comptroller logic into facets. The current implementation of the comptroller is exceeding the max limit of the contract size. To resolve this diamond proxy is implemented.', - forDescription: - 'I agree that Venus Protocol should proceed with the upgrading the Comptroller contract with diamond proxy', - againstDescription: - 'I do not think that Venus Protocol should proceed with the Comptroller contract upgradation', - abstainDescription: - 'I am indifferent to whether Venus Protocol proceeds with the Comptroller upgradation or not', }, endBlock: 33499859, endDate: new Date('2023-09-20T07:54:35.000Z'), @@ -73,8 +62,6 @@ const proposals = [ proposalId: 97, address: '0xc444949e0054a23c44fc45789738bdf64aed2391', support: 1, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('605461000000000000000000'), reason: 'yes', }, @@ -84,8 +71,6 @@ const proposals = [ proposalId: 97, address: '0x60277add339d936c4ab907376afee4f7ac17d760', support: 0, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('500000000000000000000000'), reason: 'no', }, @@ -95,13 +80,12 @@ const proposals = [ proposalId: 97, address: '0xb98fa0292e2927018c03ad5110673b7daa1424a7', support: 2, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('500000000000000000000000'), reason: 'abstain', }, ], proposalType: 0, + remoteProposals, }, { abstainedVotesMantissa: new BigNumber('0'), @@ -113,12 +97,6 @@ const proposals = [ title: 'VIP Comptroller Diamond proxy', description: 'This vip implement diamond proxy for the comptroller to divide the comptroller logic into facets. The current implementation of the comptroller is exceeding the max limit of the contract size. To resolve this diamond proxy is implemented.', - forDescription: - 'I agree that Venus Protocol should proceed with the upgrading the Comptroller contract with diamond proxy', - againstDescription: - 'I do not think that Venus Protocol should proceed with the Comptroller contract upgradation', - abstainDescription: - 'I am indifferent to whether Venus Protocol proceeds with the Comptroller upgradation or not', }, endBlock: 33446667, endDate: new Date('2023-09-18T11:34:41.000Z'), @@ -139,8 +117,6 @@ const proposals = [ proposalId: 96, address: '0x2ce1d0ffd7e869d9df33e28552b12ddded326706', support: 1, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('605461000000000000000000'), reason: '', }, @@ -148,6 +124,7 @@ const proposals = [ againstVotes: [], abstainVotes: [], proposalType: 0, + remoteProposals, }, { abstainedVotesMantissa: new BigNumber('0'), @@ -176,8 +153,6 @@ const proposals = [ proposalId: 95, address: '0x2ce1d0ffd7e869d9df33e28552b12ddded326706', support: 1, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('605461000000000000000000'), reason: '', }, @@ -185,6 +160,7 @@ const proposals = [ againstVotes: [], abstainVotes: [], proposalType: 0, + remoteProposals, }, { abstainedVotesMantissa: new BigNumber('0'), @@ -213,8 +189,6 @@ const proposals = [ proposalId: 94, address: '0x2ce1d0ffd7e869d9df33e28552b12ddded326706', support: 1, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('605461000000000000000000'), reason: '', }, @@ -222,6 +196,7 @@ const proposals = [ againstVotes: [], abstainVotes: [], proposalType: 0, + remoteProposals, }, { abstainedVotesMantissa: new BigNumber('0'), @@ -250,8 +225,6 @@ const proposals = [ proposalId: 93, address: '0x2ce1d0ffd7e869d9df33e28552b12ddded326706', support: 1, - blockNumber: 33335869, - blockTimestamp: new Date('1970-01-20T14:45:04.478Z'), votesMantissa: new BigNumber('605461000000000000000000'), reason: '', }, @@ -259,7 +232,6 @@ const proposals = [ againstVotes: [], abstainVotes: [], proposalType: 0, + remoteProposals, }, ]; - -export default proposals; diff --git a/apps/evm/src/__mocks__/models/proposalCommands.ts b/apps/evm/src/__mocks__/models/remoteProposals.ts similarity index 59% rename from apps/evm/src/__mocks__/models/proposalCommands.ts rename to apps/evm/src/__mocks__/models/remoteProposals.ts index 7acd9b6e43..9ad308f48c 100644 --- a/apps/evm/src/__mocks__/models/proposalCommands.ts +++ b/apps/evm/src/__mocks__/models/remoteProposals.ts @@ -1,17 +1,18 @@ -import { ChainId, type ProposalCommand, ProposalCommandState } from 'types'; +import { ChainId, type RemoteProposal, RemoteProposalState } from 'types'; const fakePastDate = new Date(2023, 1, 1); const fakeFutureDate = new Date(2089, 1, 1); -export const commands: ProposalCommand[] = [ +export const remoteProposals: RemoteProposal[] = [ { + proposalId: 1, + remoteProposalId: 1, chainId: ChainId.BSC_TESTNET, - state: ProposalCommandState.Executed, - bridgedAt: fakePastDate, - queuedAt: fakePastDate, - succeededAt: fakePastDate, - executedAt: fakePastDate, - actionSignatures: [ + state: RemoteProposalState.Executed, + bridgedDate: fakePastDate, + queuedDate: fakePastDate, + executedDate: fakePastDate, + proposalActions: [ { actionIndex: 0, target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', @@ -29,11 +30,13 @@ export const commands: ProposalCommand[] = [ ], }, { + proposalId: 2, + remoteProposalId: 2, chainId: ChainId.OPBNB_TESTNET, - state: ProposalCommandState.Bridged, - bridgedAt: fakePastDate, - queuedAt: fakePastDate, - actionSignatures: [ + state: RemoteProposalState.Bridged, + bridgedDate: fakePastDate, + queuedDate: fakePastDate, + proposalActions: [ { actionIndex: 0, target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', @@ -51,12 +54,14 @@ export const commands: ProposalCommand[] = [ ], }, { + proposalId: 3, + remoteProposalId: 3, chainId: ChainId.SEPOLIA, - state: ProposalCommandState.Queued, - bridgedAt: fakePastDate, - queuedAt: fakePastDate, - executableAt: fakeFutureDate, - actionSignatures: [ + state: RemoteProposalState.Queued, + bridgedDate: fakePastDate, + queuedDate: fakePastDate, + executionEtaDate: fakeFutureDate, + proposalActions: [ { actionIndex: 0, target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', @@ -74,36 +79,14 @@ export const commands: ProposalCommand[] = [ ], }, { + proposalId: 4, + remoteProposalId: 4, chainId: ChainId.SEPOLIA, - state: ProposalCommandState.Queued, - bridgedAt: fakePastDate, - queuedAt: fakePastDate, - executableAt: fakePastDate, - actionSignatures: [ - { - actionIndex: 0, - target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', - signature: 'test()', - value: '', - callData: '0x', - }, - { - actionIndex: 0, - target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', - signature: 'test()', - value: '', - callData: '0x', - }, - ], - }, - { - chainId: ChainId.OPBNB_TESTNET, - state: ProposalCommandState.Queued, - bridgedAt: fakePastDate, - queuedAt: fakePastDate, - executableAt: fakePastDate, - failedExecutionAt: fakeFutureDate, - actionSignatures: [ + state: RemoteProposalState.Queued, + bridgedDate: fakePastDate, + queuedDate: fakePastDate, + executionEtaDate: fakePastDate, + proposalActions: [ { actionIndex: 0, target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', @@ -121,13 +104,15 @@ export const commands: ProposalCommand[] = [ ], }, { + proposalId: 6, + remoteProposalId: 6, chainId: ChainId.ARBITRUM_SEPOLIA, - state: ProposalCommandState.Canceled, - bridgedAt: fakePastDate, - queuedAt: fakePastDate, - executableAt: fakePastDate, - canceledAt: fakePastDate, - actionSignatures: [ + state: RemoteProposalState.Canceled, + bridgedDate: fakePastDate, + queuedDate: fakePastDate, + executionEtaDate: fakePastDate, + canceledDate: fakePastDate, + proposalActions: [ { actionIndex: 0, target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', @@ -145,13 +130,15 @@ export const commands: ProposalCommand[] = [ ], }, { + proposalId: 7, + remoteProposalId: 7, chainId: ChainId.ARBITRUM_SEPOLIA, - state: ProposalCommandState.Executed, - bridgedAt: fakePastDate, - queuedAt: fakePastDate, - executableAt: fakePastDate, - executedAt: fakePastDate, - actionSignatures: [ + state: RemoteProposalState.Executed, + bridgedDate: fakePastDate, + queuedDate: fakePastDate, + executionEtaDate: fakePastDate, + executedDate: fakePastDate, + proposalActions: [ { actionIndex: 0, target: '0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706', diff --git a/apps/evm/src/__mocks__/subgraph/bscProposals.json b/apps/evm/src/__mocks__/subgraph/bscProposals.json new file mode 100644 index 0000000000..b041cfc427 --- /dev/null +++ b/apps/evm/src/__mocks__/subgraph/bscProposals.json @@ -0,0 +1,1248 @@ +{ + "proposals": [ + { + "id": "436", + "proposalId": "436", + "startBlock": "44354546", + "endBlock": "44354696", + "forVotes": "0", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": null, + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"Test VIP\",\"description\":\"#### Description\\n Mint faucet on all network\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": false, + "targets": [ + "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899" + ], + "values": ["0", "0", "0", "0"], + "signatures": [ + "allocateTo(address,uint256)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)" + ], + "calldatas": [ + "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027da000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0xcfafe0fcb0ed8ba08a454be1c05d0883287b76457cf0fae93d07f0131d565e49", + "timestamp": "1727783895", + "txHash": "0xcfafe0fcb0ed8ba08a454be1c05d0883287b76457cf0fae93d07f0131d565e49" + }, + "executed": null, + "canceled": null, + "queued": null, + "votes": [], + "remoteProposals": [ + { + "id": "0xb1270000b401", + "proposalId": null, + "targets": ["0xf3118a17863996b9f2a073c9a66faaa664355cf8"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xb1270000", + "layerZeroChainId": 10161 + }, + "stateTransactions": null + }, + { + "id": "0xda270000b401", + "proposalId": null, + "targets": ["0x8ac9b3801d0a8f5055428ae0bf301ca1da976855"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xda270000", + "layerZeroChainId": 10202 + }, + "stateTransactions": null + }, + { + "id": "0xf7270000b401", + "proposalId": null, + "targets": ["0x772d68929655ce7234c8c94256526dda66ef641e"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xf7270000", + "layerZeroChainId": 10231 + }, + "stateTransactions": null + } + ] + }, + { + "id": "435", + "proposalId": "435", + "startBlock": "44349973", + "endBlock": "44350123", + "forVotes": "0", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": null, + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"Test VIP\",\"description\":\"#### Description\\n Mint faucet on all network\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": false, + "targets": [ + "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899" + ], + "values": ["0", "0", "0", "0"], + "signatures": [ + "allocateTo(address,uint256)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)" + ], + "calldatas": [ + "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027da000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0x62639208b514e81708fcc30c7ce276c2f7f3b12ba5252102cda3604db967fbc3", + "timestamp": "1727770176", + "txHash": "0x62639208b514e81708fcc30c7ce276c2f7f3b12ba5252102cda3604db967fbc3" + }, + "executed": null, + "canceled": null, + "queued": null, + "votes": [], + "remoteProposals": [ + { + "id": "0xb1270000b301", + "proposalId": null, + "targets": ["0xf3118a17863996b9f2a073c9a66faaa664355cf8"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xb1270000", + "layerZeroChainId": 10161 + }, + "stateTransactions": null + }, + { + "id": "0xda270000b301", + "proposalId": null, + "targets": ["0x8ac9b3801d0a8f5055428ae0bf301ca1da976855"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xda270000", + "layerZeroChainId": 10202 + }, + "stateTransactions": null + }, + { + "id": "0xf7270000b301", + "proposalId": null, + "targets": ["0x772d68929655ce7234c8c94256526dda66ef641e"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xf7270000", + "layerZeroChainId": 10231 + }, + "stateTransactions": null + } + ] + }, + { + "id": "434", + "proposalId": "434", + "startBlock": "44185124", + "endBlock": "44185274", + "forVotes": "0", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": null, + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"Test VIP\",\"description\":\"#### Description\\n Mint faucet on all network\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": false, + "targets": [ + "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899" + ], + "values": ["0", "0", "0", "0"], + "signatures": [ + "allocateTo(address,uint256)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)" + ], + "calldatas": [ + "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000" + ], + "proposer": { + "id": "0x6eace20e1f89d0b24e5b295af1802dfbc730b37d" + }, + "created": { + "id": "0x2794dce9d7a02e9a8d699bf23d236955d8cf2115fced7befa2a5ffd38ea708c5", + "timestamp": "1727275609", + "txHash": "0x2794dce9d7a02e9a8d699bf23d236955d8cf2115fced7befa2a5ffd38ea708c5" + }, + "executed": null, + "canceled": null, + "queued": null, + "votes": [], + "remoteProposals": [ + { + "id": "0x76270000b201", + "proposalId": null, + "targets": ["0x8ac9b3801d0a8f5055428ae0bf301ca1da976855"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0x76270000", + "layerZeroChainId": 10102 + }, + "stateTransactions": null + }, + { + "id": "0xb1270000b201", + "proposalId": null, + "targets": ["0x772d68929655ce7234c8c94256526dda66ef641e"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xb1270000", + "layerZeroChainId": 10161 + }, + "stateTransactions": null + }, + { + "id": "0xf7270000b201", + "proposalId": null, + "targets": ["0xf3118a17863996b9f2a073c9a66faaa664355cf8"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xf7270000", + "layerZeroChainId": 10231 + }, + "stateTransactions": null + } + ] + }, + { + "id": "433", + "proposalId": "433", + "startBlock": "44120559", + "endBlock": "44120709", + "forVotes": "605372000000000000000000", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": "1727083465", + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"VIP to transfer XVS to destination chain\",\"description\":\"\",\"forDescription\":\"I agree that Venus Protocol should proceed with this transfer for XVS\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this transfer for XVS\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds with this transfer for XVS\"}", + "passing": true, + "targets": [ + "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", + "0xb9e0e753630434d7863528cc73cb7ac638a7c8ff", + "0xb9e0e753630434d7863528cc73cb7ac638a7c8ff", + "0x0e132cd94fd70298b747d2b4d977db8d086e5fd0" + ], + "values": ["0", "0", "0", "300000000000000000"], + "signatures": [ + "withdrawTreasuryBEP20(address,uint256,address)", + "approve(address,uint256)", + "approve(address,uint256)", + "sendFrom(address,uint16,bytes32,uint256,(address,address,bytes))" + ], + "calldatas": [ + "0x000000000000000000000000b9e0e753630434d7863528cc73cb7ac638a7c8ff0000000000000000000000000000000000000000000001d234f9a33f47600000000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", + "0x0000000000000000000000000e132cd94fd70298b747d2b4d977db8d086e5fd00000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000e132cd94fd70298b747d2b4d977db8d086e5fd00000000000000000000000000000000000000000000001d234f9a33f47600000", + "0x000000000000000000000000ce10739590001705f7ff231611ba4a48b282032700000000000000000000000000000000000000000000000000000000000027f80000000000000000000000005a1a12f47fa7007c9e23cf5e025f3f5d3ac7d7550000000000000000000000000000000000000000000001d234f9a33f4760000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000022000100000000000000000000000000000000000000000000000000000000000493e0000000000000000000000000000000000000000000000000000000000000" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0x545f1fd62d776be9ec70d3be21cca9efbc9e3aa0732f83edd43a195bbcf58f06", + "timestamp": "1727081893", + "txHash": "0x545f1fd62d776be9ec70d3be21cca9efbc9e3aa0732f83edd43a195bbcf58f06" + }, + "executed": { + "id": "0x66b889b40b51592cdd89068f16cb84802f5f6e3f88b71823f363b092d7948dbd", + "timestamp": "1727084902", + "txHash": "0x66b889b40b51592cdd89068f16cb84802f5f6e3f88b71823f363b092d7948dbd" + }, + "canceled": null, + "queued": { + "id": "0x1ccf90c821744d2c5fc5956078ab8834fa65d515e63024169378933b14d24589", + "timestamp": "1727082865", + "txHash": "0x1ccf90c821744d2c5fc5956078ab8834fa65d515e63024169378933b14d24589" + }, + "votes": [ + { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706b1010000", + "support": "FOR", + "votes": "605372000000000000000000", + "reason": null, + "voter": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "totalVotesMantissa": "605372000000000000000000" + } + } + ], + "remoteProposals": [] + }, + { + "id": "432", + "proposalId": "432", + "startBlock": "43925621", + "endBlock": "43925771", + "forVotes": "605372000000000000000000", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": "1726498583", + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"VIP-364 Enable BSC -> OP sepolia bridge\",\"description\":\"#### Summary Enable BSC -> ZKSYNC bridge\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": true, + "targets": [ + "0xb164cb262328ca44a806ba9e3d4094931e658513", + "0xb164cb262328ca44a806ba9e3d4094931e658513", + "0xb164cb262328ca44a806ba9e3d4094931e658513", + "0xb164cb262328ca44a806ba9e3d4094931e658513", + "0xb164cb262328ca44a806ba9e3d4094931e658513", + "0xb164cb262328ca44a806ba9e3d4094931e658513" + ], + "values": ["0", "0", "0", "0", "0", "0"], + "signatures": [ + "setTrustedRemoteAddress(uint16,bytes)", + "setMinDstGas(uint16,uint16,uint256)", + "setMaxDailyLimit(uint16,uint256)", + "setMaxSingleTransactionLimit(uint16,uint256)", + "setMaxDailyReceiveLimit(uint16,uint256)", + "setMaxSingleReceiveTransactionLimit(uint16,uint256)" + ], + "calldatas": [ + "0x00000000000000000000000000000000000000000000000000000000000027f80000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000001479a36dc9a43d05db4747c59c02f48ed500e47df1000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000493e0", + "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000a968163f0a57b400000", + "0x00000000000000000000000000000000000000000000000000000000000027f800000000000000000000000000000000000000000000021e19e0c9bab2400000", + "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000accb72d9e6b59e00000", + "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000228f16f861578600000" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0x4f678cd8de8fea701249b349a1b9102a5350ccd123e43e58eaa4a90e91df804a", + "timestamp": "1726497038", + "txHash": "0x4f678cd8de8fea701249b349a1b9102a5350ccd123e43e58eaa4a90e91df804a" + }, + "executed": { + "id": "0x9006192b5241d82fb2d158569c6c18832dfa78272cabcfaa05b0d447889fb95f", + "timestamp": "1726573269", + "txHash": "0x9006192b5241d82fb2d158569c6c18832dfa78272cabcfaa05b0d447889fb95f" + }, + "canceled": null, + "queued": { + "id": "0x06f257826417ddbb351d3bd2ff0f9c50a4bff757627e7ea6df140a65744a6fc9", + "timestamp": "1726497983", + "txHash": "0x06f257826417ddbb351d3bd2ff0f9c50a4bff757627e7ea6df140a65744a6fc9" + }, + "votes": [ + { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706b0010000", + "support": "FOR", + "votes": "605372000000000000000000", + "reason": null, + "voter": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "totalVotesMantissa": "605372000000000000000000" + } + } + ], + "remoteProposals": [] + }, + { + "id": "431", + "proposalId": "431", + "startBlock": "43806493", + "endBlock": "43806643", + "forVotes": "0", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": null, + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"Test VIP\",\"description\":\"#### Description\\n Mint faucet on all network\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": false, + "targets": [ + "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899" + ], + "values": ["0", "0", "0", "0"], + "signatures": [ + "allocateTo(address,uint256)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)" + ], + "calldatas": [ + "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0xf14e6e818dceaa2b107bbd4d8ab868e7512fa16d03fabf6dc4e00d241a3b78fc", + "timestamp": "1726139648", + "txHash": "0xf14e6e818dceaa2b107bbd4d8ab868e7512fa16d03fabf6dc4e00d241a3b78fc" + }, + "executed": null, + "canceled": null, + "queued": null, + "votes": [], + "remoteProposals": [ + { + "id": "0x76270000af01", + "proposalId": null, + "targets": ["0x8ac9b3801d0a8f5055428ae0bf301ca1da976855"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0x76270000", + "layerZeroChainId": 10102 + }, + "stateTransactions": null + }, + { + "id": "0xb1270000af01", + "proposalId": null, + "targets": ["0x772d68929655ce7234c8c94256526dda66ef641e"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xb1270000", + "layerZeroChainId": 10161 + }, + "stateTransactions": null + }, + { + "id": "0xf7270000af01", + "proposalId": null, + "targets": ["0xf3118a17863996b9f2a073c9a66faaa664355cf8"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xf7270000", + "layerZeroChainId": 10231 + }, + "stateTransactions": null + } + ] + }, + { + "id": "430", + "proposalId": "430", + "startBlock": "43792731", + "endBlock": "43792881", + "forVotes": "605372000000000000000000", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": "1726100368", + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"LST ETH pool on BNB chain\",\"description\":\"https://github.com/VenusProtocol/vips/pull/373\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": true, + "targets": [ + "0xcea29f1266e880a1482c06ed656cd08c148baa32", + "0x0af51d1504ac5b711a9eafe2fac11a51d32029ad", + "0x2842140e4ad3a92e9af30e27e290300dd785076d", + "0xcea29f1266e880a1482c06ed656cd08c148baa32", + "0x0af51d1504ac5b711a9eafe2fac11a51d32029ad", + "0x2842140e4ad3a92e9af30e27e290300dd785076d", + "0x3cd69251d04a28d887ac14cbe2e14c52f3d57823", + "0x3cd69251d04a28d887ac14cbe2e14c52f3d57823", + "0x4a73ebd3dca511cf3574768bd6184747342c23f2", + "0xc7859b809ed5a2e98659ab5427d5b69e706ae26b", + "0xc7859b809ed5a2e98659ab5427d5b69e706ae26b", + "0xc85491616fa949e048f3aac39fbf5b0703800667", + "0xc7859b809ed5a2e98659ab5427d5b69e706ae26b", + "0x16eb5ce6d186b49709dd588518cd545985096ff5", + "0x16eb5ce6d186b49709dd588518cd545985096ff5", + "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", + "0x4349016259fcd8ee452f696b2a7beee31667d129", + "0xc85491616fa949e048f3aac39fbf5b0703800667", + "0x4349016259fcd8ee452f696b2a7beee31667d129", + "0x16eb5ce6d186b49709dd588518cd545985096ff5", + "0x4bd7efb423f06fa033404fbd0935a2097918084d", + "0x4bd7efb423f06fa033404fbd0935a2097918084d", + "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", + "0x7df9372096c8ca2401f30b3df931beff493f1fdc", + "0xc85491616fa949e048f3aac39fbf5b0703800667", + "0x7df9372096c8ca2401f30b3df931beff493f1fdc", + "0x4bd7efb423f06fa033404fbd0935a2097918084d", + "0x46d49adf48172d2e79d813a3f4f27ab61724b01e", + "0x46d49adf48172d2e79d813a3f4f27ab61724b01e", + "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", + "0x98f7a83361f7ac8765ccebab1425da6b341958a7", + "0xc85491616fa949e048f3aac39fbf5b0703800667", + "0x98f7a83361f7ac8765ccebab1425da6b341958a7", + "0x46d49adf48172d2e79d813a3f4f27ab61724b01e", + "0x32fbf7bbbd79355b86741e3181ef8c1d9bd309bb", + "0xf1fa230d25fc5d6cafe87c5a6f9e1b17bc6f194e", + "0x2ecede6989d8646c992344ff6c97c72a3f811a13", + "0x989a1993c023a45da141928921c0de8fd123b7d1", + "0xf358650a007aa12ecc8dac08cf8929be7f72a4d9", + "0x258f49254c758a0e37dab148addaea851f4b02a2" + ], + "values": [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0" + ], + "signatures": [ + "setDirectPrice(address,uint256)", + "setDirectPrice(address,uint256)", + "setValidateConfig((address,uint256,uint256))", + "setDirectPrice(address,uint256)", + "setDirectPrice(address,uint256)", + "setValidateConfig((address,uint256,uint256))", + "setTokenConfig((address,address[3],bool[3]))", + "setTokenConfig((address,address[3],bool[3]))", + "acceptOwnership()", + "acceptOwnership()", + "setPriceOracle(address)", + "addPool(string,address,uint256,uint256,uint256)", + "setPrimeToken(address)", + "setReduceReservesBlockDelta(uint256)", + "setReserveFactor(uint256)", + "withdrawTreasuryBEP20(address,uint256,address)", + "approve(address,uint256)", + "addMarket((address,uint256,uint256,uint256,address,uint256,uint256))", + "approve(address,uint256)", + "setProtocolSeizeShare(uint256)", + "setReduceReservesBlockDelta(uint256)", + "setReserveFactor(uint256)", + "withdrawTreasuryBEP20(address,uint256,address)", + "approve(address,uint256)", + "addMarket((address,uint256,uint256,uint256,address,uint256,uint256))", + "approve(address,uint256)", + "setProtocolSeizeShare(uint256)", + "setReduceReservesBlockDelta(uint256)", + "setReserveFactor(uint256)", + "withdrawTreasuryBEP20(address,uint256,address)", + "approve(address,uint256)", + "addMarket((address,uint256,uint256,uint256,address,uint256,uint256))", + "approve(address,uint256)", + "setProtocolSeizeShare(uint256)", + "setConversionConfigs(address,address[],(uint256,uint8)[])", + "setConversionConfigs(address,address[],(uint256,uint8)[])", + "setConversionConfigs(address,address[],(uint256,uint8)[])", + "setConversionConfigs(address,address[],(uint256,uint8)[])", + "setConversionConfigs(address,address[],(uint256,uint8)[])", + "setConversionConfigs(address,address[],(uint256,uint8)[])" + ], + "calldatas": [ + "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000000000000000000000000000000e043da6172500000000000000000000000000000000000000000000000000000dbd2fc137a30000", + "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000000e043da6172500000000000000000000000000000000000000000000000000000dbd2fc137a30000", + "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d12900000000000000000000000035af302a0b4653f214240fcb2dff059fe42ec2ce000000000000000000000000b1bf3f668e0e047ab214c7373cf6b06de37c8152000000000000000000000000b1bf3f668e0e047ab214c7373cf6b06de37c8152000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001", + "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc000000000000000000000000f1b65d1331dceed40da71cfc4f06d9754a3f37560000000000000000000000008c8a70695dc952ca2e8cd4038907201fabb8134e0000000000000000000000008c8a70695dc952ca2e8cd4038907201fabb8134e000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001", + "0x", + "0x", + "0x0000000000000000000000003cd69251d04a28d887ac14cbe2e14c52f3d57823", + "0x00000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000c7859b809ed5a2e98659ab5427d5b69e706ae26b00000000000000000000000000000000000000000000000006f05b59d3b200000000000000000000000000000000000000000000000000000e27c49886e600000000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000114c6971756964205374616b656420455448000000000000000000000000000000", + "0x000000000000000000000000e840f8ec2dc50e7d22e5e2991975b9f6e34b62ad", + "0x0000000000000000000000000000000000000000000000000000000000007080", + "0x00000000000000000000000000000000000000000000000003782dace9d90000", + "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d12900000000000000000000000000000000000000000000000031442230f8a30000000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", + "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b070380066700000000000000000000000000000000000000000000000031442230f8a30000", + "0x00000000000000000000000016eb5ce6d186b49709dd588518cd545985096ff50000000000000000000000000000000000000000000000000c7d713b49da00000000000000000000000000000000000000000000000000000ce80612991d000000000000000000000000000000000000000000000000000031442230f8a300000000000000000000000000008b293600c50d6fbdc6ed4251cc75ece29880276f000000000000000000000000000000000000000000000002b5e3af16b18800000000000000000000000000000000000000000000000000004563918244f40000", + "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000000000000000000000000000002386f26fc10000", + "0x0000000000000000000000000000000000000000000000000000000000007080", + "0x00000000000000000000000000000000000000000000000003782dace9d90000", + "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000003d82eb1e09de9ad6000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", + "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000003d82eb1e09de9ad6", + "0x0000000000000000000000004bd7efb423f06fa033404fbd0935a2097918084d0000000000000000000000000000000000000000000000000c7d713b49da00000000000000000000000000000000000000000000000000000ce80612991d00000000000000000000000000000000000000000000000000003d82eb1e09de9ad60000000000000000000000008b293600c50d6fbdc6ed4251cc75ece29880276f000000000000000000000000000000000000000000000015af1d78b58c40000000000000000000000000000000000000000000000000000ad78ebc5ac6200000", + "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000000000000000000000000000002386f26fc10000", + "0x0000000000000000000000000000000000000000000000000000000000007080", + "0x0000000000000000000000000000000000000000000000000214e8348c4f0000", + "0x00000000000000000000000098f7a83361f7ac8765ccebab1425da6b341958a70000000000000000000000000000000000000000000000001bc16d674ec80000000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", + "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000001bc16d674ec80000", + "0x00000000000000000000000046d49adf48172d2e79d813a3f4f27ab61724b01e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001bc16d674ec800000000000000000000000000008b293600c50d6fbdc6ed4251cc75ece29880276f000000000000000000000000000000000000000000000018650127cc3dc80000000000000000000000000000000000000000000000000015af1d78b58c400000", + "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000000000000000000000", + "0x000000000000000000000000000000000000000000000000002386f26fc10000", + "0x000000000000000000000000a11c8d9dc9b66e209ef60f0c8d969d3cd988782c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "0x000000000000000000000000a11c8d9dc9b66e209ef60f0c8d969d3cd988782c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "0x00000000000000000000000016227d60f7a0e586c66b005219dfc887d13c9531000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "0x000000000000000000000000a808e341e8e723dc6ba0bb5204bafc2330d7b8e4000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "0x00000000000000000000000098f7a83361f7ac8765ccebab1425da6b341958a7000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "0x000000000000000000000000b9e0e753630434d7863528cc73cb7ac638a7c8ff000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0x6bb301c7a05942e284c1276ca4ca02006818b8ab2794678c16f3a36432fbb933", + "timestamp": "1726098358", + "txHash": "0x6bb301c7a05942e284c1276ca4ca02006818b8ab2794678c16f3a36432fbb933" + }, + "executed": { + "id": "0xa3986c6801415c76451f32c279b74f3f8165ea65d03494dcec41a5370b2035ac", + "timestamp": "1726100401", + "txHash": "0xa3986c6801415c76451f32c279b74f3f8165ea65d03494dcec41a5370b2035ac" + }, + "canceled": null, + "queued": { + "id": "0x4d5db5557ed421d59458767807505b30f84f3b697d3756caee06b776657fd427", + "timestamp": "1726099768", + "txHash": "0x4d5db5557ed421d59458767807505b30f84f3b697d3756caee06b776657fd427" + }, + "votes": [ + { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706ae010000", + "support": "FOR", + "votes": "605372000000000000000000", + "reason": null, + "voter": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "totalVotesMantissa": "605372000000000000000000" + } + } + ], + "remoteProposals": [] + }, + { + "id": "429", + "proposalId": "429", + "startBlock": "43604567", + "endBlock": "43604717", + "forVotes": "605372000000000000000000", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": "1725535385", + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"VIP-357 Unlist Market\",\"description\":\"Unlist Market\",\"forDescription\":\"Execute this proposal\",\"againstDescription\":\"Do not execute this proposal\",\"abstainDescription\":\"Indifferent to execution\"}", + "passing": true, + "targets": [ + "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "0xdddd7725c073105fb2abfcbdec16708fc4c24b74" + ], + "values": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], + "signatures": [ + "diamondCut((address,uint8,bytes4[])[])", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "_setActionsPaused(address[],uint8[],bool)", + "unlistMarket(address)", + "unlistMarket(address)", + "upgradeTo(address)" + ], + "calldatas": [ + "0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005a000000000000000000000000000a949ffda9b216fba9c4e5b40ef561af0fdb72300000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000ba76b3fda00000000000000000000000000000000000000000000000000000000929fe9a100000000000000000000000000000000000000000000000000000000c299823800000000000000000000000000000000000000000000000000000000ede4edd000000000000000000000000000000000000000000000000000000000b0772d0b00000000000000000000000000000000000000000000000000000000abfceffc00000000000000000000000000000000000000000000000000000000007e3dd200000000000000000000000000000000000000000000000000000000c488847b00000000000000000000000000000000000000000000000000000000a78dc77500000000000000000000000000000000000000000000000000000000ddbf54fd00000000000000000000000000000000000000000000000000000000c5b4db550000000000000000000000000000000000000000000000000000000000000000000000000000000000a949ffda9b216fba9c4e5b40ef561af0fdb7230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000010686dab600000000000000000000000000000000000000000000000000000000000000000000000000000000085c8d0133291348004aabffbe7cac2097af2aa1000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000011ead1a8a000000000000000000000000000000000000000000000000000000000da3d454c000000000000000000000000000000000000000000000000000000005c778605000000000000000000000000000000000000000000000000000000005ec88c79000000000000000000000000000000000000000000000000000000004e79238f000000000000000000000000000000000000000000000000000000005fc7e71e0000000000000000000000000000000000000000000000000000000047ef3b3b000000000000000000000000000000000000000000000000000000004ef4c3e10000000000000000000000000000000000000000000000000000000041c728b900000000000000000000000000000000000000000000000000000000eabe7d910000000000000000000000000000000000000000000000000000000051dff9890000000000000000000000000000000000000000000000000000000024008a62000000000000000000000000000000000000000000000000000000001ededc9100000000000000000000000000000000000000000000000000000000d02f7351000000000000000000000000000000000000000000000000000000006d35bf9100000000000000000000000000000000000000000000000000000000bdcdc258000000000000000000000000000000000000000000000000000000006a56947e00000000000000000000000000000000000000000000000000000000000000000000000000000000490dfd07f592452307817c4283866035bdb3b275000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000017f519fc30000000000000000000000000000000000000000000000000000000002b5d790c00000000000000000000000000000000000000000000000000000000317b0b7700000000000000000000000000000000000000000000000000000000e4028eee000000000000000000000000000000000000000000000000000000009bf34cbb00000000000000000000000000000000000000000000000000000000522c656b0000000000000000000000000000000000000000000000000000000017db2163000000000000000000000000000000000000000000000000000000004fd42e1700000000000000000000000000000000000000000000000000000000bb85745000000000000000000000000000000000000000000000000000000000607ef6c10000000000000000000000000000000000000000000000000000000051a485e4000000000000000000000000000000000000000000000000000000005f5af1aa0000000000000000000000000000000000000000000000000000000055ee1fe1000000000000000000000000000000000000000000000000000000009460c8b5000000000000000000000000000000000000000000000000000000002a6a606500000000000000000000000000000000000000000000000000000000d24febad000000000000000000000000000000000000000000000000000000009cfdd9e6000000000000000000000000000000000000000000000000000000002ec04124000000000000000000000000000000000000000000000000000000004e0853db000000000000000000000000000000000000000000000000000000006662c7c900000000000000000000000000000000000000000000000000000000919a3736000000000000000000000000000000000000000000000000000000004ef233fc00000000000000000000000000000000000000000000000000000000fd51a3ad00000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000094d1820b2d1c7c7452a163983dc888cec546b77d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000ce10739590001705f7ff231611ba4a48b28203270000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "0x00000000000000000000000094d1820b2d1c7c7452a163983dc888cec546b77d00000000000000000000000000000000000000000000000000000000000000600000000000000000000000003cff21b7af8390fe68799d58727d3b4c25a83cb60000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "0x00000000000000000000000094d1820b2d1c7c7452a163983dc888cec546b77d000000000000000000000000000000000000000000000000000000000000006000000000000000000000000023b893a7c45a5eb8c8c062b9f32d0d2e43ed286d0000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000ce10739590001705f7ff231611ba4a48b28203270000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000003cff21b7af8390fe68799d58727d3b4c25a83cb60000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000023b893a7c45a5eb8c8c062b9f32d0d2e43ed286d0000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "0x000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000009c3015191d39cf1930f92eb7e7bcbd020bca286a000000000000000000000000f206af85bc2761c4f876d27bd474681cfb335efa0000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000008", + "0x0000000000000000000000009c3015191d39cf1930f92eb7e7bcbd020bca286a", + "0x000000000000000000000000f206af85bc2761c4f876d27bd474681cfb335efa", + "0x000000000000000000000000912c97b168286f550fd7b9588b2069319f1c88a2" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0x712e38356472fe78b8521287faf44d42c08d35264cf2dbabbdfdd377975effcb", + "timestamp": "1725533858", + "txHash": "0x712e38356472fe78b8521287faf44d42c08d35264cf2dbabbdfdd377975effcb" + }, + "executed": { + "id": "0x54c5acabde26e06c8eb95bfadc2014cc295167f3a89f0388023c56758cb7bfbd", + "timestamp": "1725535400", + "txHash": "0x54c5acabde26e06c8eb95bfadc2014cc295167f3a89f0388023c56758cb7bfbd" + }, + "canceled": null, + "queued": { + "id": "0x5ff3875e1ed65359feccc17201c6a7f932b38942eab8ee302443075bae530abc", + "timestamp": "1725534785", + "txHash": "0x5ff3875e1ed65359feccc17201c6a7f932b38942eab8ee302443075bae530abc" + }, + "votes": [ + { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706ad010000", + "support": "FOR", + "votes": "605372000000000000000000", + "reason": null, + "voter": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "totalVotesMantissa": "605372000000000000000000" + } + } + ], + "remoteProposals": [] + }, + { + "id": "428", + "proposalId": "428", + "startBlock": "43433486", + "endBlock": "43433636", + "forVotes": "0", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": null, + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"Test VIP\",\"description\":\"#### Description\\n Mint faucet on all network\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": false, + "targets": [ + "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899" + ], + "values": ["0", "0", "0", "0"], + "signatures": [ + "allocateTo(address,uint256)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)" + ], + "calldatas": [ + "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0xa5221059657fce108338d2120708498174c473fb5727af731febd5eb760b7930", + "timestamp": "1725020593", + "txHash": "0xa5221059657fce108338d2120708498174c473fb5727af731febd5eb760b7930" + }, + "executed": null, + "canceled": null, + "queued": null, + "votes": [], + "remoteProposals": [ + { + "id": "0x76270000ac01", + "proposalId": null, + "targets": ["0x8ac9b3801d0a8f5055428ae0bf301ca1da976855"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0x76270000", + "layerZeroChainId": 10102 + }, + "stateTransactions": null + }, + { + "id": "0xb1270000ac01", + "proposalId": null, + "targets": ["0x772d68929655ce7234c8c94256526dda66ef641e"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xb1270000", + "layerZeroChainId": 10161 + }, + "stateTransactions": null + }, + { + "id": "0xf7270000ac01", + "proposalId": null, + "targets": ["0xf3118a17863996b9f2a073c9a66faaa664355cf8"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xf7270000", + "layerZeroChainId": 10231 + }, + "stateTransactions": null + } + ] + }, + { + "id": "427", + "proposalId": "427", + "startBlock": "43431852", + "endBlock": "43432002", + "forVotes": "0", + "againstVotes": "0", + "abstainVotes": "0", + "executionEta": null, + "type": "NORMAL", + "description": "{\"version\":\"v2\",\"title\":\"Test VIP\",\"description\":\"#### Description\\n Mint faucet on all network\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", + "passing": false, + "targets": [ + "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "0xcfd34aeb46b1cb4779c945854d405e91d27a1899" + ], + "values": ["0", "0", "0", "0"], + "signatures": [ + "allocateTo(address,uint256)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)", + "execute(uint16,bytes,bytes,address)" + ], + "calldatas": [ + "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000" + ], + "proposer": { + "id": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706" + }, + "created": { + "id": "0x4f354d1e9d4ea6b90c61a093ad701b47e2182fb9aac5ff737bfd2c5c34e372ed", + "timestamp": "1725015691", + "txHash": "0x4f354d1e9d4ea6b90c61a093ad701b47e2182fb9aac5ff737bfd2c5c34e372ed" + }, + "executed": null, + "canceled": null, + "queued": null, + "votes": [], + "remoteProposals": [ + { + "id": "0x76270000ab01", + "proposalId": null, + "targets": ["0x8ac9b3801d0a8f5055428ae0bf301ca1da976855"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0x76270000", + "layerZeroChainId": 10102 + }, + "stateTransactions": null + }, + { + "id": "0xb1270000ab01", + "proposalId": null, + "targets": ["0x772d68929655ce7234c8c94256526dda66ef641e"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xb1270000", + "layerZeroChainId": 10161 + }, + "stateTransactions": null + }, + { + "id": "0xf7270000ab01", + "proposalId": null, + "targets": ["0xf3118a17863996b9f2a073c9a66faaa664355cf8"], + "values": ["0"], + "signatures": ["faucet(uint256)"], + "calldatas": ["0x0000000000000000000000000000000000000000000000000de0b6b3a7640000"], + "trustedRemote": { + "id": "0xf7270000", + "layerZeroChainId": 10231 + }, + "stateTransactions": null + } + ] + } + ], + "total": [ + { + "id": "1" + }, + { + "id": "10" + }, + { + "id": "100" + }, + { + "id": "101" + }, + { + "id": "102" + }, + { + "id": "103" + }, + { + "id": "104" + }, + { + "id": "105" + }, + { + "id": "106" + }, + { + "id": "107" + }, + { + "id": "108" + }, + { + "id": "109" + }, + { + "id": "11" + }, + { + "id": "110" + }, + { + "id": "111" + }, + { + "id": "112" + }, + { + "id": "113" + }, + { + "id": "114" + }, + { + "id": "115" + }, + { + "id": "116" + }, + { + "id": "117" + }, + { + "id": "118" + }, + { + "id": "119" + }, + { + "id": "12" + }, + { + "id": "120" + }, + { + "id": "121" + }, + { + "id": "122" + }, + { + "id": "123" + }, + { + "id": "124" + }, + { + "id": "125" + }, + { + "id": "126" + }, + { + "id": "127" + }, + { + "id": "128" + }, + { + "id": "129" + }, + { + "id": "13" + }, + { + "id": "130" + }, + { + "id": "131" + }, + { + "id": "132" + }, + { + "id": "133" + }, + { + "id": "134" + }, + { + "id": "135" + }, + { + "id": "136" + }, + { + "id": "137" + }, + { + "id": "138" + }, + { + "id": "139" + }, + { + "id": "14" + }, + { + "id": "140" + }, + { + "id": "141" + }, + { + "id": "142" + }, + { + "id": "143" + }, + { + "id": "144" + }, + { + "id": "145" + }, + { + "id": "146" + }, + { + "id": "147" + }, + { + "id": "148" + }, + { + "id": "149" + }, + { + "id": "15" + }, + { + "id": "150" + }, + { + "id": "151" + }, + { + "id": "152" + }, + { + "id": "153" + }, + { + "id": "154" + }, + { + "id": "155" + }, + { + "id": "156" + }, + { + "id": "157" + }, + { + "id": "158" + }, + { + "id": "159" + }, + { + "id": "16" + }, + { + "id": "160" + }, + { + "id": "161" + }, + { + "id": "162" + }, + { + "id": "163" + }, + { + "id": "164" + }, + { + "id": "165" + }, + { + "id": "166" + }, + { + "id": "167" + }, + { + "id": "168" + }, + { + "id": "169" + }, + { + "id": "17" + }, + { + "id": "170" + }, + { + "id": "171" + }, + { + "id": "172" + }, + { + "id": "173" + }, + { + "id": "174" + }, + { + "id": "175" + }, + { + "id": "176" + }, + { + "id": "177" + }, + { + "id": "178" + }, + { + "id": "179" + }, + { + "id": "18" + }, + { + "id": "180" + }, + { + "id": "181" + }, + { + "id": "182" + }, + { + "id": "183" + }, + { + "id": "184" + }, + { + "id": "185" + }, + { + "id": "186" + }, + { + "id": "187" + }, + { + "id": "188" + }, + { + "id": "189" + } + ] +} diff --git a/apps/evm/src/__mocks__/subgraph/nonBscProposals.json b/apps/evm/src/__mocks__/subgraph/nonBscProposals.json new file mode 100644 index 0000000000..4149cf5887 --- /dev/null +++ b/apps/evm/src/__mocks__/subgraph/nonBscProposals.json @@ -0,0 +1,118 @@ +{ + "proposals": [ + { + "id": "4", + "proposalId": "4", + "targets": [ + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e" + ], + "values": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], + "signatures": [ + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)" + ], + "calldatas": [ + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e0000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc000000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000" + ], + "executionEta": "1719935819", + "queued": { + "id": "0x3f4f7a17f7ed78c0c3620e61391aeab8b0a22b2438c7c8b65396e3d52c617d1f", + "timestamp": "1719763019" + }, + "canceled": null, + "executed": { + "id": "0x544c7a7eaa39193348b5907232f9cee66c8aa6f609200d03792289b40487d164", + "timestamp": "1720520363" + } + }, + { + "id": "5", + "proposalId": "5", + "targets": [ + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e" + ], + "values": ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], + "signatures": [ + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)" + ], + "calldatas": [ + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e0000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc000000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000" + ], + "executionEta": "1719935819", + "queued": { + "id": "0x3f4f7a17f7ed78c0c3620e61391aeab8b0a22b2438c7c8b65396e3d52c617d1f", + "timestamp": "1719763019" + }, + "canceled": null, + "executed": { + "id": "0x544c7a7eaa39193348b5907232f9cee66c8aa6f609200d03792289b40487d164", + "timestamp": "1720520363" + } + } + ] +} diff --git a/apps/evm/src/__mocks__/subgraph/proposals.json b/apps/evm/src/__mocks__/subgraph/proposals.json deleted file mode 100644 index e096d1ca6b..0000000000 --- a/apps/evm/src/__mocks__/subgraph/proposals.json +++ /dev/null @@ -1,2805 +0,0 @@ -{ - "proposals": [ - { - "proposalId": "353", - "startBlock": "33499709", - "endBlock": "33499859", - "forVotes": "605461000000000000000000", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": null, - "type": "FAST_TRACK", - "description": "{\"version\":\"v2\",\"title\":\"VIP-353 [Ethereum] Risk Parameters Adjustments (WETH)\",\"description\":\"This VIP will perform the following Risk Parameter actions as per Chaos Labs’ latest recommendations in this Venus community forum publication: [Chaos Labs - Risk Parameter Updates - 08/02/24](https://community.venus.io/t/chaos-labs-risk-parameter-updates-08-02-24/4502).\\n\\n- [WETH (Liquid Staked ETH)](https://etherscan.io/address/0xc82780Db1257C788F262FBbDA960B3706Dfdcaf2):\\n - Reduce Collateral Factor, from 90% to 0%\\n - Increase Kink, from 80% to 90%\\n - Increase Multiplier, from 3.5% to 4.5%\\n - Increase Reserve Factor, from 15% to 25%\\n\\nComplete analysis and details of these recommendations are available in the above publication.\\n\\nPlease note that reducing the collateral factor to 0% will not cause current borrowers to be liquidated as the liquidation threshold will not be modified.\\n\\n#### References\\n\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/356)\\n\\n#### Disclaimer for Ethereum VIPs\\n\\nPrivilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0xab824acf17443e1c50231fa0d6ad1d854269941db67704518104867ac9181083) multisig transaction will be executed. Otherwise, it will be rejected.\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": ["0x555ba73db1b006f3f2c7db7126d6e4343adbce02"], - "values": ["1"], - "signatures": [""], - "calldatas": ["0x"], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1695195575", - "txHash": "0xbe4f9879425120453393641d4518e571b289d3ec74e3a27a2d4281caf251f408" - }, - "executed": { - "timestamp": null, - "txHash": "0x91f6267525b678fe62632dc738c766ccb02408a81cd9f5915f4f40db79368ce2" - }, - "canceled": null, - "queued": { - "timestamp": null, - "txHash": "0xc295f4f351eb2ebeebbbee99066733585458ef91fc38570594c8da1e0554cfd6" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe0597861010000", - "support": "FOR", - "votes": "13777102348559360929", - "reason": null, - "voter": { - "id": "0x3d759121234cd36F8124C21aFe1c6852d2bEd848", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed61010000", - "support": "FOR", - "votes": "1169370000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d61010000", - "support": "AGAINST", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f861010000", - "support": "ABSTAIN", - "votes": "801851714101606493084", - "reason": null, - "voter": { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "totalVotesMantissa": "801851714101606493084" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a61010000", - "support": "FOR", - "votes": "13058470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d61010000", - "support": "FOR", - "votes": "199226357358097054944", - "reason": null, - "voter": { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "totalVotesMantissa": "199226357358097054944" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c35761010000", - "support": "FOR", - "votes": "9977051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed239161010000", - "support": "FOR", - "votes": "433469577024822530748692", - "reason": "Community delegators approved.", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b61010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a1961010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "352", - "startBlock": "41365384", - "endBlock": "41394184", - "forVotes": "752101475214427933013256", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1723926128", - "type": "NORMAL", - "description": "{\"version\":\"v2\",\"title\":\"VIP-352 [Ethereum] Unification of XVS rewards for DAI, TUSD, FRAX, sFRAX and sfrxETH\",\"description\":\"#### Summary\\n\\nIf passed, this VIP will perform the following actions:\\n\\n- Transfer 5,731.81 XVS from [RewardsDistributor_Core_0](https://etherscan.io/address/0x134bfDEa7e68733921Bc6A87159FB0d68aBc6Cf8) to [RewardsDistributor_Core_2](https://etherscan.io/address/0x886767B62C7ACD601672607373048FFD96Cf27B2)\\n- Transfer 1,473.64 XVS from [RewardsDistributor_Liquid Staked ETH_0](https://etherscan.io/address/0x7A91bEd36D96E4e644d3A181c287E0fcf9E9cc98) to [RewardsDistributor_Liquid Staked ETH_3](https://etherscan.io/address/0x1e25CF968f12850003Db17E0Dba32108509C4359)\\n\\n#### Description\\n\\nIn the [VIP-348](https://app.venus.io/#/governance/proposal/348?chainId=56), the rewards for the Ethereum markets of [DAI](https://app.venus.io/#/core-pool/market/0xd8AdD9B41D4E1cd64Edad8722AB0bA8D35536657?chainId=1), [TUSD](https://app.venus.io/#/core-pool/market/0x13eB80FDBe5C5f4a7039728E258A6f05fb3B912b?chainId=1), [FRAX](https://app.venus.io/#/core-pool/market/0x4fAfbDc4F2a9876Bd1764827b26fb8dc4FD1dB95?chainId=1), [sFRAX](https://app.venus.io/#/core-pool/market/0x17142a05fe678e9584FA1d88EfAC1bF181bF7ABe?chainId=1) and [sfrxETH](https://app.venus.io/#/isolated-pools/pool/0xF522cd0360EF8c2FF48B648d53EA1717Ec0F3Ac3/market/0xF9E9Fe17C00a8B96a8ac20c4E344C8688D7b947E?chainId=1) were stopped in the original RewardsDistributor contracts ([RewardsDistributor_Core_0](https://etherscan.io/address/0x134bfDEa7e68733921Bc6A87159FB0d68aBc6Cf8) and [RewardsDistributor_Liquid Staked ETH_0](https://etherscan.io/address/0x7A91bEd36D96E4e644d3A181c287E0fcf9E9cc98)) and enabled in the new ones ([RewardsDistributor_Core_2](https://etherscan.io/address/0x886767B62C7ACD601672607373048FFD96Cf27B2) and [RewardsDistributor_Liquid Staked ETH_3](https://etherscan.io/address/0x1e25CF968f12850003Db17E0Dba32108509C4359)), aiming to unify the XVS rewards in one contract per pool.\\n\\nThis VIP will transfer the non-allocated XVS tokens from the original RewardsDistributor contracts to the new ones. This transfer doesn’t have any impact on the users, who will continue accruing rewards as usual.\\n\\n#### References\\n\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/338)\\n- [VIP-302 Ethereum: new FRAX and sFRAX markets in the Core pool](https://app.venus.io/#/governance/proposal/302?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/277)): 4,800 XVS were transferred to the RewardsDistributor_Core_0, to be distributed for 90 days among the FRAX and sFRAX market users\\n- [VIP-322: [Ethereum] Market Emission Adjustment](https://app.venus.io/#/governance/proposal/322?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/301/files)): 112,000 XVS were transferred for the rewards of the following markets:\\n - Core pool: WETH, WBTC, USDT, USDC, crvUSD, FRAX, sFRAX, TUSD, DAI\\n - Curve pool: CRV, crvUSD\\n - LST pool: wstETH\\n- [VIP-329 Ethereum: new sfrxETH market in the Liquid Staked ETH pool](https://app.venus.io/#/governance/proposal/329?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/302)): 2,400 XVS were transferred to the RewardsDistributor_Core_0, to be distributed for 90 days among the sfrxETH market users\\n- [VIP-335 [Ethereum] Resume Market Incentives](https://app.venus.io/#/governance/proposal/335?chainId=1) ([PR](https://github.com/VenusProtocol/vips/pull/314)): 82,180 XVS were transferred from the old RewardsDistributor contracts to the new ones. These are the rewards associated to every market except FRAX, sFRAX, sfrxETH, DAI, TUSD\\n- [VIP-348 [Ethereum] Market Emission Adjustment](https://app.venus.io/#/governance/proposal/348?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/331)): speeds for FRAX, sFRAX, sfrxETH, DAI, TUSD are set to zero in the old RewardsDistributor contracts and the new speeds are set in the new RewardsDistributor contracts\\n\\n#### Disclaimer for Ethereum VIPs\\n\\nPrivilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x717fa100138a66aa5ca51cba4880a9448e6b18d87c3d2c3b41bfb91e7f27e8c8) multisig transaction will be executed. Otherwise, it will be rejected.\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": ["0x939bd8d64c0a9583a7dcea9933f7b21697ab6396"], - "values": ["1"], - "signatures": [""], - "calldatas": ["0x"], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1723666451", - "txHash": "0x9f2840bfcbefbbb64db19f5ff1688e72c822cfaffccc52d34f8642c106c1a2d3" - }, - "executed": { - "timestamp": "1723926661", - "txHash": "0xd7d5304872e6ba9e38e7eb7b65f4d3e71eeccfbc772ce1d198096483daf5c85a" - }, - "canceled": null, - "queued": { - "timestamp": "1723753328", - "txHash": "0xe8069c2913513de089e9dcd56e3ce3efd50fdbda430f9b351c0272bfe3e6bd5c" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe0597860010000", - "support": "FOR", - "votes": "13777102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed60010000", - "support": "FOR", - "votes": "1168250000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d60010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x3189b40140cac6c20d5de8a37d667cc6a866d41b60010000", - "support": "FOR", - "votes": "1129288737856030085845", - "reason": null, - "voter": { - "id": "0x3189b40140cac6c20d5de8a37d667cc6a866d41b", - "totalVotesMantissa": "1138020574640866898738" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a60010000", - "support": "FOR", - "votes": "13058470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d60010000", - "support": "FOR", - "votes": "199226357358097054944", - "reason": null, - "voter": { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "totalVotesMantissa": "199226357358097054944" - } - }, - { - "id": "0x59c3e411ce0f4c0a95d587bbfadbb7b9dfff8c0f60010000", - "support": "FOR", - "votes": "3613675066757", - "reason": null, - "voter": { - "id": "0x59c3e411ce0f4c0a95d587bbfadbb7b9dfff8c0f", - "totalVotesMantissa": "3783405132447" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c35760010000", - "support": "FOR", - "votes": "9977051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0xbdc1faea0cb9121df6afd0e47accd3048ba0133760010000", - "support": "FOR", - "votes": "1015965846030073973859", - "reason": null, - "voter": { - "id": "0xbdc1faea0cb9121df6afd0e47accd3048ba01337", - "totalVotesMantissa": "1023789395302644368193" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed239160010000", - "support": "FOR", - "votes": "433361769969372605623414", - "reason": "Community Delegators approved. ", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b60010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e60010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a1960010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "351", - "startBlock": "41331229", - "endBlock": "41360029", - "forVotes": "751846555629564000714505", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1723823588", - "type": "NORMAL", - "description": "{\"version\":\"v2\",\"title\":\"VIP-351 [opBNB] Update XVS address in the XVSVault\",\"description\":\"#### Summary\\n\\nIf passed, this VIP will update the XVS address considered by the [XVSVault](https://opbnbscan.com/address/0x7dc969122450749A8B0777c0e324522d67737988) contract on opBNB, using [0x3E2e61F1c075881F3fB8dd568043d8c221fd5c61](https://opbnbscan.com/address/0x3E2e61F1c075881F3fB8dd568043d8c221fd5c61)\\n\\n#### Description\\n\\nThe XVSVault contract on opBNB is using an old version of the XVS token address deployed to that network. This VIP sets the right XVS token address in the vault, which is the one used by the [bridge contracts](https://opbnbscan.com/address/0x100D331C1B5Dcd41eACB1eCeD0e83DCEbf3498B2). No actions are required from users.\\n\\n#### Security and additional considerations\\n\\nWe applied the following security procedures for this upgrade:\\n\\n- **VIP execution simulation**: in a simulation environment, validating the XVS address is properly set\\n- **Deployment on testnet**: the same operation has been [successfully executed on opBNB testnet](https://testnet.opbnbscan.com/tx/0xceb6a8db450e8495a961019a631a9dfcd356fe6c26486448676cc8de01bb0aaa?tab=overview)\\n- **XVSVault is paused on opBNB**, so no funds are at risk\\n\\n#### References\\n\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/308)\\n- [TX on opBNB testnet](https://testnet.opbnbscan.com/tx/0xceb6a8db450e8495a961019a631a9dfcd356fe6c26486448676cc8de01bb0aaa?tab=overview)\\n- [Temporary XVSVault contract used to set the XVS address](https://opbnbscan.com/address/0xF23CB7f0e4742506EB45ad3D663Fa461512B56B8)\\n\\n#### Disclaimer for opBNB VIPs\\n\\nPrivilege commands on Ethereum will be executed by the [Guardian wallet](https://multisig.bnbchain.org/home?safe=opbnb:0xC46796a21a3A9FAB6546aF3434F2eBfFd0604207), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://multisig.bnbchain.org/transactions/tx?safe=opbnb:0xC46796a21a3A9FAB6546aF3434F2eBfFd0604207&id=multisig_0xC46796a21a3A9FAB6546aF3434F2eBfFd0604207_0x724682986f6558b650782f09f4f9519404ecde2746f3d20cc4daac4b4566f615) multisig transaction will be executed. Otherwise, it will be rejected.\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": ["0x939bd8d64c0a9583a7dcea9933f7b21697ab6396"], - "values": ["1"], - "signatures": [""], - "calldatas": ["0x"], - "proposer": { - "id": "0x55a9f5374af30e3045fb491f1da3c2e8a74d168d" - }, - "created": { - "timestamp": "1723563783", - "txHash": "0xa515fbd29eb02d048fde141f6831b005b798f693fe00c9ba525cb5064aab649e" - }, - "executed": { - "timestamp": "1723823913", - "txHash": "0x3a0af11b8d7d84bcbcf9abd5a6db09a6b698ef8d168d67f24ca5d9c115b492f1" - }, - "canceled": null, - "queued": { - "timestamp": "1723650788", - "txHash": "0x8260bf3ec31bf5c54f5e5d7393eeffb3aab7e510042dd1e591cc70451c65130f" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe059785f010000", - "support": "FOR", - "votes": "13777102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed5f010000", - "support": "FOR", - "votes": "1168250000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d5f010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a5f010000", - "support": "FOR", - "votes": "13058470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d5f010000", - "support": "FOR", - "votes": "199226357358097054944", - "reason": null, - "voter": { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "totalVotesMantissa": "199226357358097054944" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c3575f010000", - "support": "FOR", - "votes": "9977051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0x69796191e5cb32eaaf1abf6bc1ce454e4e5a064f5f010000", - "support": "FOR", - "votes": "1900610293907734918039", - "reason": null, - "voter": { - "id": "0x69796191e5cb32eaaf1abf6bc1ce454e4e5a064f", - "totalVotesMantissa": "1900610293907734918039" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed23915f010000", - "support": "FOR", - "votes": "433351494678100717533085", - "reason": "Community delegators approved.", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b5f010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e5f010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a195f010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "350", - "startBlock": "41328722", - "endBlock": "41357522", - "forVotes": "752914287346152900465829", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1723815772", - "type": "NORMAL", - "description": "{\"version\":\"v2\",\"title\":\"VIP-350 Incentives for Token Converters\",\"description\":\"#### Summary\\n\\nIf passed, this VIP will perform the following actions:\\n\\n- set to 0.01% the incentive for every conversion pair in every Token Converter contract used by the Venus Protocol on BNB Chain, following the [Chaos Labs recommendations](https://community.venus.io/t/chaos-labs-token-converter/4521).\\n- enable USDT conversions on every Token Converter, for any wallet, not only for other converters\\n\\n#### Description\\n\\nToken Converters are permissionless: anyone is able to perform a conversion on those contracts. Incentives on the Token Converters should create arbitrage opportunities, returning on each conversion slightly more than the expected amounts only considering the oracle prices of the tokens involved, or requiring fewer tokens than expected (depending on the type of conversion set by the caller). The community is expected to take advantage of these arbitrages and operate the Token Converter contracts fluently because they should be economically profitable.\\n\\nThe distribution of funds to the RiskFundConverter has been zero since [VIP-332](https://app.venus.io/#/governance/proposal/332?chainId=56). Nowadays there is no converter interested in USDT receiving a fluent flow of tokens that could be used to convert the offer of the rest of the converters. So, it doesn’t make sense to maintain “only private” conversions of USDT in those converters. This VIP will open the USDT conversions in the following Token Converters on BNB Chain:\\n\\n- [USDTPrimeConverter](https://bscscan.com/address/0xD9f101AA67F3D72662609a2703387242452078C3)\\n- [USDCPrimeConverter](https://bscscan.com/address/0xa758c9C215B6c4198F0a0e3FA46395Fa15Db691b)\\n- [BTCBPrimeConverter](https://bscscan.com/address/0xE8CeAa79f082768f99266dFd208d665d2Dd18f53)\\n- [ETHPrimeConverter](https://bscscan.com/address/0xca430B8A97Ea918fF634162acb0b731445B8195E)\\n\\n#### References\\n\\n- [VIP Simulation](https://github.com/VenusProtocol/vips/pull/339)\\n- [Token Converters documentation](https://docs-v4.venus.io/whats-new/token-converter)\\n- [Technical article about Token Converters](https://docs-v4.venus.io/technical-reference/reference-technical-articles/token-converters)\\n- [Addresses of the deployed Token Converter contracts](https://docs-v4.venus.io/deployed-contracts/token-converters)\\n- [Chaos Labs recommendation](https://community.venus.io/t/chaos-labs-token-converter/4521)\",\"forDescription\":\"Execute this proposal\",\"againstDescription\":\"Do not execute this proposal\",\"abstainDescription\":\"Indifferent to execution\"}", - "passing": true, - "targets": [ - "0xa5622d276ccbb8d9bbe3d1ffd1bb11a0032e53f0", - "0xd9f101aa67f3d72662609a2703387242452078c3", - "0xa758c9c215b6c4198f0a0e3fa46395fa15db691b", - "0xe8ceaa79f082768f99266dfd208d665d2dd18f53", - "0xca430b8a97ea918ff634162acb0b731445b8195e", - "0xd5b9ae835f4c59272032b3b954417179573331e0" - ], - "values": ["0", "0", "0", "0", "0", "0"], - "signatures": [ - "setConversionConfigs(address,address[],(uint256,uint8)[])", - "setConversionConfigs(address,address[],(uint256,uint8)[])", - "setConversionConfigs(address,address[],(uint256,uint8)[])", - "setConversionConfigs(address,address[],(uint256,uint8)[])", - "setConversionConfigs(address,address[],(uint256,uint8)[])", - "setConversionConfigs(address,address[],(uint256,uint8)[])" - ], - "calldatas": [ - "0x00000000000000000000000055d398326f99059ff775485246999027b319795500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "0x00000000000000000000000055d398326f99059ff775485246999027b319795500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b100000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "0x0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "0x0000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f800000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c873402000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "0x000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c6300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe0000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001" - ], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1723556232", - "txHash": "0xa414b4494161bc0d18495955cd56c3e0198e688ca2cd8fde413ee7d8213ac6f5" - }, - "executed": { - "timestamp": "1723816062", - "txHash": "0x685c225c029aefa3964bfa45e4f0624dcf23f5a1cbb82df284e1bd8657fa96ff" - }, - "canceled": null, - "queued": { - "timestamp": "1723642972", - "txHash": "0xec69d21f1d87d1d64c7c35f48801af90eaabd39ebc19c7ada420c5a828943e1c" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe059785e010000", - "support": "FOR", - "votes": "13777102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed5e010000", - "support": "FOR", - "votes": "1168250000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d5e010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a5e010000", - "support": "FOR", - "votes": "13058470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d5e010000", - "support": "FOR", - "votes": "199226357358097054944", - "reason": null, - "voter": { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "totalVotesMantissa": "199226357358097054944" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c3575e010000", - "support": "FOR", - "votes": "9977051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0x680258c252f543db74b3e8a16345403b2e80125a5e010000", - "support": "FOR", - "votes": "1067731716588899751324", - "reason": null, - "voter": { - "id": "0x680258c252f543db74b3e8a16345403b2e80125a", - "totalVotesMantissa": "1071802795270327983237" - } - }, - { - "id": "0x69796191e5cb32eaaf1abf6bc1ce454e4e5a064f5e010000", - "support": "FOR", - "votes": "1900610293907734918039", - "reason": null, - "voter": { - "id": "0x69796191e5cb32eaaf1abf6bc1ce454e4e5a064f", - "totalVotesMantissa": "1900610293907734918039" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed23915e010000", - "support": "FOR", - "votes": "433351494678100717533085", - "reason": "Community delegators approved. This will encourage more conversion to be made.", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b5e010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e5e010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a195e010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "349", - "startBlock": "41193586", - "endBlock": "41222386", - "forVotes": "752149778071656668165969", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1723409637", - "type": "NORMAL", - "description": "{\"version\":\"v2\",\"title\":\"VIP-349 Venus Stars Program Renewal\",\"description\":\"#### Summary\\n\\nIf passed, this VIP will transfer to the [Venus Community Wallet](https://bscscan.com/address/0xc444949e0054A23c44Fc45789738bdF64aed2391) 193,000 USDT and 200,000 VAI, from the [Venus Treasury](https://bscscan.com/address/0xf322942f644a996a617bd29c16bd7d231d9f35e9) for the annual Venus Stars Program (Ambassador Program) budget renewal for the period of July 2024 - June 2025. All unused funds will be carried over and used in the next period as previously.\\n\\n#### Description\\n\\nThe Venus Stars Team suggests revising and enhancing the budget for the Venus Ambassadors program. With Venus expanding to multiple new blockchains, additional resources are necessary. The proposed restructuring aims to ensure that resources are appropriately allocated to meet the program's increasing needs, enabling effective outreach and support for our global community.\\n\\n#### Details\\n\\n- The estimated yearly budget total is $393K. We propose using a mix of VAI tokens already accumulated in the Venus Treasury and USDT to fund the program.\\n- This VIP will transfer: 200,000 VAI and 193,000 USDT to the Venus Community wallet address: [0xc444949e0054A23c44Fc45789738bdF64aed2391](https://bscscan.com/address/0xc444949e0054A23c44Fc45789738bdF64aed2391)\\n\\n#### References\\n\\n- [Venus Stars Program Renewal Snapshot](https://snapshot.org/#/venus-xvs.eth/proposal/0xfc7200b104fc61aa283ef25136c7d48d686f1edc2bb684d3da2904508ac69aa8)\\n- [Proposal: Venus Stars Program Renewal 2024](https://community.venus.io/t/proposal-venus-stars-program-renewal-2024/4488)\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/343)\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": [ - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9" - ], - "values": ["0", "0"], - "signatures": [ - "withdrawTreasuryBEP20(address,uint256,address)", - "withdrawTreasuryBEP20(address,uint256,address)" - ], - "calldatas": [ - "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000028de8d0c022cd6a00000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "0x0000000000000000000000004bd17003473389a42daf6a0a729f6fdb328bbbd7000000000000000000000000000000000000000000002a5a058fc295ed000000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391" - ], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1723150079", - "txHash": "0x21a094c5c7c20b955a7333d369537ba0ca56f6519009c1be13d71aef23c4f4fc" - }, - "executed": { - "timestamp": "1723409808", - "txHash": "0x778fd345eb8266f35d2d2f8b62cc3387ce7f61eeb02fecb5e555ae1cc72585f1" - }, - "canceled": null, - "queued": { - "timestamp": "1723236837", - "txHash": "0xd50050e75d00114d41e05f3ad31a13dfed5ed57c2221ad1b47bee8c0ae473ab3" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe059785d010000", - "support": "FOR", - "votes": "4297102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed5d010000", - "support": "FOR", - "votes": "1168250000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d5d010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x1c79eb2546e9e5c07a6be6cfb9c341a52eb107db5d010000", - "support": "FOR", - "votes": "2000000000000000000", - "reason": null, - "voter": { - "id": "0x1c79eb2546e9e5c07a6be6cfb9c341a52eb107db", - "totalVotesMantissa": "2000000000000000000" - } - }, - { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f85d010000", - "support": "FOR", - "votes": "801851714101606493084", - "reason": null, - "voter": { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "totalVotesMantissa": "801851714101606493084" - } - }, - { - "id": "0x299741f68fd5b59ca177795d824f9ce9f6843bba5d010000", - "support": "FOR", - "votes": "63404721729301508664", - "reason": null, - "voter": { - "id": "0x299741f68fd5b59ca177795d824f9ce9f6843bba", - "totalVotesMantissa": "63404721729301508664" - } - }, - { - "id": "0x4b1538f30b7bd01a5f3fbb02e376c734ed9bc66e5d010000", - "support": "FOR", - "votes": "286647359398186352914", - "reason": "Ἡ ψυχὴ τῶν νοημάτων ἓλκεται", - "voter": { - "id": "0x4b1538f30b7bd01a5f3fbb02e376c734ed9bc66e", - "totalVotesMantissa": "286647359398186352914" - } - }, - { - "id": "0x4fb395052ec1fdf60c975633bef218f0a90979b45d010000", - "support": "FOR", - "votes": "1197152300804669263205", - "reason": null, - "voter": { - "id": "0x4fb395052ec1fdf60c975633bef218f0a90979b4", - "totalVotesMantissa": "1197152300804669263205" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a5d010000", - "support": "FOR", - "votes": "3338470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d5d010000", - "support": "FOR", - "votes": "199226357358097054944", - "reason": null, - "voter": { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "totalVotesMantissa": "199226357358097054944" - } - }, - { - "id": "0x59c3e411ce0f4c0a95d587bbfadbb7b9dfff8c0f5d010000", - "support": "FOR", - "votes": "3553134169023", - "reason": "0x14b421445a93a7173a164b42db9f5a898151cbfcd6a21af05d4cf326d1426b41", - "voter": { - "id": "0x59c3e411ce0f4c0a95d587bbfadbb7b9dfff8c0f", - "totalVotesMantissa": "3783405132447" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c3575d010000", - "support": "FOR", - "votes": "142051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0x8dd7b41c2a54f4ae983b5240eff60977494e65ed5d010000", - "support": "FOR", - "votes": "10000000000000000000", - "reason": null, - "voter": { - "id": "0x8dd7b41c2a54f4ae983b5240eff60977494e65ed", - "totalVotesMantissa": "10000000000000000000" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed23915d010000", - "support": "FOR", - "votes": "422221862502414366428894", - "reason": "Community delegators approved.", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b5d010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a5d010000", - "support": "FOR", - "votes": "1002000000000000000", - "reason": null, - "voter": { - "id": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a", - "totalVotesMantissa": "1002000000000000000" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e5d010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a195d010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0xfde2e514f35c23e9950bb15163c75baed6912da35d010000", - "support": "FOR", - "votes": "11000441812099855686804", - "reason": null, - "voter": { - "id": "0xfde2e514f35c23e9950bb15163c75baed6912da3", - "totalVotesMantissa": "0" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "348", - "startBlock": "40952905", - "endBlock": "40981705", - "forVotes": "734344226370510988269891", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1722534326", - "type": "FAST_TRACK", - "description": "{\"version\":\"v2\",\"title\":\"VIP-348 [Ethereum] Market Emission Adjustment\",\"description\":\"#### Summary\\n\\nAfter the successful passing of the [snapshot vote](https://snapshot.org/#/venus-xvs.eth/proposal/0x508fc5f4eefae40532ebc5bbf3c917ea9e4460a5a916eca7f5cb371624815dc0) to adjust the XVS emissions on Ethereum, if passed, this VIP will update the distribution speeds for the different Ethereum markets.\\n\\nThe current emission on Ethereum markets is 1,271.1 XVS/day, and after the change the daily emission of XVS in these markets will be 1,007.5 XVS/day.\\n\\n#### Details\\n\\nSpecifically, the changes in the monthly XVS emissions are:\\n\\nCore pool:\\n\\n- WETH. From 1,125 XVS/month to 844 XVS/month (-25%)\\n- WBTC. From 3,375 XVS/month to 2,531 XVS/month (-25%)\\n- USDT. From 3,375 XVS/month to 3,038 XVS/month (-10%)\\n- USDC. From 3,375 XVS/month to 3,038 XVS/month (-10%)\\n- crvUSD. From 1,500 XVS/month to 750 XVS/month (-50%)\\n- FRAX. From 600 XVS/month to 300 XVS/month (-50%)\\n- sFRAX. From 600 XVS/month to 300 XVS/month (-50%)\\n- TUSD. From 200 XVS/month to 100 XVS/month (-50%)\\n- DAI. From 500 XVS/month to 250 XVS/month (-50%)\\n\\nCurve pool:\\n\\n- CRV. From 375 XVS/month to 188 XVS/month (-50%)\\n- crvUSD. From 375 XVS/month to 188 XVS/month (-50%)\\n\\nLST pool:\\n\\n- ETH. From 18,333 XVS/month to 16,500 XVS/month (-10%)\\n- wstETH. From 3,600 XVS/month to 1,800 XVS/month (-50%)\\n- sfrxETH. From 800 XVS/month to 400 XVS/month (-50%)\\n\\n#### References\\n\\n- [Snapshot](https://snapshot.org/#/venus-xvs.eth/proposal/0x508fc5f4eefae40532ebc5bbf3c917ea9e4460a5a916eca7f5cb371624815dc0)\\n- [Community post proposing the XVS emission adjustment on Ethereum](https://community.venus.io/t/emissions-adjustments-for-eth-mainnet/4480)\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/331)\\n- RewardsDistributor contracts:\\n - [XVS RewardsDistributor for the Core pool (1)](https://etherscan.io/address/0x134bfDEa7e68733921Bc6A87159FB0d68aBc6Cf8)\\n - [XVS RewardsDistributor for the Core pool (2)](https://etherscan.io/address/0x886767B62C7ACD601672607373048FFD96Cf27B2)\\n - [XVS RewardsDistributor for the Curve pool (1)](https://etherscan.io/address/0x8473B767F68250F5309bae939337136a899E43F9)\\n - [XVS RewardsDistributor for the Curve pool (2)](https://etherscan.io/address/0x461dE281c453F447200D67C9Dd31b3046c8f49f8)\\n - [XVS RewardsDistributor for the LST pool (1)](https://etherscan.io/address/0x7A91bEd36D96E4e644d3A181c287E0fcf9E9cc98)\\n - [XVS RewardsDistributor for the LST pool (2)](https://etherscan.io/address/0x1e25CF968f12850003Db17E0Dba32108509C4359)\\n\\n#### Disclaimer for Ethereum VIPs\\n\\nPrivilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x0523ca9fae18ba3e27664eddf4c2e8787e2791b971b347a00b7e71a590afaedf) multisig transaction will be executed. Otherwise, it will be rejected.\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": ["0x555ba73db1b006f3f2c7db7126d6e4343adbce02"], - "values": ["1"], - "signatures": [""], - "calldatas": ["0x"], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1722425963", - "txHash": "0x7970c74beda8a501e0ea863d6f12520e56a7387835a8b6114edf51042b9d8532" - }, - "executed": { - "timestamp": "1722534372", - "txHash": "0xacb8a6a6018cfff85107eca61402002dc920797723473f4bc16888fdfd090cab" - }, - "canceled": null, - "queued": { - "timestamp": "1722512726", - "txHash": "0x22c6b3a217539a274ce68e982c89d72f7c4388c0e39cea0149c21f9f1cb7bd4e" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe059785c010000", - "support": "FOR", - "votes": "4297102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed5c010000", - "support": "FOR", - "votes": "1166000000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d5c010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x233506d641310d0fc34938ef0a8cbe90efca4fec5c010000", - "support": "FOR", - "votes": "1687000030424725054277", - "reason": null, - "voter": { - "id": "0x233506d641310d0fc34938ef0a8cbe90efca4fec", - "totalVotesMantissa": "1695000030424725054277" - } - }, - { - "id": "0x2626600b9a04607b876afd155d7bef6832ac25ef5c010000", - "support": "FOR", - "votes": "8314092906506949935206", - "reason": null, - "voter": { - "id": "0x2626600b9a04607b876afd155d7bef6832ac25ef", - "totalVotesMantissa": "0" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a5c010000", - "support": "FOR", - "votes": "3338470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d5c010000", - "support": "FOR", - "votes": "199226357358097054944", - "reason": null, - "voter": { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "totalVotesMantissa": "199226357358097054944" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c3575c010000", - "support": "FOR", - "votes": "142051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed23915c010000", - "support": "FOR", - "votes": "407779967776023765017027", - "reason": "Community delegators approved.", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b5c010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e5c010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a195c010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "347", - "startBlock": "40900225", - "endBlock": "40929025", - "forVotes": "732870666544909391354795", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1722375732", - "type": "FAST_TRACK", - "description": "{\"version\":\"v2\",\"title\":\"VIP-347 [Ethereum] Risk Parameters Adjustments (PT-weETH-DEC24)\",\"description\":\"This VIP will perform the following Risk Parameter actions as per Chaos Labs’ latest recommendations in this Venus community forum publication: [Chaos Labs - Supply Cap Recommendation for PT-weETH - 07.24.2024](https://community.venus.io/t/chaos-labs-supply-cap-recommendation-for-pt-weeth-07-24-2024/4483/2).\\n\\n- [PT-wETH-26DEC2024 (Liquid Staked ETH)](https://etherscan.io/address/0x76697f8eaeA4bE01C678376aAb97498Ee8f80D5C): increase supply cap from 1,200 to 2,400\\n\\nComplete analysis and details of these recommendations are available in the above publication.\\n\\n#### References\\n\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/329)\\n\\n#### Disclaimer for Ethereum VIPs\\n\\nPrivilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x299f67a2733432ee74d856b598c6193faf0bfc5f633795b55480f36addd682a4&safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67) multisig transaction will be executed. Otherwise, it will be rejected.\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": ["0x555ba73db1b006f3f2c7db7126d6e4343adbce02"], - "values": ["1"], - "signatures": [""], - "calldatas": ["0x"], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1722267457", - "txHash": "0xce36b4bd841fa681b4e9374a854b061462e9f0f1aa18ef101291efc93e589121" - }, - "executed": { - "timestamp": "1722378808", - "txHash": "0x72882a78508c8614714227c18fb2969b60f87653380da0e7ff38a6a2dcb37a42" - }, - "canceled": null, - "queued": { - "timestamp": "1722354132", - "txHash": "0x4b739acb7f4d968000c7f583b00d6e665563b70e44ccbf6dd38cadc2d10fd54c" - }, - "votes": [ - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed5b010000", - "support": "FOR", - "votes": "1166000000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1aac35c305d28fd74edfa2d787facabb8bcbd4955b010000", - "support": "FOR", - "votes": "7034867979848956450815", - "reason": null, - "voter": { - "id": "0x1aac35c305d28fd74edfa2d787facabb8bcbd495", - "totalVotesMantissa": "7100560063990706619455" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d5b010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f85b010000", - "support": "FOR", - "votes": "801851714101606493084", - "reason": null, - "voter": { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "totalVotesMantissa": "801851714101606493084" - } - }, - { - "id": "0x4fb395052ec1fdf60c975633bef218f0a90979b45b010000", - "support": "FOR", - "votes": "1179216624617963638137", - "reason": null, - "voter": { - "id": "0x4fb395052ec1fdf60c975633bef218f0a90979b4", - "totalVotesMantissa": "1197152300804669263205" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a5b010000", - "support": "FOR", - "votes": "3338470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d5b010000", - "support": "FOR", - "votes": "199226357358097054944", - "reason": null, - "voter": { - "id": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "totalVotesMantissa": "199226357358097054944" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c3575b010000", - "support": "FOR", - "votes": "142051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed23915b010000", - "support": "FOR", - "votes": "407294859671133875870307", - "reason": "Community delegators approved. ", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b5b010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a5b010000", - "support": "FOR", - "votes": "1002000000000000000", - "reason": null, - "voter": { - "id": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a", - "totalVotesMantissa": "1002000000000000000" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e5b010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a195b010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "346", - "startBlock": "40816688", - "endBlock": "40845488", - "forVotes": "724526856486012757789664", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1722275964", - "type": "NORMAL", - "description": "{\"version\":\"v2\",\"title\":\"VIP-346 Payments issuance for audits and other expenses\",\"description\":\"#### Summary\\n\\nIf passed this VIP will perform the following actions:\\n\\n- Transfer 35,000 USDT to Certik for the retainer program (July and August 2024)\\n- Transfer 7,500 USDT to Fairyproof for the audit of Two Kinks Interest Rates\\n- Transfer 21,600 USDC to Chainalysis for the yearly subscription fee renewal\\n- Transfer 170,000 USDC to ChaosLabs for the Quarterly fee\\n- Transfer 3,000 USDT to ChainPatrol\\n- Transfer assets back to the community wallet for various deployments GAS refund\\n- Transfer 68,000 XVS and 833.33 BNB to Skynet for the liquidity management of XVS\\n\\n#### Details\\n\\n**Certik - retainer program**\\n\\n- Auditor: Certik ([https://certik.com](https://certik.com/))\\n- Concept: Retainer program - monthly payment of July and August 2024. Scheduled audits by Certik in July and August: Two Kinks Interest Rates\\n- Cost: 35,000 USDT, to be sent to the BEP20 address 0x4cf605b238e9c3c72d0faed64d12426e4a54ee12\\n\\n**Fairyproof - Two Kinks Interest Rates**\\n\\n- Auditor: Fairyproof ([https://www.fairyproof.com](https://www.fairyproof.com/))\\n- Payload: Two Kinks Interest Rates ([here](https://github.com/VenusProtocol/venus-protocol/pull/494) and [here](https://github.com/VenusProtocol/isolated-pools/pull/417))\\n- Status: audit started on July 26th, 2024. It should take 3 days\\n- Cost: 7,500 USDT, to be sent to the BEP20 address 0x060a08fff78aedba4eef712533a324272bf68119\\n\\n**Chainalysis**\\n\\n- [http://chainalysis.com](http://chainalysis.com/)\\n- Entity Risking - Silver plan - All Assets 100,000 Screens / Annual\\n- Support Level - Gold - Commercial\\n- Payment to be sent to the community wallet to issue payment\\n- Cost: 21,600 USDC, to be sent to the BEP20 address: 0xc444949e0054A23c44Fc45789738bdF64aed2391\\n\\n**Chaos Labs**\\n\\n- [https://chaoslabs.xyz](https://chaoslabs.xyz/)\\n- Quarterly payment of Q3-2024 USDC 100,000.00\\n- Q3-2024 Additional deployment (Ethereum) USDC 30,000\\n- Q2-Q3 Additional Deployment (Arbitrum) Prorated 4 months USDC 40,000\\n- Cost: 170,000 USDC, to be sent to the BEP20 address 0xfb1912af5b9d3fb678f801bf764e98f1c217ef35\\n\\n**ChainPatrol**\\n\\n- [https://chainpatrol.io](https://chainpatrol.io/)\\n- [Proposal:](https://community.venus.io/t/proposal-to-venus-protocol-enhancing-security-and-trust-with-chainpatrol/4474) Enhancing Security and Trust with ChainPatrol.\\n- Pay $3,000 USD ($250 USD/mo) for 1 Year Contract\\n- [Snapshot vote](https://snapshot.org/#/venus-xvs.eth/proposal/0x66e9a98483a28125452b502feddcfcdc38a626ed25754bebb79c1a7fbd97f058)\\n- Cost: 3,000 USDT, to be sent to the BEP20 address 0x3D9d22E1821Be3b1Ce2A8ACB6FE47fFEF04243c3\\n\\n**Community Refunds**\\n\\n- [2 BNB](https://bscscan.com/tx/0xf74d485ecba35d2081070d6661854633713e18354d333069141077cdb7389e25) provided for VIP-330 Timelock GAS\\n- [30 USDT](https://etherscan.io/tx/0xc5f5029d26caa1ad9c1bbb361825ae352218f39d804c0831caaa698d10b4f888) converted to ETH to Release Funds on ETH Converters\\n- [270 USDT](https://etherscan.io/tx/0x6935ee847c3d87d6d0a35e9896c6342704ecd5ed8264412e41858e2582013fb9) converted to ETH to Release Funds on ETH Converters\\n- [636.61 USDT](https://etherscan.io/tx/0x8eac6be59707fe1553474ff649594cc3b68e1a735b3dd8598740f93e9b7260fe) Swapped to ETH for VIP-335 ETH Comptroller Upgrade GAS\\n- [313 USDC](https://bscscan.com/tx/0x67e836eacf4dc429deff03d69cc5ac05e4b815180b92b5b19595ae98b9e6745f) converted to ETH for VIP-335 Execution\\n- Total: 2 BNB / 936.61 USDT / 313 USDC, to be sent to the BEP20 address 0xc444949e0054A23c44Fc45789738bdF64aed2391\\n\\n**Skynet Trading**\\n\\n- [https://skynettrading.com](https://skynettrading.com/)\\n- Liquidity Management budget Increase (XVS/BNB) pair.\\n- Cost: 68,000 XVS ($500K, assuming 1 XVS = $7.35) and 833.33 BNB ($500K, assuming 1 BNB= $600)\\n- [Proposal](https://community.venus.io/t/proposal-liquidity-management-budget-increase-xvs-bnb/4482)\\n- [Snapshot Vote](https://snapshot.org/#/venus-xvs.eth/proposal/0x5e83f140833485f59fb7190b77088dfe5d76879500c233f7afe202315097aa41)\\n- Funds to be transferred to the DeFiTech/SkyNet Multisig\\n- BEP20: 0x4124E7aAAfd7F29ad6E6914B80179060B8bE871c\\n\\n#### References\\n\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/333)\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": [ - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xc53ffda840b51068c64b2e052a5715043f634bcd", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c", - "0xc444949e0054a23c44fc45789738bdf64aed2391", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9", - "0xfd36e2c2a6789db23113685031d7f16329158384", - "0x4124e7aaafd7f29ad6e6914b80179060b8be871c", - "0xf322942f644a996a617bd29c16bd7d231d9f35e9" - ], - "values": [ - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "0", - "2000000000000000000", - "0", - "0", - "0", - "833330000000000000000", - "0" - ], - "signatures": [ - "withdrawTreasuryBEP20(address,uint256,address)", - "withdrawTreasuryBEP20(address,uint256,address)", - "withdrawTreasuryBEP20(address,uint256,address)", - "withdrawTreasuryBEP20(address,uint256,address)", - "redeemUnderlyingAndTransfer(address,address,uint256,address)", - "withdrawTreasuryBEP20(address,uint256,address)", - "withdrawTreasuryBEP20(address,uint256,address)", - "withdraw(uint256)", - "", - "withdrawTreasuryBEP20(address,uint256,address)", - "withdrawTreasuryBEP20(address,uint256,address)", - "_grantXVS(address,uint256)", - "", - "withdrawTreasuryBEP20(address,uint256,address)" - ], - "calldatas": [ - "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000007695a92c20d6fe000000000000000000000000000004cf605b238e9c3c72d0faed64d12426e4a54ee12", - "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000001969368974c05b00000000000000000000000000000060a08fff78aedba4eef712533a324272bf68119", - "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000000000000000000000000492f037764b95800000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "0x000000000000000000000000eca88125a5adbe82614ffc12d0db554e2e2867c80000000000000000000000000000000000000000000000000000e6e81179dc00000000000000000000000000c53ffda840b51068c64b2e052a5715043f634bcd", - "0x000000000000000000000000eca88125a5adbe82614ffc12d0db554e2e2867c8000000000000000000000000f322942f644a996a617bd29c16bd7d231d9f35e9000000000000000000000000000000000000000000000d028f86ff8671380000000000000000000000000000f322942f644a996a617bd29c16bd7d231d9f35e9", - "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d0000000000000000000000000000000000000000000023ffb7ed6565d6400000000000000000000000000000fb1912af5b9d3fb678f801bf764e98f1c217ef35", - "0x000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c00000000000000000000000000000000000000000000002d4888513b630d0000000000000000000000000000939bd8d64c0a9583a7dcea9933f7b21697ab6396", - "0x00000000000000000000000000000000000000000000002d4888513b630d0000", - "0x", - "0x00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000000000000000000000000032c61328a0a69d0000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000000000000000000000000010f7bf61a7a9440000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "0x0000000000000000000000004124e7aaafd7f29ad6e6914b80179060b8be871c000000000000000000000000000000000000000000000e664992288f22800000", - "0x", - "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000000a2a15d09519be000000000000000000000000000003d9d22e1821be3b1ce2a8acb6fe47ffef04243c3" - ], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1722016362", - "txHash": "0xa776b580205bd77d410bcba8ffac771f7393f22af5a5d2dd059f5d7e98b966be" - }, - "executed": { - "timestamp": "1722276076", - "txHash": "0x211c3036c345350c47f9d3f4de1751838d75f2a8f1435131b73c914b09c362d8" - }, - "canceled": null, - "queued": { - "timestamp": "1722103164", - "txHash": "0xe10d420fda0ea567200153382452ae6fe75442c1700a47c4fa038459b49992e4" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe059785a010000", - "support": "FOR", - "votes": "4297102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed5a010000", - "support": "FOR", - "votes": "1166000000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d5a010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x1c25523a33128dc87ff6f26c444a981b03a97f1e5a010000", - "support": "FOR", - "votes": "7986304696458341870", - "reason": null, - "voter": { - "id": "0x1c25523a33128dc87ff6f26c444a981b03a97f1e", - "totalVotesMantissa": "7986304696458341870" - } - }, - { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f85a010000", - "support": "FOR", - "votes": "801851714101606493084", - "reason": null, - "voter": { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "totalVotesMantissa": "801851714101606493084" - } - }, - { - "id": "0x299741f68fd5b59ca177795d824f9ce9f6843bba5a010000", - "support": "FOR", - "votes": "63404721729301508664", - "reason": null, - "voter": { - "id": "0x299741f68fd5b59ca177795d824f9ce9f6843bba", - "totalVotesMantissa": "63404721729301508664" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a5a010000", - "support": "FOR", - "votes": "3338470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c3575a010000", - "support": "FOR", - "votes": "142051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed23915a010000", - "support": "FOR", - "votes": "407289674445287940237609", - "reason": "Community delegators Approved. ", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b5a010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e5a010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a195a010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "345", - "startBlock": "40815445", - "endBlock": "40844245", - "forVotes": "724526856486012757789664", - "againstVotes": "0", - "abstainVotes": "0", - "executionEta": "1722272875", - "type": "NORMAL", - "description": "{\"version\":\"v2\",\"title\":\"VIP-345 [Ethereum] New ezETH market in the Liquid Staked ETH pool\",\"description\":\"### Summary\\n\\nIf passed, following the Community proposal “[Support ezETH as collateral on ETH Mainnet and BNB Chain](https://community.venus.io/t/support-ezeth-as-collateral-on-eth-mainnet-and-bnb-chain/4415)” and [the associated snapshot](https://snapshot.org/#/venus-xvs.eth/proposal/0xc2db89a9e361c9da0f9a545411b66b0decb68ed2916fb8171f12c7213a53d088), this VIP adds a market for the [ezETH token](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110) ([Renzo Protocol](https://www.renzoprotocol.com/)) into the Liquid Staked ETH pool on Ethereum.\\n\\n### Description\\n\\n#### Risk parameters\\n\\nFollowing [Chaos Labs recommendations](https://community.venus.io/t/support-ezeth-as-collateral-on-eth-mainnet-and-bnb-chain/4415/4), the risk parameters for the new market are:\\n\\nUnderlying token: [ezETH](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110)\\n\\n* Borrow cap: 1,400\\n* Supply cap: 14,000\\n* Collateral factor: 80%\\n* Liquidation threshold: 85%\\n* Reserve factor: 20%\\n\\nBootstrap liquidity: 1.41 ezETH - provided by the [Renzo Protocol](https://etherscan.io/address/0x1e3233e8d972cffc7d0f83afae4354a0db74e34e).\\n\\nInterest rate curve for the new market:\\n\\n* kink: 45%\\n* base (yearly): 0%\\n* multiplier (yearly): 9%\\n* jump multiplier (yearly): 75%\\n\\n#### Oracles configuration\\n\\nThe [ResilientOracle](https://docs-v4.venus.io/risk/resilient-price-oracle) deployed to [Ethereum](https://etherscan.io/address/0xd2ce3fb018805ef92b8C5976cb31F84b4E295F94) is used for ezETH, with the following configuration. The OneJumpOracle is used to get the USD price of ezETH, first getting the conversion rate ezETH/WETH using the feeds from RedStone or Chainlink, and then getting the USD price using the [Chainlink price feed for ETH/USD](https://etherscan.io/address/0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419).\\n\\n* MAIN oracle\\n * Contract: [OneJumpOracle](https://etherscan.io/address/0xf689AD140BDb9425fB83ba6f55866447244b5a23)\\n * CORRELATED_TOKEN: [ezETH](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110)\\n * UNDERLYING_TOKEN: [WETH](https://etherscan.io/address/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2)\\n * INTERMEDIATE_ORACLE: [RedStoneOracle](https://etherscan.io/address/0x0FC8001B2c9Ec90352A46093130e284de5889C86), using its price feed [ezETH/ETH](https://etherscan.io/address/0xF4a3e183F59D2599ee3DF213ff78b1B3b1923696)\\n* PIVOT and FALLBACK:\\n * Contract: [OneJumpOracle](https://etherscan.io/address/0xD63011ddAc93a6f8348bf7E6Aeb3E30Ad7B46Df8)\\n * CORRELATED_TOKEN: [ezETH](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110)\\n * UNDERLYING_TOKEN: [WETH](https://etherscan.io/address/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2)\\n * INTERMEDIATE_ORACLE: [ChainlinkOracle](https://etherscan.io/address/0x94c3A2d6B7B2c051aDa041282aec5B0752F8A1F2), using its price feed [ezETH/ETH](https://etherscan.io/address/0x636A000262F6aA9e1F094ABF0aD8f645C44f641C)\\n* Thresholds in the bound validator: 0.99 - 1.01\\n\\n#### Security and additional considerations\\n\\nWe applied the following security procedures for this upgrade:\\n\\n* **Audits:** [Quantstamp](https://github.com/VenusProtocol/oracle/blob/5cd52976a4c4d24e11ab34ca3aa5f99837eef593/audits/100_correlated_token_oracles_quantstamp_20240412.pdf), [Certik](https://github.com/VenusProtocol/oracle/blob/5cd52976a4c4d24e11ab34ca3aa5f99837eef593/audits/098_correlated_token_oracles_certik_20240412.pdf) and [Fairyproof](https://github.com/VenusProtocol/oracle/blob/5cd52976a4c4d24e11ab34ca3aa5f99837eef593/audits/101_correlated_token_oracles_fairyproof_20240328.pdf) have audited the OneJumpOracle.\\n* **VIP execution simulation:** in a simulation environment, validating the new market is properly added to the Liquid Staked ETH pool on Ethereum, with the right parameters and the expected bootstrap liquidity\\n* **Deployment on testnet:** the same market has been deployed to sepolia, and used in the Venus Protocol testnet deployment\\n\\n#### Deployed contracts\\n\\n* Mainnet vezETH_LiquidStakedETH: [0xA854D35664c658280fFf27B6eDC6C4195c3229B3](https://etherscan.io/address/0xA854D35664c658280fFf27B6eDC6C4195c3229B3)\\n* Testnet vezETH_LiquidStakedETH: [0xF4C1B7528f8B266D8ADf1a85c91d93114FeDbA2A](https://sepolia.etherscan.io/address/0xF4C1B7528f8B266D8ADf1a85c91d93114FeDbA2A)\\n\\n#### References\\n\\n* [VIP simulation](https://github.com/VenusProtocol/vips/pull/328)\\n* [Code of OneJumpOracle](https://github.com/VenusProtocol/oracle/blob/develop/contracts/oracles/OneJumpOracle.sol)\\n* [Documentation](https://docs-v4.venus.io/risk/resilient-price-oracle#correlated-token-oracles) \\n\\n#### Disclaimer for Ethereum VIPs\\n\\nPrivilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0xd2a4cf0ef50774d47f5744e48c1317d5de7c48b7f2340cbaaf0d0b216b1236ac) multisig transaction will be executed. Otherwise, it will be rejected.\",\"forDescription\":\"I agree that Venus Protocol should proceed with this proposal\",\"againstDescription\":\"I do not think that Venus Protocol should proceed with this proposal\",\"abstainDescription\":\"I am indifferent to whether Venus Protocol proceeds or not\"}", - "passing": true, - "targets": ["0x939bd8d64c0a9583a7dcea9933f7b21697ab6396"], - "values": ["1"], - "signatures": [""], - "calldatas": ["0x"], - "proposer": { - "id": "0x55a9f5374af30e3045fb491f1da3c2e8a74d168d" - }, - "created": { - "timestamp": "1722012627", - "txHash": "0xfa61989b6b1ffeac2db196886a90ff19ad4b1ca5ded07dea0fff8274b0e16d77" - }, - "executed": { - "timestamp": "1722273414", - "txHash": "0x83bf35a4d86f0c0b4b2cfe535006cf1becc9df3e49abe2fa0181f7af6d906362" - }, - "canceled": null, - "queued": { - "timestamp": "1722100075", - "txHash": "0xf44368efd273825fc5426543ee66fe9d889e9e19d2469eca6296d96cedf17285" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe0597859010000", - "support": "FOR", - "votes": "4297102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed59010000", - "support": "FOR", - "votes": "1166000000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d59010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x1c25523a33128dc87ff6f26c444a981b03a97f1e59010000", - "support": "FOR", - "votes": "7986304696458341870", - "reason": null, - "voter": { - "id": "0x1c25523a33128dc87ff6f26c444a981b03a97f1e", - "totalVotesMantissa": "7986304696458341870" - } - }, - { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f859010000", - "support": "FOR", - "votes": "801851714101606493084", - "reason": null, - "voter": { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "totalVotesMantissa": "801851714101606493084" - } - }, - { - "id": "0x299741f68fd5b59ca177795d824f9ce9f6843bba59010000", - "support": "FOR", - "votes": "63404721729301508664", - "reason": null, - "voter": { - "id": "0x299741f68fd5b59ca177795d824f9ce9f6843bba", - "totalVotesMantissa": "63404721729301508664" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a59010000", - "support": "FOR", - "votes": "3338470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c35759010000", - "support": "FOR", - "votes": "142051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed239159010000", - "support": "FOR", - "votes": "407289674445287940237609", - "reason": "Community delegators approved.", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b59010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e59010000", - "support": "FOR", - "votes": "15189102236520590757127", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a1959010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - }, - { - "proposalId": "344", - "startBlock": "40785885", - "endBlock": "40814685", - "forVotes": "736803130250749716984954", - "againstVotes": "1001727281834443881027", - "abstainVotes": "0", - "executionEta": "1722183252", - "type": "NORMAL", - "description": "{\"version\":\"v2\",\"title\":\"VIP-344 [Ethereum] Distribution Speed Adjustment for the XVS Vault\",\"description\":\"#### Summary\\n\\nIf passed, this VIP will transfer the converted XVS tokens from the [XVS Vault Treasury](https://etherscan.io/address/0xaE39C38AF957338b3cEE2b3E5d825ea88df02EfE) to the [XVS Store](https://etherscan.io/address/0x1db646e1ab05571af99e47e8f909801e5c99d37b) and adjust the XVS Vault distribution speed.\\n\\n- Transfer 6,893 XVS from the [XVS Vault Treasury](https://etherscan.io/address/0xaE39C38AF957338b3cEE2b3E5d825ea88df02EfE) to the [XVS Store](https://etherscan.io/address/0x1db646e1ab05571af99e47e8f909801e5c99d37b) for distribution.\\n- Increase the XVS distribution speed from 250 XVS/Day to 310 XVS/day.\\n\\n#### Description\\n\\nA total of 6,893 XVS has been converted through a buyback during Q2 2024 using the [XVS converter](https://etherscan.io/address/0x1FD30e761C3296fE36D9067b1e398FD97B4C0407). These tokens will be added to the distribution as per our [Tokenomics V4](https://app.venus.io/#/governance/proposal/332?chainId=56) and [ETH Deployment Proposal](https://community.venus.io/t/xvs-ethereum-mainnet-development-program-with-lido-frax-curve-and-gitcoin/4200).\\n\\nThe converted XVS is currently held in the [XVS Vault Treasury](https://etherscan.io/address/0xaE39C38AF957338b3cEE2b3E5d825ea88df02EfE) and needs to be transferred to the [XVS Store](https://etherscan.io/address/0x1db646e1ab05571af99e47e8f909801e5c99d37b) for distribution.\\n\\nThe new distribution speed will be increased from 250 XVS/day to 310 XVS/day, which is estimated to increase the vault APR from 12% to 15%.\\n\\n#### References\\n\\n- [Tokenomics V4](https://app.venus.io/#/governance/proposal/332?chainId=56)\\n- [ETH Deployment Proposal](https://community.venus.io/t/xvs-ethereum-mainnet-development-program-with-lido-frax-curve-and-gitcoin/4200)\\n- [VIP simulation](https://github.com/VenusProtocol/vips/pull/330)\\n\\n#### Disclaimer for Ethereum VIPs\\n\\nPrivilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x26a82f80811aebe17b3dc863726075581db822b08381f9bb75feb1600a4d11e6) multisig transaction will be executed. Otherwise, it will be rejected.\",\"forDescription\":\"Execute this proposal\",\"againstDescription\":\"Do not execute this proposal\",\"abstainDescription\":\"Indifferent to execution\"}", - "passing": true, - "targets": ["0x939bd8d64c0a9583a7dcea9933f7b21697ab6396"], - "values": ["1"], - "signatures": [""], - "calldatas": ["0x"], - "proposer": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391" - }, - "created": { - "timestamp": "1721923763", - "txHash": "0x2426f9c0a21626b917a7ab68e27fec2262c47758bb6dc5fb0cd5bd3cf0d23ce1" - }, - "executed": { - "timestamp": "1722183653", - "txHash": "0xbfb59828a4b0fef18b88affca4980834dd015ecceff2ef0303bc7fd0e1cf32df" - }, - "canceled": null, - "queued": { - "timestamp": "1722010452", - "txHash": "0xb4f41b3a6bf80c317c1ac63c06841b0331a0f7f74fa2bf4ac8141ef2958882aa" - }, - "votes": [ - { - "id": "0x03397520a5c1c27bba59852795764ebf1fe0597858010000", - "support": "FOR", - "votes": "4297102348559360929", - "reason": null, - "voter": { - "id": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "totalVotesMantissa": "13777102348559360929" - } - }, - { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed58010000", - "support": "FOR", - "votes": "1166000000000000000000", - "reason": null, - "voter": { - "id": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "totalVotesMantissa": "1169370000000000000000" - } - }, - { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d58010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "totalVotesMantissa": "100000000000000000000000" - } - }, - { - "id": "0x1c79eb2546e9e5c07a6be6cfb9c341a52eb107db58010000", - "support": "FOR", - "votes": "2000000000000000000", - "reason": null, - "voter": { - "id": "0x1c79eb2546e9e5c07a6be6cfb9c341a52eb107db", - "totalVotesMantissa": "2000000000000000000" - } - }, - { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f858010000", - "support": "FOR", - "votes": "801851714101606493084", - "reason": null, - "voter": { - "id": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "totalVotesMantissa": "801851714101606493084" - } - }, - { - "id": "0x2626600b9a04607b876afd155d7bef6832ac25ef58010000", - "support": "FOR", - "votes": "8163577383031450017859", - "reason": null, - "voter": { - "id": "0x2626600b9a04607b876afd155d7bef6832ac25ef", - "totalVotesMantissa": "0" - } - }, - { - "id": "0x3189b40140cac6c20d5de8a37d667cc6a866d41b58010000", - "support": "FOR", - "votes": "1129288737856030085845", - "reason": null, - "voter": { - "id": "0x3189b40140cac6c20d5de8a37d667cc6a866d41b", - "totalVotesMantissa": "1138020574640866898738" - } - }, - { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a58010000", - "support": "FOR", - "votes": "3338470954295420970", - "reason": null, - "voter": { - "id": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "totalVotesMantissa": "13058470954295420970" - } - }, - { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c35758010000", - "support": "FOR", - "votes": "142051682906883578", - "reason": null, - "voter": { - "id": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "totalVotesMantissa": "9977051682906883578" - } - }, - { - "id": "0xbdc1faea0cb9121df6afd0e47accd3048ba0133758010000", - "support": "FOR", - "votes": "1015965846030073973859", - "reason": null, - "voter": { - "id": "0xbdc1faea0cb9121df6afd0e47accd3048ba01337", - "totalVotesMantissa": "1023789395302644368193" - } - }, - { - "id": "0xc444949e0054a23c44fc45789738bdf64aed239158010000", - "support": "FOR", - "votes": "410181267722260581017158", - "reason": "Community delegators approved.", - "voter": { - "id": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "totalVotesMantissa": "437837581623654695102944" - } - }, - { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b58010000", - "support": "FOR", - "votes": "100001059438691098785833", - "reason": null, - "voter": { - "id": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "totalVotesMantissa": "100001059438691098785833" - } - }, - { - "id": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a58010000", - "support": "FOR", - "votes": "1002000000000000000", - "reason": null, - "voter": { - "id": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a", - "totalVotesMantissa": "1002000000000000000" - } - }, - { - "id": "0xf5a78c15dd8013b8ed622c3b9b316e8ef5a6f61f58010000", - "support": "AGAINST", - "votes": "1001727281834443881027", - "reason": "Xvs core pool also needs xvs distribution apy ", - "voter": { - "id": "0xf5a78c15dd8013b8ed622c3b9b316e8ef5a6f61f", - "totalVotesMantissa": "1557617191655254701525" - } - }, - { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e58010000", - "support": "FOR", - "votes": "14333339783793114945839", - "reason": null, - "voter": { - "id": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "totalVotesMantissa": "15189102236520590757127" - } - }, - { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a1958010000", - "support": "FOR", - "votes": "100000000000000000000000", - "reason": null, - "voter": { - "id": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "totalVotesMantissa": "100000000000000000000000" - } - } - ], - "remoteProposals": [] - } - ], - "total": [ - { - "id": "1" - }, - { - "id": "10" - }, - { - "id": "100" - }, - { - "id": "101" - }, - { - "id": "102" - }, - { - "id": "103" - }, - { - "id": "104" - }, - { - "id": "105" - }, - { - "id": "106" - }, - { - "id": "107" - }, - { - "id": "108" - }, - { - "id": "109" - }, - { - "id": "11" - }, - { - "id": "110" - }, - { - "id": "111" - }, - { - "id": "112" - }, - { - "id": "113" - }, - { - "id": "114" - }, - { - "id": "115" - }, - { - "id": "116" - }, - { - "id": "117" - }, - { - "id": "118" - }, - { - "id": "119" - }, - { - "id": "12" - }, - { - "id": "120" - }, - { - "id": "121" - }, - { - "id": "122" - }, - { - "id": "123" - }, - { - "id": "124" - }, - { - "id": "125" - }, - { - "id": "126" - }, - { - "id": "127" - }, - { - "id": "128" - }, - { - "id": "129" - }, - { - "id": "13" - }, - { - "id": "130" - }, - { - "id": "131" - }, - { - "id": "132" - }, - { - "id": "133" - }, - { - "id": "134" - }, - { - "id": "135" - }, - { - "id": "136" - }, - { - "id": "137" - }, - { - "id": "138" - }, - { - "id": "139" - }, - { - "id": "14" - }, - { - "id": "140" - }, - { - "id": "141" - }, - { - "id": "142" - }, - { - "id": "143" - }, - { - "id": "144" - }, - { - "id": "145" - }, - { - "id": "146" - }, - { - "id": "147" - }, - { - "id": "148" - }, - { - "id": "149" - }, - { - "id": "15" - }, - { - "id": "150" - }, - { - "id": "151" - }, - { - "id": "152" - }, - { - "id": "153" - }, - { - "id": "154" - }, - { - "id": "155" - }, - { - "id": "156" - }, - { - "id": "157" - }, - { - "id": "158" - }, - { - "id": "159" - }, - { - "id": "16" - }, - { - "id": "160" - }, - { - "id": "161" - }, - { - "id": "162" - }, - { - "id": "163" - }, - { - "id": "164" - }, - { - "id": "165" - }, - { - "id": "166" - }, - { - "id": "167" - }, - { - "id": "168" - }, - { - "id": "169" - }, - { - "id": "17" - }, - { - "id": "170" - }, - { - "id": "171" - }, - { - "id": "172" - }, - { - "id": "173" - }, - { - "id": "174" - }, - { - "id": "175" - }, - { - "id": "176" - }, - { - "id": "177" - }, - { - "id": "178" - }, - { - "id": "179" - }, - { - "id": "18" - }, - { - "id": "180" - }, - { - "id": "181" - }, - { - "id": "182" - }, - { - "id": "183" - }, - { - "id": "184" - }, - { - "id": "185" - }, - { - "id": "186" - }, - { - "id": "187" - }, - { - "id": "188" - }, - { - "id": "189" - }, - { - "id": "19" - }, - { - "id": "190" - }, - { - "id": "191" - }, - { - "id": "192" - }, - { - "id": "193" - }, - { - "id": "194" - }, - { - "id": "195" - }, - { - "id": "196" - }, - { - "id": "197" - }, - { - "id": "198" - }, - { - "id": "199" - }, - { - "id": "2" - }, - { - "id": "20" - }, - { - "id": "200" - }, - { - "id": "201" - }, - { - "id": "202" - }, - { - "id": "203" - }, - { - "id": "204" - }, - { - "id": "205" - }, - { - "id": "206" - }, - { - "id": "207" - }, - { - "id": "208" - }, - { - "id": "209" - }, - { - "id": "21" - }, - { - "id": "210" - }, - { - "id": "211" - }, - { - "id": "212" - }, - { - "id": "213" - }, - { - "id": "214" - }, - { - "id": "215" - }, - { - "id": "216" - }, - { - "id": "217" - }, - { - "id": "218" - }, - { - "id": "219" - }, - { - "id": "22" - }, - { - "id": "220" - }, - { - "id": "221" - }, - { - "id": "222" - }, - { - "id": "223" - }, - { - "id": "224" - }, - { - "id": "225" - }, - { - "id": "226" - }, - { - "id": "227" - }, - { - "id": "228" - }, - { - "id": "229" - }, - { - "id": "23" - }, - { - "id": "230" - }, - { - "id": "231" - }, - { - "id": "232" - }, - { - "id": "233" - }, - { - "id": "234" - }, - { - "id": "235" - }, - { - "id": "236" - }, - { - "id": "237" - }, - { - "id": "238" - }, - { - "id": "239" - }, - { - "id": "24" - }, - { - "id": "240" - }, - { - "id": "241" - }, - { - "id": "242" - }, - { - "id": "243" - }, - { - "id": "244" - }, - { - "id": "245" - }, - { - "id": "246" - }, - { - "id": "247" - }, - { - "id": "248" - }, - { - "id": "249" - }, - { - "id": "25" - }, - { - "id": "250" - }, - { - "id": "251" - }, - { - "id": "252" - }, - { - "id": "253" - }, - { - "id": "254" - }, - { - "id": "255" - }, - { - "id": "256" - }, - { - "id": "257" - }, - { - "id": "258" - }, - { - "id": "259" - }, - { - "id": "26" - }, - { - "id": "260" - }, - { - "id": "261" - }, - { - "id": "262" - }, - { - "id": "263" - }, - { - "id": "264" - }, - { - "id": "265" - }, - { - "id": "266" - }, - { - "id": "267" - }, - { - "id": "268" - }, - { - "id": "269" - }, - { - "id": "27" - }, - { - "id": "270" - }, - { - "id": "271" - }, - { - "id": "272" - }, - { - "id": "273" - }, - { - "id": "274" - }, - { - "id": "275" - }, - { - "id": "276" - }, - { - "id": "277" - }, - { - "id": "278" - }, - { - "id": "279" - }, - { - "id": "28" - }, - { - "id": "280" - }, - { - "id": "281" - }, - { - "id": "282" - }, - { - "id": "283" - }, - { - "id": "284" - }, - { - "id": "285" - }, - { - "id": "286" - }, - { - "id": "287" - }, - { - "id": "288" - }, - { - "id": "289" - }, - { - "id": "29" - }, - { - "id": "290" - }, - { - "id": "291" - }, - { - "id": "292" - }, - { - "id": "293" - }, - { - "id": "294" - }, - { - "id": "295" - }, - { - "id": "296" - }, - { - "id": "297" - }, - { - "id": "298" - }, - { - "id": "299" - }, - { - "id": "3" - }, - { - "id": "30" - }, - { - "id": "300" - }, - { - "id": "301" - }, - { - "id": "302" - }, - { - "id": "303" - }, - { - "id": "304" - }, - { - "id": "305" - }, - { - "id": "306" - }, - { - "id": "307" - }, - { - "id": "308" - }, - { - "id": "309" - }, - { - "id": "31" - }, - { - "id": "310" - }, - { - "id": "311" - }, - { - "id": "312" - }, - { - "id": "313" - }, - { - "id": "314" - }, - { - "id": "315" - }, - { - "id": "316" - }, - { - "id": "317" - }, - { - "id": "318" - }, - { - "id": "319" - }, - { - "id": "32" - }, - { - "id": "320" - }, - { - "id": "321" - }, - { - "id": "322" - }, - { - "id": "323" - }, - { - "id": "324" - }, - { - "id": "325" - }, - { - "id": "326" - }, - { - "id": "327" - }, - { - "id": "328" - }, - { - "id": "329" - }, - { - "id": "33" - }, - { - "id": "330" - }, - { - "id": "331" - }, - { - "id": "332" - }, - { - "id": "333" - }, - { - "id": "334" - }, - { - "id": "335" - }, - { - "id": "336" - }, - { - "id": "337" - }, - { - "id": "338" - }, - { - "id": "339" - }, - { - "id": "34" - }, - { - "id": "340" - }, - { - "id": "341" - }, - { - "id": "342" - }, - { - "id": "343" - }, - { - "id": "344" - }, - { - "id": "345" - }, - { - "id": "346" - }, - { - "id": "347" - }, - { - "id": "348" - }, - { - "id": "349" - }, - { - "id": "35" - }, - { - "id": "350" - }, - { - "id": "351" - }, - { - "id": "352" - }, - { - "id": "353" - }, - { - "id": "36" - }, - { - "id": "37" - }, - { - "id": "38" - }, - { - "id": "39" - }, - { - "id": "4" - }, - { - "id": "40" - }, - { - "id": "41" - }, - { - "id": "42" - }, - { - "id": "43" - }, - { - "id": "44" - }, - { - "id": "45" - }, - { - "id": "46" - }, - { - "id": "47" - }, - { - "id": "48" - }, - { - "id": "49" - }, - { - "id": "5" - }, - { - "id": "50" - }, - { - "id": "51" - }, - { - "id": "52" - }, - { - "id": "53" - }, - { - "id": "54" - }, - { - "id": "55" - }, - { - "id": "56" - }, - { - "id": "57" - }, - { - "id": "58" - }, - { - "id": "59" - }, - { - "id": "6" - }, - { - "id": "60" - }, - { - "id": "61" - }, - { - "id": "62" - }, - { - "id": "63" - }, - { - "id": "64" - }, - { - "id": "65" - }, - { - "id": "66" - }, - { - "id": "67" - }, - { - "id": "68" - }, - { - "id": "69" - }, - { - "id": "7" - }, - { - "id": "70" - }, - { - "id": "71" - }, - { - "id": "72" - }, - { - "id": "73" - }, - { - "id": "74" - }, - { - "id": "75" - }, - { - "id": "76" - }, - { - "id": "77" - }, - { - "id": "78" - }, - { - "id": "79" - }, - { - "id": "8" - }, - { - "id": "80" - }, - { - "id": "81" - }, - { - "id": "82" - }, - { - "id": "83" - }, - { - "id": "84" - }, - { - "id": "85" - }, - { - "id": "86" - }, - { - "id": "87" - }, - { - "id": "88" - }, - { - "id": "89" - }, - { - "id": "9" - }, - { - "id": "90" - }, - { - "id": "91" - }, - { - "id": "92" - }, - { - "id": "93" - }, - { - "id": "94" - }, - { - "id": "95" - }, - { - "id": "96" - }, - { - "id": "97" - }, - { - "id": "98" - }, - { - "id": "99" - } - ] -} diff --git a/apps/evm/src/clients/api/__mocks__/index.ts b/apps/evm/src/clients/api/__mocks__/index.ts index 766c48ffc4..8612d55424 100644 --- a/apps/evm/src/clients/api/__mocks__/index.ts +++ b/apps/evm/src/clients/api/__mocks__/index.ts @@ -13,7 +13,7 @@ import voters from '__mocks__/models/voters'; import FunctionKey from 'constants/functionKey'; -import proposals from '__mocks__/models/proposals'; +import { proposals } from '__mocks__/models/proposals'; import type { Token } from 'types'; import type { GetBalanceOfInput } from '../queries/getBalanceOf'; import type { GetTokenBalancesInput } from '../queries/getTokenBalances'; diff --git a/apps/evm/src/clients/api/mutations/vote/useCastVote.ts b/apps/evm/src/clients/api/mutations/vote/useCastVote.ts index bfa46d38ec..ee25021742 100644 --- a/apps/evm/src/clients/api/mutations/vote/useCastVote.ts +++ b/apps/evm/src/clients/api/mutations/vote/useCastVote.ts @@ -28,6 +28,7 @@ const useCastVote = (options?: Partial) => { ), onConfirmed: async ({ input }) => { const { proposalId, voteType } = input; + const accountAddress = await governorBravoDelegateContract?.signer.getAddress(); captureAnalyticEvent('Vote cast', { proposalId, @@ -45,8 +46,27 @@ const useCastVote = (options?: Partial) => { ], }); - // Invalidate query to fetch proposal list + // Invalidate queries to fetch user vote + queryClient.invalidateQueries({ + queryKey: [ + FunctionKey.GET_VOTE_RECEIPT, + { + proposalId, + accountAddress, + }, + ], + }); + + // Invalidate queries to fetch proposal queryClient.invalidateQueries({ queryKey: [FunctionKey.GET_PROPOSALS] }); + queryClient.invalidateQueries({ + queryKey: [ + FunctionKey.GET_PROPOSAL, + { + id: input.proposalId, + }, + ], + }); }, options, }); diff --git a/apps/evm/src/clients/api/mutations/vote/useCastVoteWithReason.ts b/apps/evm/src/clients/api/mutations/vote/useCastVoteWithReason.ts index 624ace2d50..5949ef27f2 100644 --- a/apps/evm/src/clients/api/mutations/vote/useCastVoteWithReason.ts +++ b/apps/evm/src/clients/api/mutations/vote/useCastVoteWithReason.ts @@ -48,8 +48,16 @@ const useCastVoteWithReason = (options?: Partial) => { ], }); - // Invalidate query to fetch proposal list + // Invalidate queries to fetch proposal queryClient.invalidateQueries({ queryKey: [FunctionKey.GET_PROPOSALS] }); + queryClient.invalidateQueries({ + queryKey: [ + FunctionKey.GET_PROPOSAL, + { + id: input.proposalId, + }, + ], + }); }, options, }); diff --git a/apps/evm/src/clients/api/queries/getProposal/__tests__/__snapshots__/index.spec.ts.snap b/apps/evm/src/clients/api/queries/getProposal/__tests__/__snapshots__/index.spec.ts.snap index 006df2633d..0da444e9d0 100644 --- a/apps/evm/src/clients/api/queries/getProposal/__tests__/__snapshots__/index.spec.ts.snap +++ b/apps/evm/src/clients/api/queries/getProposal/__tests__/__snapshots__/index.spec.ts.snap @@ -3,129 +3,134 @@ exports[`getProposal > returns proposal in the correct format 1`] = ` { "proposal": { - "abstainVotes": [ - { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "353", - "reason": undefined, - "support": 2, - "votesMantissa": "801851714101606493084", - }, - ], - "abstainedVotesMantissa": "801851714101606493084", - "againstVotes": [ - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "353", - "reason": undefined, - "support": 0, - "votesMantissa": "1e+23", - }, - ], - "againstVotesMantissa": "1e+23", + "abstainVotes": [], + "abstainedVotesMantissa": "0", + "againstVotes": [], + "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2023-09-20T07:39:35.000Z, - "createdTxHash": "0xbe4f9879425120453393641d4518e571b289d3ec74e3a27a2d4281caf251f408", + "createdDate": 2024-10-01T11:58:15.000Z, + "createdTxHash": "0xcfafe0fcb0ed8ba08a454be1c05d0883287b76457cf0fae93d07f0131d565e49", "description": { "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "This VIP will perform the following Risk Parameter actions as per Chaos Labs’ latest recommendations in this Venus community forum publication: [Chaos Labs - Risk Parameter Updates - 08/02/24](https://community.venus.io/t/chaos-labs-risk-parameter-updates-08-02-24/4502). - -- [WETH (Liquid Staked ETH)](https://etherscan.io/address/0xc82780Db1257C788F262FBbDA960B3706Dfdcaf2): - - Reduce Collateral Factor, from 90% to 0% - - Increase Kink, from 80% to 90% - - Increase Multiplier, from 3.5% to 4.5% - - Increase Reserve Factor, from 15% to 25% - -Complete analysis and details of these recommendations are available in the above publication. - -Please note that reducing the collateral factor to 0% will not cause current borrowers to be liquidated as the liquidation threshold will not be modified. - -#### References - -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/356) - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0xab824acf17443e1c50231fa0d6ad1d854269941db67704518104867ac9181083) multisig transaction will be executed. Otherwise, it will be rejected.", + "description": "#### Description + Mint faucet on all network", "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-353 [Ethereum] Risk Parameters Adjustments (WETH)", + "title": "Test VIP", "version": "v2", }, - "endBlock": 33499859, - "endDate": 2027-05-21T12:06:59.000Z, + "endBlock": 44354696, + "endDate": 2028-06-01T09:48:50.000Z, "executedDate": undefined, - "executedTxHash": "0x91f6267525b678fe62632dc738c766ccb02408a81cd9f5915f4f40db79368ce2", + "executedTxHash": undefined, "executionEtaDate": 1970-01-01T00:00:00.000Z, - "forVotes": [ + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "353", - "reason": "Community delegators approved.", - "support": 1, - "votesMantissa": "4.33469577024822530748692e+23", + "actionIndex": 0, + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "value": "0", }, { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1.16937e+21", - }, - { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", + "actionIndex": 3, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027da000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, + ], + "proposalId": 436, + "proposalType": 0, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": undefined, + "queuedTxHash": undefined, + "remoteProposals": [ { - "address": "0x3d759121234cd36F8124C21aFe1c6852d2bEd848", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "13777102348559360929", + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "13058470954295420970", + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 5611, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "9977051682906883578", + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, ], - "forVotesMantissa": "6.34876045445857488254946e+23", - "proposalActions": [], - "proposalId": "353", - "proposalType": 1, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": undefined, - "queuedTxHash": "0xc295f4f351eb2ebeebbbee99066733585458ef91fc38570594c8da1e0554cfd6", - "startDate": 2027-05-21T11:59:29.000Z, + "startDate": 2028-06-01T09:41:20.000Z, "state": 0, - "totalVotesMantissa": "7.3567789715995909474803e+23", + "totalVotesMantissa": "0", "userVoteSupport": undefined, }, } diff --git a/apps/evm/src/clients/api/queries/getProposal/__tests__/index.spec.ts b/apps/evm/src/clients/api/queries/getProposal/__tests__/index.spec.ts index e47c2adab3..eecaf563ed 100644 --- a/apps/evm/src/clients/api/queries/getProposal/__tests__/index.spec.ts +++ b/apps/evm/src/clients/api/queries/getProposal/__tests__/index.spec.ts @@ -9,8 +9,6 @@ const fakeParams: GetProposalInput = { chainId: ChainId.BSC_TESTNET, currentBlockNumber: 1, proposalMinQuorumVotesMantissa: new BigNumber(10), - proposalExecutionGracePeriodMs: 1209600000, - blockTimeMs: 3000, }; describe('getProposal', () => { diff --git a/apps/evm/src/clients/api/queries/getProposal/index.ts b/apps/evm/src/clients/api/queries/getProposal/index.ts index 0b4bb32072..38037c5193 100644 --- a/apps/evm/src/clients/api/queries/getProposal/index.ts +++ b/apps/evm/src/clients/api/queries/getProposal/index.ts @@ -1,8 +1,9 @@ import type BigNumber from 'bignumber.js'; import { type GetBscProposalInput as GetBscGqlProposalInput, + enrichRemoteProposals, formatToProposal, - getBscProposal as getBscGqlProposal, + getBscProposal, } from 'clients/subgraph'; import { VError } from 'libs/errors'; import type { ChainId, Proposal } from 'types'; @@ -12,8 +13,6 @@ export interface GetProposalInput { chainId: ChainId; currentBlockNumber: number; proposalMinQuorumVotesMantissa: BigNumber; - blockTimeMs: number; - proposalExecutionGracePeriodMs: number; accountAddress?: string; } @@ -26,15 +25,13 @@ export const getProposal = async ({ chainId, currentBlockNumber, proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, - blockTimeMs, accountAddress, }: GetProposalInput): Promise => { const variables: GetBscGqlProposalInput['variables'] = { id: proposalId.toString(), }; - const response = await getBscGqlProposal({ + const response = await getBscProposal({ chainId, variables, }); @@ -48,12 +45,16 @@ export const getProposal = async ({ }); } + // Fetch remote proposals + const gqlRemoteProposalsMapping = await enrichRemoteProposals({ + gqlRemoteProposals: gqlProposal.remoteProposals, + }); + const proposal = formatToProposal({ gqlProposal, + gqlRemoteProposalsMapping, proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, currentBlockNumber, - blockTimeMs, accountAddress, }); diff --git a/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/__snapshots__/index.spec.ts.snap b/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/__snapshots__/index.spec.ts.snap index ea1c397536..4fd8db452f 100644 --- a/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/__snapshots__/index.spec.ts.snap +++ b/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/__snapshots__/index.spec.ts.snap @@ -9,10 +9,7 @@ exports[`useGetCachedProposal > returns proposal from cache when it exists 1`] = "createdDate": 2023-09-20T07:39:35.000Z, "createdTxHash": "0xb8a70919dbf83e5c63af8efbad418b2a81ca9f4937b12f806482581abaf03b65", "description": { - "abstainDescription": "I am indifferent to whether Venus Protocol proceeds with the Comptroller upgradation or not", - "againstDescription": "I do not think that Venus Protocol should proceed with the Comptroller contract upgradation", "description": "This vip implement diamond proxy for the comptroller to divide the comptroller logic into facets. The current implementation of the comptroller is exceeding the max limit of the contract size. To resolve this diamond proxy is implemented.", - "forDescription": "I agree that Venus Protocol should proceed with the upgrading the Comptroller contract with diamond proxy", "title": "VIP Comptroller Diamond proxy", "version": "v1", }, @@ -21,8 +18,6 @@ exports[`useGetCachedProposal > returns proposal from cache when it exists 1`] = "forVotes": [ { "address": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", - "blockNumber": 33335869, - "blockTimestamp": 1970-01-20T14:45:04.478Z, "proposalId": 98, "reason": "", "support": 1, @@ -34,6 +29,159 @@ exports[`useGetCachedProposal > returns proposal from cache when it exists 1`] = "proposalId": 98, "proposalType": 0, "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "remoteProposals": [ + { + "bridgedDate": 2023-02-01T00:00:00.000Z, + "chainId": 97, + "executedDate": 2023-02-01T00:00:00.000Z, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + ], + "proposalId": 1, + "queuedDate": 2023-02-01T00:00:00.000Z, + "remoteProposalId": 1, + "state": 5, + }, + { + "bridgedDate": 2023-02-01T00:00:00.000Z, + "chainId": 5611, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + ], + "proposalId": 2, + "queuedDate": 2023-02-01T00:00:00.000Z, + "remoteProposalId": 2, + "state": 1, + }, + { + "bridgedDate": 2023-02-01T00:00:00.000Z, + "chainId": 11155111, + "executionEtaDate": 2089-02-01T00:00:00.000Z, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + ], + "proposalId": 3, + "queuedDate": 2023-02-01T00:00:00.000Z, + "remoteProposalId": 3, + "state": 2, + }, + { + "bridgedDate": 2023-02-01T00:00:00.000Z, + "chainId": 11155111, + "executionEtaDate": 2023-02-01T00:00:00.000Z, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + ], + "proposalId": 4, + "queuedDate": 2023-02-01T00:00:00.000Z, + "remoteProposalId": 4, + "state": 2, + }, + { + "bridgedDate": 2023-02-01T00:00:00.000Z, + "canceledDate": 2023-02-01T00:00:00.000Z, + "chainId": 421614, + "executionEtaDate": 2023-02-01T00:00:00.000Z, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + ], + "proposalId": 6, + "queuedDate": 2023-02-01T00:00:00.000Z, + "remoteProposalId": 6, + "state": 3, + }, + { + "bridgedDate": 2023-02-01T00:00:00.000Z, + "chainId": 421614, + "executedDate": 2023-02-01T00:00:00.000Z, + "executionEtaDate": 2023-02-01T00:00:00.000Z, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + { + "actionIndex": 0, + "callData": "0x", + "signature": "test()", + "target": "0x2Ce1d0ffD7E869D9DF33e28552b12DdDed326706", + "value": "", + }, + ], + "proposalId": 7, + "queuedDate": 2023-02-01T00:00:00.000Z, + "remoteProposalId": 7, + "state": 5, + }, + ], "startDate": 2023-09-20T07:47:05.000Z, "state": 3, "totalVotesMantissa": "6.05461e+23", diff --git a/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/index.spec.ts b/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/index.spec.ts index 5d02a574ea..cde3fc574b 100644 --- a/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/index.spec.ts +++ b/apps/evm/src/clients/api/queries/getProposal/useGetCachedProposal/__tests__/index.spec.ts @@ -1,5 +1,5 @@ import { QueryClient } from '@tanstack/react-query'; -import fakeProposals from '__mocks__/models/proposals'; +import { proposals as fakeProposals } from '__mocks__/models/proposals'; import FunctionKey from 'constants/functionKey'; import { renderHook } from 'testUtils/render'; import { useGetCachedProposal } from '..'; diff --git a/apps/evm/src/clients/api/queries/getProposal/useGetProposal.ts b/apps/evm/src/clients/api/queries/getProposal/useGetProposal.ts index 8c90f52a6a..3310b8c892 100644 --- a/apps/evm/src/clients/api/queries/getProposal/useGetProposal.ts +++ b/apps/evm/src/clients/api/queries/getProposal/useGetProposal.ts @@ -6,7 +6,6 @@ import { getProposal, } from 'clients/api/queries/getProposal'; import { CHAIN_METADATA } from 'constants/chainMetadata'; -import { DEFAULT_REFETCH_INTERVAL_MS } from 'constants/defaultRefetchInterval'; import FunctionKey from 'constants/functionKey'; import { governanceChain } from 'libs/wallet'; import { callOrThrow } from 'utilities'; @@ -16,11 +15,7 @@ import { useGetCachedProposal } from './useGetCachedProposal'; type TrimmedGetProposalInput = Omit< GetProposalInput, - | 'currentBlockNumber' - | 'proposalMinQuorumVotesMantissa' - | 'proposalExecutionGracePeriodMs' - | 'blockTimeMs' - | 'chainId' + 'currentBlockNumber' | 'proposalMinQuorumVotesMantissa' | 'blockTimeMs' | 'chainId' >; type Options = QueryObserverOptions< @@ -30,30 +25,31 @@ type Options = QueryObserverOptions< GetProposalOutput, [ FunctionKey.GET_PROPOSAL, - Omit< - GetProposalInput, - | 'currentBlockNumber' - | 'proposalMinQuorumVotesMantissa' - | 'proposalExecutionGracePeriodMs' - | 'blockTimeMs' - >, + Omit, ] >; +const { blockTimeMs: BSC_BLOCK_TIME_MS } = CHAIN_METADATA[governanceChain.id]; + export const useGetProposal = (input: TrimmedGetProposalInput, options?: Partial) => { const { data: getProposalMinQuorumVotesData } = useGetProposalMinQuorumVotes(); const proposalMinQuorumVotesMantissa = getProposalMinQuorumVotesData?.proposalMinQuorumVotesMantissa; - const { data: getBlockNumberData } = useGetBlockNumber({ - chainId: governanceChain.id, - }); + const { data: getBlockNumberData } = useGetBlockNumber( + { + chainId: governanceChain.id, + }, + { + refetchInterval: BSC_BLOCK_TIME_MS, + }, + ); const currentBlockNumber = getBlockNumberData?.blockNumber; - const { blockTimeMs, proposalExecutionGracePeriodMs } = CHAIN_METADATA[governanceChain.id]; - // Initialize proposal using cache if available - const cachedProposal = useGetCachedProposal({ proposalId: +input.proposalId }); + const cachedProposal = useGetCachedProposal({ + proposalId: +input.proposalId, + }); return useQuery({ queryKey: [ @@ -68,8 +64,6 @@ export const useGetProposal = (input: TrimmedGetProposalInput, options?: Partial { currentBlockNumber, proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, - blockTimeMs, }, params => getProposal({ @@ -78,7 +72,7 @@ export const useGetProposal = (input: TrimmedGetProposalInput, options?: Partial chainId: governanceChain.id, }), ), - refetchInterval: blockTimeMs || DEFAULT_REFETCH_INTERVAL_MS, + refetchInterval: BSC_BLOCK_TIME_MS, initialData: { proposal: cachedProposal, }, diff --git a/apps/evm/src/clients/api/queries/getProposals/__tests__/__snapshots__/index.spec.ts.snap b/apps/evm/src/clients/api/queries/getProposals/__tests__/__snapshots__/index.spec.ts.snap index c83d3b004b..c2561aee04 100644 --- a/apps/evm/src/clients/api/queries/getProposals/__tests__/__snapshots__/index.spec.ts.snap +++ b/apps/evm/src/clients/api/queries/getProposals/__tests__/__snapshots__/index.spec.ts.snap @@ -4,130 +4,266 @@ exports[`getProposals > returns proposals in the correct format 1`] = ` { "proposals": [ { - "abstainVotes": [ - { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "353", - "reason": undefined, - "support": 2, - "votesMantissa": "801851714101606493084", - }, - ], - "abstainedVotesMantissa": "801851714101606493084", - "againstVotes": [ - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "353", - "reason": undefined, - "support": 0, - "votesMantissa": "1e+23", - }, - ], - "againstVotesMantissa": "1e+23", + "abstainVotes": [], + "abstainedVotesMantissa": "0", + "againstVotes": [], + "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2023-09-20T07:39:35.000Z, - "createdTxHash": "0xbe4f9879425120453393641d4518e571b289d3ec74e3a27a2d4281caf251f408", + "createdDate": 2024-10-01T11:58:15.000Z, + "createdTxHash": "0xcfafe0fcb0ed8ba08a454be1c05d0883287b76457cf0fae93d07f0131d565e49", "description": { "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "This VIP will perform the following Risk Parameter actions as per Chaos Labs’ latest recommendations in this Venus community forum publication: [Chaos Labs - Risk Parameter Updates - 08/02/24](https://community.venus.io/t/chaos-labs-risk-parameter-updates-08-02-24/4502). - -- [WETH (Liquid Staked ETH)](https://etherscan.io/address/0xc82780Db1257C788F262FBbDA960B3706Dfdcaf2): - - Reduce Collateral Factor, from 90% to 0% - - Increase Kink, from 80% to 90% - - Increase Multiplier, from 3.5% to 4.5% - - Increase Reserve Factor, from 15% to 25% - -Complete analysis and details of these recommendations are available in the above publication. - -Please note that reducing the collateral factor to 0% will not cause current borrowers to be liquidated as the liquidation threshold will not be modified. - -#### References - -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/356) - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0xab824acf17443e1c50231fa0d6ad1d854269941db67704518104867ac9181083) multisig transaction will be executed. Otherwise, it will be rejected.", + "description": "#### Description + Mint faucet on all network", "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-353 [Ethereum] Risk Parameters Adjustments (WETH)", + "title": "Test VIP", "version": "v2", }, - "endBlock": 33499859, - "endDate": 2027-05-21T12:06:59.000Z, + "endBlock": 44354696, + "endDate": 2028-06-01T09:48:50.000Z, "executedDate": undefined, - "executedTxHash": "0x91f6267525b678fe62632dc738c766ccb02408a81cd9f5915f4f40db79368ce2", + "executedTxHash": undefined, "executionEtaDate": 1970-01-01T00:00:00.000Z, - "forVotes": [ + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "353", - "reason": "Community delegators approved.", - "support": 1, - "votesMantissa": "4.33469577024822530748692e+23", + "actionIndex": 0, + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "value": "0", }, { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1.16937e+21", + "actionIndex": 3, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027da000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", + }, + ], + "proposalId": 436, + "proposalType": 0, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": undefined, + "queuedTxHash": undefined, + "remoteProposals": [ + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 5611, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, + ], + "startDate": 2028-06-01T09:41:20.000Z, + "state": 0, + "totalVotesMantissa": "0", + "userVoteSupport": undefined, + }, + { + "abstainVotes": [], + "abstainedVotesMantissa": "0", + "againstVotes": [], + "againstVotesMantissa": "0", + "cancelDate": undefined, + "cancelTxHash": undefined, + "createdDate": 2024-10-01T08:09:36.000Z, + "createdTxHash": "0x62639208b514e81708fcc30c7ce276c2f7f3b12ba5252102cda3604db967fbc3", + "description": { + "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", + "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", + "description": "#### Description + Mint faucet on all network", + "forDescription": "I agree that Venus Protocol should proceed with this proposal", + "title": "Test VIP", + "version": "v2", + }, + "endBlock": 44350123, + "endDate": 2028-06-01T06:00:11.000Z, + "executedDate": undefined, + "executedTxHash": undefined, + "executionEtaDate": 1970-01-01T00:00:00.000Z, + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", + "actionIndex": 0, + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "value": "0", }, { - "address": "0x3d759121234cd36F8124C21aFe1c6852d2bEd848", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "13777102348559360929", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "13058470954295420970", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "9977051682906883578", + "actionIndex": 3, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027da000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, ], - "forVotesMantissa": "6.34876045445857488254946e+23", - "proposalActions": [], - "proposalId": "353", - "proposalType": 1, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", + "proposalId": 435, + "proposalType": 0, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", "queuedDate": undefined, - "queuedTxHash": "0xc295f4f351eb2ebeebbbee99066733585458ef91fc38570594c8da1e0554cfd6", - "startDate": 2027-05-21T11:59:29.000Z, + "queuedTxHash": undefined, + "remoteProposals": [ + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 435, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 5611, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 435, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 435, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + ], + "startDate": 2028-06-01T05:52:41.000Z, "state": 0, - "totalVotesMantissa": "7.3567789715995909474803e+23", - "userVoteSupport": 1, + "totalVotesMantissa": "0", + "userVoteSupport": undefined, }, { "abstainVotes": [], @@ -136,151 +272,202 @@ Privilege commands on Ethereum will be executed by the [Guardian wallet](https:/ "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2024-08-14T20:14:11.000Z, - "createdTxHash": "0x9f2840bfcbefbbb64db19f5ff1688e72c822cfaffccc52d34f8642c106c1a2d3", + "createdDate": 2024-09-25T14:46:49.000Z, + "createdTxHash": "0x2794dce9d7a02e9a8d699bf23d236955d8cf2115fced7befa2a5ffd38ea708c5", "description": { "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "#### Summary - -If passed, this VIP will perform the following actions: - -- Transfer 5,731.81 XVS from [RewardsDistributor_Core_0](https://etherscan.io/address/0x134bfDEa7e68733921Bc6A87159FB0d68aBc6Cf8) to [RewardsDistributor_Core_2](https://etherscan.io/address/0x886767B62C7ACD601672607373048FFD96Cf27B2) -- Transfer 1,473.64 XVS from [RewardsDistributor_Liquid Staked ETH_0](https://etherscan.io/address/0x7A91bEd36D96E4e644d3A181c287E0fcf9E9cc98) to [RewardsDistributor_Liquid Staked ETH_3](https://etherscan.io/address/0x1e25CF968f12850003Db17E0Dba32108509C4359) - -#### Description - -In the [VIP-348](https://app.venus.io/#/governance/proposal/348?chainId=56), the rewards for the Ethereum markets of [DAI](https://app.venus.io/#/core-pool/market/0xd8AdD9B41D4E1cd64Edad8722AB0bA8D35536657?chainId=1), [TUSD](https://app.venus.io/#/core-pool/market/0x13eB80FDBe5C5f4a7039728E258A6f05fb3B912b?chainId=1), [FRAX](https://app.venus.io/#/core-pool/market/0x4fAfbDc4F2a9876Bd1764827b26fb8dc4FD1dB95?chainId=1), [sFRAX](https://app.venus.io/#/core-pool/market/0x17142a05fe678e9584FA1d88EfAC1bF181bF7ABe?chainId=1) and [sfrxETH](https://app.venus.io/#/isolated-pools/pool/0xF522cd0360EF8c2FF48B648d53EA1717Ec0F3Ac3/market/0xF9E9Fe17C00a8B96a8ac20c4E344C8688D7b947E?chainId=1) were stopped in the original RewardsDistributor contracts ([RewardsDistributor_Core_0](https://etherscan.io/address/0x134bfDEa7e68733921Bc6A87159FB0d68aBc6Cf8) and [RewardsDistributor_Liquid Staked ETH_0](https://etherscan.io/address/0x7A91bEd36D96E4e644d3A181c287E0fcf9E9cc98)) and enabled in the new ones ([RewardsDistributor_Core_2](https://etherscan.io/address/0x886767B62C7ACD601672607373048FFD96Cf27B2) and [RewardsDistributor_Liquid Staked ETH_3](https://etherscan.io/address/0x1e25CF968f12850003Db17E0Dba32108509C4359)), aiming to unify the XVS rewards in one contract per pool. - -This VIP will transfer the non-allocated XVS tokens from the original RewardsDistributor contracts to the new ones. This transfer doesn’t have any impact on the users, who will continue accruing rewards as usual. - -#### References - -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/338) -- [VIP-302 Ethereum: new FRAX and sFRAX markets in the Core pool](https://app.venus.io/#/governance/proposal/302?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/277)): 4,800 XVS were transferred to the RewardsDistributor_Core_0, to be distributed for 90 days among the FRAX and sFRAX market users -- [VIP-322: [Ethereum] Market Emission Adjustment](https://app.venus.io/#/governance/proposal/322?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/301/files)): 112,000 XVS were transferred for the rewards of the following markets: - - Core pool: WETH, WBTC, USDT, USDC, crvUSD, FRAX, sFRAX, TUSD, DAI - - Curve pool: CRV, crvUSD - - LST pool: wstETH -- [VIP-329 Ethereum: new sfrxETH market in the Liquid Staked ETH pool](https://app.venus.io/#/governance/proposal/329?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/302)): 2,400 XVS were transferred to the RewardsDistributor_Core_0, to be distributed for 90 days among the sfrxETH market users -- [VIP-335 [Ethereum] Resume Market Incentives](https://app.venus.io/#/governance/proposal/335?chainId=1) ([PR](https://github.com/VenusProtocol/vips/pull/314)): 82,180 XVS were transferred from the old RewardsDistributor contracts to the new ones. These are the rewards associated to every market except FRAX, sFRAX, sfrxETH, DAI, TUSD -- [VIP-348 [Ethereum] Market Emission Adjustment](https://app.venus.io/#/governance/proposal/348?chainId=56) ([PR](https://github.com/VenusProtocol/vips/pull/331)): speeds for FRAX, sFRAX, sfrxETH, DAI, TUSD are set to zero in the old RewardsDistributor contracts and the new speeds are set in the new RewardsDistributor contracts - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x717fa100138a66aa5ca51cba4880a9448e6b18d87c3d2c3b41bfb91e7f27e8c8) multisig transaction will be executed. Otherwise, it will be rejected.", + "description": "#### Description + Mint faucet on all network", "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-352 [Ethereum] Unification of XVS rewards for DAI, TUSD, FRAX, sFRAX and sfrxETH", + "title": "Test VIP", "version": "v2", }, - "endBlock": 41394184, - "endDate": 2028-02-19T14:43:14.000Z, - "executedDate": 2024-08-17T20:31:01.000Z, - "executedTxHash": "0xd7d5304872e6ba9e38e7eb7b65f4d3e71eeccfbc772ce1d198096483daf5c85a", - "executionEtaDate": 2024-08-17T20:22:08.000Z, - "forVotes": [ - { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "352", - "reason": "Community Delegators approved. ", - "support": 1, - "votesMantissa": "4.33361769969372605623414e+23", - }, - { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", - }, - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, + "endBlock": 44185274, + "endDate": 2028-05-26T12:37:44.000Z, + "executedDate": undefined, + "executedTxHash": undefined, + "executionEtaDate": 1970-01-01T00:00:00.000Z, + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 0, + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "value": "0", }, { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "1.16825e+21", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x3189b40140cac6c20d5de8a37d667cc6a866d41b", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "1.129288737856030085845e+21", + "actionIndex": 3, + "callData": "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, - { - "address": "0xbdc1faea0cb9121df6afd0e47accd3048ba01337", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "1.015965846030073973859e+21", + ], + "proposalId": 434, + "proposalType": 0, + "proposerAddress": "0x6eace20e1f89d0b24e5b295af1802dfbc730b37d", + "queuedDate": undefined, + "queuedTxHash": undefined, + "remoteProposals": [ + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 97, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 434, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 434, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 434, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, + ], + "startDate": 2028-05-26T12:30:14.000Z, + "state": 0, + "totalVotesMantissa": "0", + "userVoteSupport": undefined, + }, + { + "abstainVotes": [], + "abstainedVotesMantissa": "0", + "againstVotes": [], + "againstVotesMantissa": "0", + "cancelDate": undefined, + "cancelTxHash": undefined, + "createdDate": 2024-09-23T08:58:13.000Z, + "createdTxHash": "0x545f1fd62d776be9ec70d3be21cca9efbc9e3aa0732f83edd43a195bbcf58f06", + "description": { + "abstainDescription": "I am indifferent to whether Venus Protocol proceeds with this transfer for XVS", + "againstDescription": "I do not think that Venus Protocol should proceed with this transfer for XVS", + "description": "", + "forDescription": "I agree that Venus Protocol should proceed with this transfer for XVS", + "title": "VIP to transfer XVS to destination chain", + "version": "v2", + }, + "endBlock": 44120709, + "endDate": 2028-05-24T06:49:29.000Z, + "executedDate": 2024-09-23T09:48:22.000Z, + "executedTxHash": "0x66b889b40b51592cdd89068f16cb84802f5f6e3f88b71823f363b092d7948dbd", + "executionEtaDate": 2024-09-23T09:24:25.000Z, + "expiredDate": undefined, + "forVotes": [ { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "352", + "address": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "proposalId": "433", "reason": undefined, "support": 1, - "votesMantissa": "199226357358097054944", + "votesMantissa": "6.05372e+23", }, + ], + "forVotesMantissa": "6.05372e+23", + "proposalActions": [ { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "13777102348559360929", + "actionIndex": 0, + "callData": "0x000000000000000000000000b9e0e753630434d7863528cc73cb7ac638a7c8ff0000000000000000000000000000000000000000000001d234f9a33f47600000000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", + "signature": "withdrawTreasuryBEP20(address,uint256,address)", + "target": "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", + "value": "0", }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "13058470954295420970", + "actionIndex": 1, + "callData": "0x0000000000000000000000000e132cd94fd70298b747d2b4d977db8d086e5fd00000000000000000000000000000000000000000000000000000000000000000", + "signature": "approve(address,uint256)", + "target": "0xb9e0e753630434d7863528cc73cb7ac638a7c8ff", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "9977051682906883578", + "actionIndex": 2, + "callData": "0x0000000000000000000000000e132cd94fd70298b747d2b4d977db8d086e5fd00000000000000000000000000000000000000000000001d234f9a33f47600000", + "signature": "approve(address,uint256)", + "target": "0xb9e0e753630434d7863528cc73cb7ac638a7c8ff", + "value": "0", }, { - "address": "0x59c3e411ce0f4c0a95d587bbfadbb7b9dfff8c0f", - "proposalId": "352", - "reason": undefined, - "support": 1, - "votesMantissa": "3613675066757", + "actionIndex": 3, + "callData": "0x000000000000000000000000ce10739590001705f7ff231611ba4a48b282032700000000000000000000000000000000000000000000000000000000000027f80000000000000000000000005a1a12f47fa7007c9e23cf5e025f3f5d3ac7d7550000000000000000000000000000000000000000000001d234f9a33f4760000000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000022000100000000000000000000000000000000000000000000000000000000000493e0000000000000000000000000000000000000000000000000000000000000", + "signature": "sendFrom(address,uint16,bytes32,uint256,(address,address,bytes))", + "target": "0x0e132cd94fd70298b747d2b4d977db8d086e5fd0", + "value": "300000000000000000", }, ], - "forVotesMantissa": "7.52101475214427933013256e+23", - "proposalActions": [], - "proposalId": "352", + "proposalId": 433, "proposalType": 0, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": 2024-08-15T20:22:08.000Z, - "queuedTxHash": "0xe8069c2913513de089e9dcd56e3ce3efd50fdbda430f9b351c0272bfe3e6bd5c", - "startDate": 2028-02-18T14:43:14.000Z, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": 2024-09-23T09:14:25.000Z, + "queuedTxHash": "0x1ccf90c821744d2c5fc5956078ab8834fa65d515e63024169378933b14d24589", + "remoteProposals": [], + "startDate": 2028-05-24T06:41:59.000Z, "state": 0, - "totalVotesMantissa": "7.52101475214427933013256e+23", + "totalVotesMantissa": "6.05372e+23", "userVoteSupport": undefined, }, { @@ -290,134 +477,85 @@ Privilege commands on Ethereum will be executed by the [Guardian wallet](https:/ "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2024-08-13T15:43:03.000Z, - "createdTxHash": "0xa515fbd29eb02d048fde141f6831b005b798f693fe00c9ba525cb5064aab649e", + "createdDate": 2024-09-16T14:30:38.000Z, + "createdTxHash": "0x4f678cd8de8fea701249b349a1b9102a5350ccd123e43e58eaa4a90e91df804a", "description": { "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "#### Summary - -If passed, this VIP will update the XVS address considered by the [XVSVault](https://opbnbscan.com/address/0x7dc969122450749A8B0777c0e324522d67737988) contract on opBNB, using [0x3E2e61F1c075881F3fB8dd568043d8c221fd5c61](https://opbnbscan.com/address/0x3E2e61F1c075881F3fB8dd568043d8c221fd5c61) - -#### Description - -The XVSVault contract on opBNB is using an old version of the XVS token address deployed to that network. This VIP sets the right XVS token address in the vault, which is the one used by the [bridge contracts](https://opbnbscan.com/address/0x100D331C1B5Dcd41eACB1eCeD0e83DCEbf3498B2). No actions are required from users. - -#### Security and additional considerations - -We applied the following security procedures for this upgrade: - -- **VIP execution simulation**: in a simulation environment, validating the XVS address is properly set -- **Deployment on testnet**: the same operation has been [successfully executed on opBNB testnet](https://testnet.opbnbscan.com/tx/0xceb6a8db450e8495a961019a631a9dfcd356fe6c26486448676cc8de01bb0aaa?tab=overview) -- **XVSVault is paused on opBNB**, so no funds are at risk - -#### References - -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/308) -- [TX on opBNB testnet](https://testnet.opbnbscan.com/tx/0xceb6a8db450e8495a961019a631a9dfcd356fe6c26486448676cc8de01bb0aaa?tab=overview) -- [Temporary XVSVault contract used to set the XVS address](https://opbnbscan.com/address/0xF23CB7f0e4742506EB45ad3D663Fa461512B56B8) - -#### Disclaimer for opBNB VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://multisig.bnbchain.org/home?safe=opbnb:0xC46796a21a3A9FAB6546aF3434F2eBfFd0604207), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://multisig.bnbchain.org/transactions/tx?safe=opbnb:0xC46796a21a3A9FAB6546aF3434F2eBfFd0604207&id=multisig_0xC46796a21a3A9FAB6546aF3434F2eBfFd0604207_0x724682986f6558b650782f09f4f9519404ecde2746f3d20cc4daac4b4566f615) multisig transaction will be executed. Otherwise, it will be rejected.", + "description": "#### Summary Enable BSC -> ZKSYNC bridge", "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-351 [opBNB] Update XVS address in the XVSVault", + "title": "VIP-364 Enable BSC -> OP sepolia bridge", "version": "v2", }, - "endBlock": 41360029, - "endDate": 2028-02-18T10:15:29.000Z, - "executedDate": 2024-08-16T15:58:33.000Z, - "executedTxHash": "0x3a0af11b8d7d84bcbcf9abd5a6db09a6b698ef8d168d67f24ca5d9c115b492f1", - "executionEtaDate": 2024-08-16T15:53:08.000Z, + "endBlock": 43925771, + "endDate": 2028-05-17T12:22:35.000Z, + "executedDate": 2024-09-17T11:41:09.000Z, + "executedTxHash": "0x9006192b5241d82fb2d158569c6c18832dfa78272cabcfaa05b0d447889fb95f", + "executionEtaDate": 2024-09-16T14:56:23.000Z, + "expiredDate": undefined, "forVotes": [ { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "351", - "reason": "Community delegators approved.", - "support": 1, - "votesMantissa": "4.33351494678100717533085e+23", - }, - { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", - }, - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "351", + "address": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "proposalId": "432", "reason": undefined, "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", + "votesMantissa": "6.05372e+23", }, + ], + "forVotesMantissa": "6.05372e+23", + "proposalActions": [ { - "address": "0x69796191e5cb32eaaf1abf6bc1ce454e4e5a064f", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "1.900610293907734918039e+21", + "actionIndex": 0, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f80000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000001479a36dc9a43d05db4747c59c02f48ed500e47df1000000000000000000000000", + "signature": "setTrustedRemoteAddress(uint16,bytes)", + "target": "0xb164cb262328ca44a806ba9e3d4094931e658513", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "1.16825e+21", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000493e0", + "signature": "setMinDstGas(uint16,uint16,uint256)", + "target": "0xb164cb262328ca44a806ba9e3d4094931e658513", + "value": "0", }, { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000a968163f0a57b400000", + "signature": "setMaxDailyLimit(uint16,uint256)", + "target": "0xb164cb262328ca44a806ba9e3d4094931e658513", + "value": "0", }, { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "13777102348559360929", + "actionIndex": 3, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f800000000000000000000000000000000000000000000021e19e0c9bab2400000", + "signature": "setMaxSingleTransactionLimit(uint16,uint256)", + "target": "0xb164cb262328ca44a806ba9e3d4094931e658513", + "value": "0", }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "13058470954295420970", + "actionIndex": 4, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000accb72d9e6b59e00000", + "signature": "setMaxDailyReceiveLimit(uint16,uint256)", + "target": "0xb164cb262328ca44a806ba9e3d4094931e658513", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "351", - "reason": undefined, - "support": 1, - "votesMantissa": "9977051682906883578", + "actionIndex": 5, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f8000000000000000000000000000000000000000000000228f16f861578600000", + "signature": "setMaxSingleReceiveTransactionLimit(uint16,uint256)", + "target": "0xb164cb262328ca44a806ba9e3d4094931e658513", + "value": "0", }, ], - "forVotesMantissa": "7.51846555629564000714505e+23", - "proposalActions": [], - "proposalId": "351", + "proposalId": 432, "proposalType": 0, - "proposerAddress": "0x55a9f5374af30e3045fb491f1da3c2e8a74d168d", - "queuedDate": 2024-08-14T15:53:08.000Z, - "queuedTxHash": "0x8260bf3ec31bf5c54f5e5d7393eeffb3aab7e510042dd1e591cc70451c65130f", - "startDate": 2028-02-17T10:15:29.000Z, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": 2024-09-16T14:46:23.000Z, + "queuedTxHash": "0x06f257826417ddbb351d3bd2ff0f9c50a4bff757627e7ea6df140a65744a6fc9", + "remoteProposals": [], + "startDate": 2028-05-17T12:15:05.000Z, "state": 0, - "totalVotesMantissa": "7.51846555629564000714505e+23", + "totalVotesMantissa": "6.05372e+23", "userVoteSupport": undefined, }, { @@ -427,184 +565,128 @@ Privilege commands on Ethereum will be executed by the [Guardian wallet](https:/ "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2024-08-13T13:37:12.000Z, - "createdTxHash": "0xa414b4494161bc0d18495955cd56c3e0198e688ca2cd8fde413ee7d8213ac6f5", + "createdDate": 2024-09-12T11:14:08.000Z, + "createdTxHash": "0xf14e6e818dceaa2b107bbd4d8ab868e7512fa16d03fabf6dc4e00d241a3b78fc", "description": { - "abstainDescription": "Indifferent to execution", - "againstDescription": "Do not execute this proposal", - "description": "#### Summary - -If passed, this VIP will perform the following actions: - -- set to 0.01% the incentive for every conversion pair in every Token Converter contract used by the Venus Protocol on BNB Chain, following the [Chaos Labs recommendations](https://community.venus.io/t/chaos-labs-token-converter/4521). -- enable USDT conversions on every Token Converter, for any wallet, not only for other converters - -#### Description - -Token Converters are permissionless: anyone is able to perform a conversion on those contracts. Incentives on the Token Converters should create arbitrage opportunities, returning on each conversion slightly more than the expected amounts only considering the oracle prices of the tokens involved, or requiring fewer tokens than expected (depending on the type of conversion set by the caller). The community is expected to take advantage of these arbitrages and operate the Token Converter contracts fluently because they should be economically profitable. - -The distribution of funds to the RiskFundConverter has been zero since [VIP-332](https://app.venus.io/#/governance/proposal/332?chainId=56). Nowadays there is no converter interested in USDT receiving a fluent flow of tokens that could be used to convert the offer of the rest of the converters. So, it doesn’t make sense to maintain “only private” conversions of USDT in those converters. This VIP will open the USDT conversions in the following Token Converters on BNB Chain: - -- [USDTPrimeConverter](https://bscscan.com/address/0xD9f101AA67F3D72662609a2703387242452078C3) -- [USDCPrimeConverter](https://bscscan.com/address/0xa758c9C215B6c4198F0a0e3FA46395Fa15Db691b) -- [BTCBPrimeConverter](https://bscscan.com/address/0xE8CeAa79f082768f99266dFd208d665d2Dd18f53) -- [ETHPrimeConverter](https://bscscan.com/address/0xca430B8A97Ea918fF634162acb0b731445B8195E) - -#### References - -- [VIP Simulation](https://github.com/VenusProtocol/vips/pull/339) -- [Token Converters documentation](https://docs-v4.venus.io/whats-new/token-converter) -- [Technical article about Token Converters](https://docs-v4.venus.io/technical-reference/reference-technical-articles/token-converters) -- [Addresses of the deployed Token Converter contracts](https://docs-v4.venus.io/deployed-contracts/token-converters) -- [Chaos Labs recommendation](https://community.venus.io/t/chaos-labs-token-converter/4521)", - "forDescription": "Execute this proposal", - "title": "VIP-350 Incentives for Token Converters", + "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", + "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", + "description": "#### Description + Mint faucet on all network", + "forDescription": "I agree that Venus Protocol should proceed with this proposal", + "title": "Test VIP", "version": "v2", }, - "endBlock": 41357522, - "endDate": 2028-02-18T08:10:08.000Z, - "executedDate": 2024-08-16T13:47:42.000Z, - "executedTxHash": "0x685c225c029aefa3964bfa45e4f0624dcf23f5a1cbb82df284e1bd8657fa96ff", - "executionEtaDate": 2024-08-16T13:42:52.000Z, - "forVotes": [ - { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "350", - "reason": "Community delegators approved. This will encourage more conversion to be made.", - "support": 1, - "votesMantissa": "4.33351494678100717533085e+23", - }, - { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", - }, - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", - }, - { - "address": "0x69796191e5cb32eaaf1abf6bc1ce454e4e5a064f", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "1.900610293907734918039e+21", - }, - { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "1.16825e+21", - }, - { - "address": "0x680258c252f543db74b3e8a16345403b2e80125a", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "1.067731716588899751324e+21", - }, - { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", - }, - { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "13777102348559360929", - }, - { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "13058470954295420970", - }, - { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "350", - "reason": undefined, - "support": 1, - "votesMantissa": "9977051682906883578", - }, - ], - "forVotesMantissa": "7.52914287346152900465829e+23", - "proposalActions": [ + "endBlock": 43806643, + "endDate": 2028-05-13T09:06:11.000Z, + "executedDate": undefined, + "executedTxHash": undefined, + "executionEtaDate": 1970-01-01T00:00:00.000Z, + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { "actionIndex": 0, - "callData": "0x00000000000000000000000055d398326f99059ff775485246999027b319795500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", - "target": "0xa5622d276ccbb8d9bbe3d1ffd1bb11a0032e53f0", + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", "value": "0", }, { "actionIndex": 1, - "callData": "0x00000000000000000000000055d398326f99059ff775485246999027b319795500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", - "target": "0xd9f101aa67f3d72662609a2703387242452078c3", + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", "value": "0", }, { "actionIndex": 2, - "callData": "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b100000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", - "target": "0xa758c9c215b6c4198f0a0e3fa46395fa15db691b", + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", "value": "0", }, { "actionIndex": 3, - "callData": "0x0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", - "target": "0xe8ceaa79f082768f99266dfd208d665d2dd18f53", - "value": "0", - }, - { - "actionIndex": 4, - "callData": "0x0000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f800000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c873402000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c630000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", - "target": "0xca430b8a97ea918ff634162acb0b731445b8195e", - "value": "0", - }, - { - "actionIndex": 5, - "callData": "0x000000000000000000000000cf6bb5389c92bdda8a3747ddb454cb7a64626c6300000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000fb6115445bff7b52feb98650c87f44907e58f8020000000000000000000000003ee2200efb3400fabb9aacf31297cbdd1d435d470000000000000000000000008ff795a6f4d97e7887c79bea79aba5cc76444adf000000000000000000000000250632378e573c6be1ac2f97fcdf00515d0aa91b0000000000000000000000007130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c000000000000000000000000e9e7cea3dedca5984780bafc599bd69add087d560000000000000000000000000e09fabb73bd3ade0a17ecc321fd13a19e81ce820000000000000000000000001af3f329e8be154074d8769d1ffa4ee058b1dbc3000000000000000000000000ba2ae424d960c26247dd6c32edc70b295c744c430000000000000000000000007083609fce4d1d8dc0c979aab8c869ea2c8734020000000000000000000000002170ed0880ac9a755fd29b2688956bd959f933f8000000000000000000000000c5f0f7b66764f6ec8c8dff7ba683102295e164090000000000000000000000000d8ce2a99bb6e3b7db580ed848240e4a0f9ae153000000000000000000000000f8a0bf9cf54bb92f17374d9e9a321e6a111a51bd0000000000000000000000004338665cbb7b2485a8855a139b75d5e34ab0db94000000000000000000000000cc42724c6683b7e57334c4e856f4c9965ed682bd00000000000000000000000047bead2563dcbf3bf2c9407fea4dc236faba485a000000000000000000000000ce7de646e7208a4ef112cb6ed5038fa6cc6b12e300000000000000000000000085eac5ac2f758618dfa09bdbe0cf174e7d574d5b00000000000000000000000040af3827f39d0eacbf4a168f8d4ee67c121d11c900000000000000000000000014016e85a25aeb13065688cafb43044c2ef86784000000000000000000000000bf5140a22578168fd562dccf235e5d43a02ce9b10000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000a2e3356610840701bdf5611a53974510ae27e2e10000000000000000000000001d2f0da169ceb9fc7b3144628db156f3f6c60dbe0000000000000000000000000782b6d8c4551b9760e74c0545a9bcd90bdc41e500000000000000000000000012f31b73d812c6bb0d735a218c086d44d5fe5f89000000000000000000000000965f527d9159dce6288a2219db51fc6eef120dd10000000000000000000000008f0528ce5ef7b51152a59745befdd91d97091d2f000000000000000000000000f307910a4c7bbc79691fd374889b36d8531b08e300000000000000000000000052f24a5e03aee338da5fd9df68d2b6fae11788270000000000000000000000004b0f1812e5df2a09796481ff14017e6005508003000000000000000000000000ca6d678e74f553f0e59cccc03ae644a3c2c5ee7d00000000000000000000000012bb890508c125661e03b09ec06e404bc9289040000000000000000000000000fb5b838b6cfeedc2873ab27866079ac55363d37e0000000000000000000000001bdd3cf7f79cfb8edbb955f20ad99211551ba275000000000000000000000000c2e9d07f66a89c44062459a47a0d2dc038e4fb16000000000000000000000000b0b84d294e0c75a6abe60171b70edeb2efd14a1b000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c000000000000000000000000352cb5e19b12fc216548a2677bd0fce83bae434b000000000000000000000000aef0d72a118ce24fee3cd1d43d383897d05b4e99000000000000000000000000d17479997f34dd9156deef8f95a52d81d265be9c000000000000000000000000c748673057861a797275cd8a068abb95a902e8de000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a4000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000000000000000000000000000000000000000000001", - "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", - "target": "0xd5b9ae835f4c59272032b3b954417179573331e0", + "callData": "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", "value": "0", }, ], - "proposalId": "350", + "proposalId": 431, "proposalType": 0, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": 2024-08-14T13:42:52.000Z, - "queuedTxHash": "0xec69d21f1d87d1d64c7c35f48801af90eaabd39ebc19c7ada420c5a828943e1c", - "startDate": 2028-02-17T08:10:08.000Z, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": undefined, + "queuedTxHash": undefined, + "remoteProposals": [ + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 97, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 431, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 431, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 431, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + ], + "startDate": 2028-05-13T08:58:41.000Z, "state": 0, - "totalVotesMantissa": "7.52914287346152900465829e+23", + "totalVotesMantissa": "0", "userVoteSupport": undefined, }, { @@ -614,782 +696,323 @@ The distribution of funds to the RiskFundConverter has been zero since [VIP-332] "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2024-08-08T20:47:59.000Z, - "createdTxHash": "0x21a094c5c7c20b955a7333d369537ba0ca56f6519009c1be13d71aef23c4f4fc", + "createdDate": 2024-09-11T23:45:58.000Z, + "createdTxHash": "0x6bb301c7a05942e284c1276ca4ca02006818b8ab2794678c16f3a36432fbb933", "description": { "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "#### Summary - -If passed, this VIP will transfer to the [Venus Community Wallet](https://bscscan.com/address/0xc444949e0054A23c44Fc45789738bdF64aed2391) 193,000 USDT and 200,000 VAI, from the [Venus Treasury](https://bscscan.com/address/0xf322942f644a996a617bd29c16bd7d231d9f35e9) for the annual Venus Stars Program (Ambassador Program) budget renewal for the period of July 2024 - June 2025. All unused funds will be carried over and used in the next period as previously. - -#### Description - -The Venus Stars Team suggests revising and enhancing the budget for the Venus Ambassadors program. With Venus expanding to multiple new blockchains, additional resources are necessary. The proposed restructuring aims to ensure that resources are appropriately allocated to meet the program's increasing needs, enabling effective outreach and support for our global community. - -#### Details - -- The estimated yearly budget total is $393K. We propose using a mix of VAI tokens already accumulated in the Venus Treasury and USDT to fund the program. -- This VIP will transfer: 200,000 VAI and 193,000 USDT to the Venus Community wallet address: [0xc444949e0054A23c44Fc45789738bdF64aed2391](https://bscscan.com/address/0xc444949e0054A23c44Fc45789738bdF64aed2391) - -#### References - -- [Venus Stars Program Renewal Snapshot](https://snapshot.org/#/venus-xvs.eth/proposal/0xfc7200b104fc61aa283ef25136c7d48d686f1edc2bb684d3da2904508ac69aa8) -- [Proposal: Venus Stars Program Renewal 2024](https://community.venus.io/t/proposal-venus-stars-program-renewal-2024/4488) -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/343)", + "description": "https://github.com/VenusProtocol/vips/pull/373", "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-349 Venus Stars Program Renewal", + "title": "LST ETH pool on BNB chain", "version": "v2", }, - "endBlock": 41222386, - "endDate": 2028-02-13T15:33:20.000Z, - "executedDate": 2024-08-11T20:56:48.000Z, - "executedTxHash": "0x778fd345eb8266f35d2d2f8b62cc3387ce7f61eeb02fecb5e555ae1cc72585f1", - "executionEtaDate": 2024-08-11T20:53:57.000Z, + "endBlock": 43792881, + "endDate": 2028-05-12T21:38:05.000Z, + "executedDate": 2024-09-12T00:20:01.000Z, + "executedTxHash": "0xa3986c6801415c76451f32c279b74f3f8165ea65d03494dcec41a5370b2035ac", + "executionEtaDate": 2024-09-12T00:19:28.000Z, + "expiredDate": undefined, "forVotes": [ { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "349", - "reason": "Community delegators approved.", - "support": 1, - "votesMantissa": "4.22221862502414366428894e+23", - }, - { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", - }, - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "349", + "address": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "proposalId": "430", "reason": undefined, "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", - }, - { - "address": "0xfde2e514f35c23e9950bb15163c75baed6912da3", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "1.1000441812099855686804e+22", - }, - { - "address": "0x4fb395052ec1fdf60c975633bef218f0a90979b4", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "1.197152300804669263205e+21", - }, - { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "1.16825e+21", - }, - { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "801851714101606493084", - }, - { - "address": "0x4b1538f30b7bd01a5f3fbb02e376c734ed9bc66e", - "proposalId": "349", - "reason": "Ἡ ψυχὴ τῶν νοημάτων ἓλκεται", - "support": 1, - "votesMantissa": "286647359398186352914", - }, - { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", - }, - { - "address": "0x299741f68fd5b59ca177795d824f9ce9f6843bba", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "63404721729301508664", - }, - { - "address": "0x8dd7b41c2a54f4ae983b5240eff60977494e65ed", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "10000000000000000000", - }, - { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "4297102348559360929", - }, - { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "3338470954295420970", - }, - { - "address": "0x1c79eb2546e9e5c07a6be6cfb9c341a52eb107db", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "2000000000000000000", - }, - { - "address": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "1002000000000000000", - }, - { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "349", - "reason": undefined, - "support": 1, - "votesMantissa": "142051682906883578", - }, - { - "address": "0x59c3e411ce0f4c0a95d587bbfadbb7b9dfff8c0f", - "proposalId": "349", - "reason": "0x14b421445a93a7173a164b42db9f5a898151cbfcd6a21af05d4cf326d1426b41", - "support": 1, - "votesMantissa": "3553134169023", + "votesMantissa": "6.05372e+23", }, ], - "forVotesMantissa": "7.52149778071656668165969e+23", + "forVotesMantissa": "6.05372e+23", "proposalActions": [ { "actionIndex": 0, - "callData": "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000028de8d0c022cd6a00000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "callData": "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "signature": "setDirectPrice(address,uint256)", + "target": "0xcea29f1266e880a1482c06ed656cd08c148baa32", "value": "0", }, { "actionIndex": 1, - "callData": "0x0000000000000000000000004bd17003473389a42daf6a0a729f6fdb328bbbd7000000000000000000000000000000000000000000002a5a058fc295ed000000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "callData": "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "signature": "setDirectPrice(address,uint256)", + "target": "0x0af51d1504ac5b711a9eafe2fac11a51d32029ad", "value": "0", }, - ], - "proposalId": "349", - "proposalType": 0, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": 2024-08-09T20:53:57.000Z, - "queuedTxHash": "0xd50050e75d00114d41e05f3ad31a13dfed5ed57c2221ad1b47bee8c0ae473ab3", - "startDate": 2028-02-12T15:33:20.000Z, - "state": 0, - "totalVotesMantissa": "7.52149778071656668165969e+23", - "userVoteSupport": undefined, - }, - { - "abstainVotes": [], - "abstainedVotesMantissa": "0", - "againstVotes": [], - "againstVotesMantissa": "0", - "cancelDate": undefined, - "cancelTxHash": undefined, - "createdDate": 2024-07-31T11:39:23.000Z, - "createdTxHash": "0x7970c74beda8a501e0ea863d6f12520e56a7387835a8b6114edf51042b9d8532", - "description": { - "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", - "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "#### Summary - -After the successful passing of the [snapshot vote](https://snapshot.org/#/venus-xvs.eth/proposal/0x508fc5f4eefae40532ebc5bbf3c917ea9e4460a5a916eca7f5cb371624815dc0) to adjust the XVS emissions on Ethereum, if passed, this VIP will update the distribution speeds for the different Ethereum markets. - -The current emission on Ethereum markets is 1,271.1 XVS/day, and after the change the daily emission of XVS in these markets will be 1,007.5 XVS/day. - -#### Details - -Specifically, the changes in the monthly XVS emissions are: - -Core pool: - -- WETH. From 1,125 XVS/month to 844 XVS/month (-25%) -- WBTC. From 3,375 XVS/month to 2,531 XVS/month (-25%) -- USDT. From 3,375 XVS/month to 3,038 XVS/month (-10%) -- USDC. From 3,375 XVS/month to 3,038 XVS/month (-10%) -- crvUSD. From 1,500 XVS/month to 750 XVS/month (-50%) -- FRAX. From 600 XVS/month to 300 XVS/month (-50%) -- sFRAX. From 600 XVS/month to 300 XVS/month (-50%) -- TUSD. From 200 XVS/month to 100 XVS/month (-50%) -- DAI. From 500 XVS/month to 250 XVS/month (-50%) - -Curve pool: - -- CRV. From 375 XVS/month to 188 XVS/month (-50%) -- crvUSD. From 375 XVS/month to 188 XVS/month (-50%) - -LST pool: - -- ETH. From 18,333 XVS/month to 16,500 XVS/month (-10%) -- wstETH. From 3,600 XVS/month to 1,800 XVS/month (-50%) -- sfrxETH. From 800 XVS/month to 400 XVS/month (-50%) - -#### References - -- [Snapshot](https://snapshot.org/#/venus-xvs.eth/proposal/0x508fc5f4eefae40532ebc5bbf3c917ea9e4460a5a916eca7f5cb371624815dc0) -- [Community post proposing the XVS emission adjustment on Ethereum](https://community.venus.io/t/emissions-adjustments-for-eth-mainnet/4480) -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/331) -- RewardsDistributor contracts: - - [XVS RewardsDistributor for the Core pool (1)](https://etherscan.io/address/0x134bfDEa7e68733921Bc6A87159FB0d68aBc6Cf8) - - [XVS RewardsDistributor for the Core pool (2)](https://etherscan.io/address/0x886767B62C7ACD601672607373048FFD96Cf27B2) - - [XVS RewardsDistributor for the Curve pool (1)](https://etherscan.io/address/0x8473B767F68250F5309bae939337136a899E43F9) - - [XVS RewardsDistributor for the Curve pool (2)](https://etherscan.io/address/0x461dE281c453F447200D67C9Dd31b3046c8f49f8) - - [XVS RewardsDistributor for the LST pool (1)](https://etherscan.io/address/0x7A91bEd36D96E4e644d3A181c287E0fcf9E9cc98) - - [XVS RewardsDistributor for the LST pool (2)](https://etherscan.io/address/0x1e25CF968f12850003Db17E0Dba32108509C4359) - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x0523ca9fae18ba3e27664eddf4c2e8787e2791b971b347a00b7e71a590afaedf) multisig transaction will be executed. Otherwise, it will be rejected.", - "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-348 [Ethereum] Market Emission Adjustment", - "version": "v2", - }, - "endBlock": 40981705, - "endDate": 2028-02-05T06:59:17.000Z, - "executedDate": 2024-08-01T17:46:12.000Z, - "executedTxHash": "0xacb8a6a6018cfff85107eca61402002dc920797723473f4bc16888fdfd090cab", - "executionEtaDate": 2024-08-01T17:45:26.000Z, - "forVotes": [ - { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "348", - "reason": "Community delegators approved.", - "support": 1, - "votesMantissa": "4.07779967776023765017027e+23", - }, - { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", - }, - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", - }, - { - "address": "0x2626600b9a04607b876afd155d7bef6832ac25ef", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "8.314092906506949935206e+21", - }, { - "address": "0x233506d641310d0fc34938ef0a8cbe90efca4fec", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "1.687000030424725054277e+21", - }, - { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "1.166e+21", - }, - { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", - }, - { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "4297102348559360929", - }, - { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "3338470954295420970", + "actionIndex": 2, + "callData": "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000000000000000000000000000000e043da6172500000000000000000000000000000000000000000000000000000dbd2fc137a30000", + "signature": "setValidateConfig((address,uint256,uint256))", + "target": "0x2842140e4ad3a92e9af30e27e290300dd785076d", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "348", - "reason": undefined, - "support": 1, - "votesMantissa": "142051682906883578", - }, - ], - "forVotesMantissa": "7.34344226370510988269891e+23", - "proposalActions": [], - "proposalId": "348", - "proposalType": 1, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": 2024-08-01T11:45:26.000Z, - "queuedTxHash": "0x22c6b3a217539a274ce68e982c89d72f7c4388c0e39cea0149c21f9f1cb7bd4e", - "startDate": 2028-02-04T06:59:17.000Z, - "state": 0, - "totalVotesMantissa": "7.34344226370510988269891e+23", - "userVoteSupport": undefined, - }, - { - "abstainVotes": [], - "abstainedVotesMantissa": "0", - "againstVotes": [], - "againstVotesMantissa": "0", - "cancelDate": undefined, - "cancelTxHash": undefined, - "createdDate": 2024-07-29T15:37:37.000Z, - "createdTxHash": "0xce36b4bd841fa681b4e9374a854b061462e9f0f1aa18ef101291efc93e589121", - "description": { - "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", - "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "This VIP will perform the following Risk Parameter actions as per Chaos Labs’ latest recommendations in this Venus community forum publication: [Chaos Labs - Supply Cap Recommendation for PT-weETH - 07.24.2024](https://community.venus.io/t/chaos-labs-supply-cap-recommendation-for-pt-weeth-07-24-2024/4483/2). - -- [PT-wETH-26DEC2024 (Liquid Staked ETH)](https://etherscan.io/address/0x76697f8eaeA4bE01C678376aAb97498Ee8f80D5C): increase supply cap from 1,200 to 2,400 - -Complete analysis and details of these recommendations are available in the above publication. - -#### References - -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/329) - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x299f67a2733432ee74d856b598c6193faf0bfc5f633795b55480f36addd682a4&safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67) multisig transaction will be executed. Otherwise, it will be rejected.", - "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-347 [Ethereum] Risk Parameters Adjustments (PT-weETH-DEC24)", - "version": "v2", - }, - "endBlock": 40929025, - "endDate": 2028-02-03T11:05:17.000Z, - "executedDate": 2024-07-30T22:33:28.000Z, - "executedTxHash": "0x72882a78508c8614714227c18fb2969b60f87653380da0e7ff38a6a2dcb37a42", - "executionEtaDate": 2024-07-30T21:42:12.000Z, - "forVotes": [ - { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "347", - "reason": "Community delegators approved. ", - "support": 1, - "votesMantissa": "4.07294859671133875870307e+23", + "actionIndex": 3, + "callData": "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "signature": "setDirectPrice(address,uint256)", + "target": "0xcea29f1266e880a1482c06ed656cd08c148baa32", + "value": "0", }, { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", + "actionIndex": 4, + "callData": "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000000f43fc2c04ee0000", + "signature": "setDirectPrice(address,uint256)", + "target": "0x0af51d1504ac5b711a9eafe2fac11a51d32029ad", + "value": "0", }, { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 5, + "callData": "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000000e043da6172500000000000000000000000000000000000000000000000000000dbd2fc137a30000", + "signature": "setValidateConfig((address,uint256,uint256))", + "target": "0x2842140e4ad3a92e9af30e27e290300dd785076d", + "value": "0", }, { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 6, + "callData": "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d12900000000000000000000000035af302a0b4653f214240fcb2dff059fe42ec2ce000000000000000000000000b1bf3f668e0e047ab214c7373cf6b06de37c8152000000000000000000000000b1bf3f668e0e047ab214c7373cf6b06de37c8152000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001", + "signature": "setTokenConfig((address,address[3],bool[3]))", + "target": "0x3cd69251d04a28d887ac14cbe2e14c52f3d57823", + "value": "0", }, { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", + "actionIndex": 7, + "callData": "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc000000000000000000000000f1b65d1331dceed40da71cfc4f06d9754a3f37560000000000000000000000008c8a70695dc952ca2e8cd4038907201fabb8134e0000000000000000000000008c8a70695dc952ca2e8cd4038907201fabb8134e000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001", + "signature": "setTokenConfig((address,address[3],bool[3]))", + "target": "0x3cd69251d04a28d887ac14cbe2e14c52f3d57823", + "value": "0", }, { - "address": "0x1aac35c305d28fd74edfa2d787facabb8bcbd495", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "7.034867979848956450815e+21", + "actionIndex": 8, + "callData": "0x", + "signature": "acceptOwnership()", + "target": "0x4a73ebd3dca511cf3574768bd6184747342c23f2", + "value": "0", }, { - "address": "0x4fb395052ec1fdf60c975633bef218f0a90979b4", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "1.179216624617963638137e+21", + "actionIndex": 9, + "callData": "0x", + "signature": "acceptOwnership()", + "target": "0xc7859b809ed5a2e98659ab5427d5b69e706ae26b", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "1.166e+21", + "actionIndex": 10, + "callData": "0x0000000000000000000000003cd69251d04a28d887ac14cbe2e14c52f3d57823", + "signature": "setPriceOracle(address)", + "target": "0xc7859b809ed5a2e98659ab5427d5b69e706ae26b", + "value": "0", }, { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "801851714101606493084", + "actionIndex": 11, + "callData": "0x00000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000c7859b809ed5a2e98659ab5427d5b69e706ae26b00000000000000000000000000000000000000000000000006f05b59d3b200000000000000000000000000000000000000000000000000000e27c49886e600000000000000000000000000000000000000000000000000056bc75e2d6310000000000000000000000000000000000000000000000000000000000000000000114c6971756964205374616b656420455448000000000000000000000000000000", + "signature": "addPool(string,address,uint256,uint256,uint256)", + "target": "0xc85491616fa949e048f3aac39fbf5b0703800667", + "value": "0", }, { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", + "actionIndex": 12, + "callData": "0x000000000000000000000000e840f8ec2dc50e7d22e5e2991975b9f6e34b62ad", + "signature": "setPrimeToken(address)", + "target": "0xc7859b809ed5a2e98659ab5427d5b69e706ae26b", + "value": "0", }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "3338470954295420970", + "actionIndex": 13, + "callData": "0x0000000000000000000000000000000000000000000000000000000000007080", + "signature": "setReduceReservesBlockDelta(uint256)", + "target": "0x16eb5ce6d186b49709dd588518cd545985096ff5", + "value": "0", }, { - "address": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "1002000000000000000", + "actionIndex": 14, + "callData": "0x00000000000000000000000000000000000000000000000003782dace9d90000", + "signature": "setReserveFactor(uint256)", + "target": "0x16eb5ce6d186b49709dd588518cd545985096ff5", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "347", - "reason": undefined, - "support": 1, - "votesMantissa": "142051682906883578", + "actionIndex": 15, + "callData": "0x0000000000000000000000004349016259fcd8ee452f696b2a7beee31667d12900000000000000000000000000000000000000000000000031442230f8a30000000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", + "signature": "withdrawTreasuryBEP20(address,uint256,address)", + "target": "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", + "value": "0", }, - ], - "forVotesMantissa": "7.32870666544909391354795e+23", - "proposalActions": [], - "proposalId": "347", - "proposalType": 1, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": 2024-07-30T15:42:12.000Z, - "queuedTxHash": "0x4b739acb7f4d968000c7f583b00d6e665563b70e44ccbf6dd38cadc2d10fd54c", - "startDate": 2028-02-02T11:05:17.000Z, - "state": 0, - "totalVotesMantissa": "7.32870666544909391354795e+23", - "userVoteSupport": undefined, - }, - { - "abstainVotes": [], - "abstainedVotesMantissa": "0", - "againstVotes": [], - "againstVotesMantissa": "0", - "cancelDate": undefined, - "cancelTxHash": undefined, - "createdDate": 2024-07-26T17:52:42.000Z, - "createdTxHash": "0xa776b580205bd77d410bcba8ffac771f7393f22af5a5d2dd059f5d7e98b966be", - "description": { - "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", - "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "#### Summary - -If passed this VIP will perform the following actions: - -- Transfer 35,000 USDT to Certik for the retainer program (July and August 2024) -- Transfer 7,500 USDT to Fairyproof for the audit of Two Kinks Interest Rates -- Transfer 21,600 USDC to Chainalysis for the yearly subscription fee renewal -- Transfer 170,000 USDC to ChaosLabs for the Quarterly fee -- Transfer 3,000 USDT to ChainPatrol -- Transfer assets back to the community wallet for various deployments GAS refund -- Transfer 68,000 XVS and 833.33 BNB to Skynet for the liquidity management of XVS - -#### Details - -**Certik - retainer program** - -- Auditor: Certik ([https://certik.com](https://certik.com/)) -- Concept: Retainer program - monthly payment of July and August 2024. Scheduled audits by Certik in July and August: Two Kinks Interest Rates -- Cost: 35,000 USDT, to be sent to the BEP20 address 0x4cf605b238e9c3c72d0faed64d12426e4a54ee12 - -**Fairyproof - Two Kinks Interest Rates** - -- Auditor: Fairyproof ([https://www.fairyproof.com](https://www.fairyproof.com/)) -- Payload: Two Kinks Interest Rates ([here](https://github.com/VenusProtocol/venus-protocol/pull/494) and [here](https://github.com/VenusProtocol/isolated-pools/pull/417)) -- Status: audit started on July 26th, 2024. It should take 3 days -- Cost: 7,500 USDT, to be sent to the BEP20 address 0x060a08fff78aedba4eef712533a324272bf68119 - -**Chainalysis** - -- [http://chainalysis.com](http://chainalysis.com/) -- Entity Risking - Silver plan - All Assets 100,000 Screens / Annual -- Support Level - Gold - Commercial -- Payment to be sent to the community wallet to issue payment -- Cost: 21,600 USDC, to be sent to the BEP20 address: 0xc444949e0054A23c44Fc45789738bdF64aed2391 - -**Chaos Labs** - -- [https://chaoslabs.xyz](https://chaoslabs.xyz/) -- Quarterly payment of Q3-2024 USDC 100,000.00 -- Q3-2024 Additional deployment (Ethereum) USDC 30,000 -- Q2-Q3 Additional Deployment (Arbitrum) Prorated 4 months USDC 40,000 -- Cost: 170,000 USDC, to be sent to the BEP20 address 0xfb1912af5b9d3fb678f801bf764e98f1c217ef35 - -**ChainPatrol** - -- [https://chainpatrol.io](https://chainpatrol.io/) -- [Proposal:](https://community.venus.io/t/proposal-to-venus-protocol-enhancing-security-and-trust-with-chainpatrol/4474) Enhancing Security and Trust with ChainPatrol. -- Pay $3,000 USD ($250 USD/mo) for 1 Year Contract -- [Snapshot vote](https://snapshot.org/#/venus-xvs.eth/proposal/0x66e9a98483a28125452b502feddcfcdc38a626ed25754bebb79c1a7fbd97f058) -- Cost: 3,000 USDT, to be sent to the BEP20 address 0x3D9d22E1821Be3b1Ce2A8ACB6FE47fFEF04243c3 - -**Community Refunds** - -- [2 BNB](https://bscscan.com/tx/0xf74d485ecba35d2081070d6661854633713e18354d333069141077cdb7389e25) provided for VIP-330 Timelock GAS -- [30 USDT](https://etherscan.io/tx/0xc5f5029d26caa1ad9c1bbb361825ae352218f39d804c0831caaa698d10b4f888) converted to ETH to Release Funds on ETH Converters -- [270 USDT](https://etherscan.io/tx/0x6935ee847c3d87d6d0a35e9896c6342704ecd5ed8264412e41858e2582013fb9) converted to ETH to Release Funds on ETH Converters -- [636.61 USDT](https://etherscan.io/tx/0x8eac6be59707fe1553474ff649594cc3b68e1a735b3dd8598740f93e9b7260fe) Swapped to ETH for VIP-335 ETH Comptroller Upgrade GAS -- [313 USDC](https://bscscan.com/tx/0x67e836eacf4dc429deff03d69cc5ac05e4b815180b92b5b19595ae98b9e6745f) converted to ETH for VIP-335 Execution -- Total: 2 BNB / 936.61 USDT / 313 USDC, to be sent to the BEP20 address 0xc444949e0054A23c44Fc45789738bdF64aed2391 - -**Skynet Trading** - -- [https://skynettrading.com](https://skynettrading.com/) -- Liquidity Management budget Increase (XVS/BNB) pair. -- Cost: 68,000 XVS ($500K, assuming 1 XVS = $7.35) and 833.33 BNB ($500K, assuming 1 BNB= $600) -- [Proposal](https://community.venus.io/t/proposal-liquidity-management-budget-increase-xvs-bnb/4482) -- [Snapshot Vote](https://snapshot.org/#/venus-xvs.eth/proposal/0x5e83f140833485f59fb7190b77088dfe5d76879500c233f7afe202315097aa41) -- Funds to be transferred to the DeFiTech/SkyNet Multisig -- BEP20: 0x4124E7aAAfd7F29ad6E6914B80179060B8bE871c - -#### References - -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/333)", - "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-346 Payments issuance for audits and other expenses", - "version": "v2", - }, - "endBlock": 40845488, - "endDate": 2028-01-31T13:28:26.000Z, - "executedDate": 2024-07-29T18:01:16.000Z, - "executedTxHash": "0x211c3036c345350c47f9d3f4de1751838d75f2a8f1435131b73c914b09c362d8", - "executionEtaDate": 2024-07-29T17:59:24.000Z, - "forVotes": [ { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "346", - "reason": "Community delegators Approved. ", - "support": 1, - "votesMantissa": "4.07289674445287940237609e+23", + "actionIndex": 16, + "callData": "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b070380066700000000000000000000000000000000000000000000000031442230f8a30000", + "signature": "approve(address,uint256)", + "target": "0x4349016259fcd8ee452f696b2a7beee31667d129", + "value": "0", }, { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", + "actionIndex": 17, + "callData": "0x00000000000000000000000016eb5ce6d186b49709dd588518cd545985096ff50000000000000000000000000000000000000000000000000c7d713b49da00000000000000000000000000000000000000000000000000000ce80612991d000000000000000000000000000000000000000000000000000031442230f8a300000000000000000000000000008b293600c50d6fbdc6ed4251cc75ece29880276f000000000000000000000000000000000000000000000002b5e3af16b18800000000000000000000000000000000000000000000000000004563918244f40000", + "signature": "addMarket((address,uint256,uint256,uint256,address,uint256,uint256))", + "target": "0xc85491616fa949e048f3aac39fbf5b0703800667", + "value": "0", }, { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 18, + "callData": "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000000000000000000000", + "signature": "approve(address,uint256)", + "target": "0x4349016259fcd8ee452f696b2a7beee31667d129", + "value": "0", }, { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 19, + "callData": "0x000000000000000000000000000000000000000000000000002386f26fc10000", + "signature": "setProtocolSeizeShare(uint256)", + "target": "0x16eb5ce6d186b49709dd588518cd545985096ff5", + "value": "0", }, { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", + "actionIndex": 20, + "callData": "0x0000000000000000000000000000000000000000000000000000000000007080", + "signature": "setReduceReservesBlockDelta(uint256)", + "target": "0x4bd7efb423f06fa033404fbd0935a2097918084d", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "1.166e+21", + "actionIndex": 21, + "callData": "0x00000000000000000000000000000000000000000000000003782dace9d90000", + "signature": "setReserveFactor(uint256)", + "target": "0x4bd7efb423f06fa033404fbd0935a2097918084d", + "value": "0", }, { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "801851714101606493084", + "actionIndex": 22, + "callData": "0x0000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc0000000000000000000000000000000000000000000000003d82eb1e09de9ad6000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", + "signature": "withdrawTreasuryBEP20(address,uint256,address)", + "target": "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", + "value": "0", }, { - "address": "0x299741f68fd5b59ca177795d824f9ce9f6843bba", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "63404721729301508664", + "actionIndex": 23, + "callData": "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000003d82eb1e09de9ad6", + "signature": "approve(address,uint256)", + "target": "0x7df9372096c8ca2401f30b3df931beff493f1fdc", + "value": "0", }, { - "address": "0x1c25523a33128dc87ff6f26c444a981b03a97f1e", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "7986304696458341870", + "actionIndex": 24, + "callData": "0x0000000000000000000000004bd7efb423f06fa033404fbd0935a2097918084d0000000000000000000000000000000000000000000000000c7d713b49da00000000000000000000000000000000000000000000000000000ce80612991d00000000000000000000000000000000000000000000000000003d82eb1e09de9ad60000000000000000000000008b293600c50d6fbdc6ed4251cc75ece29880276f000000000000000000000000000000000000000000000015af1d78b58c40000000000000000000000000000000000000000000000000000ad78ebc5ac6200000", + "signature": "addMarket((address,uint256,uint256,uint256,address,uint256,uint256))", + "target": "0xc85491616fa949e048f3aac39fbf5b0703800667", + "value": "0", }, { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "4297102348559360929", + "actionIndex": 25, + "callData": "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000000000000000000000", + "signature": "approve(address,uint256)", + "target": "0x7df9372096c8ca2401f30b3df931beff493f1fdc", + "value": "0", }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "3338470954295420970", + "actionIndex": 26, + "callData": "0x000000000000000000000000000000000000000000000000002386f26fc10000", + "signature": "setProtocolSeizeShare(uint256)", + "target": "0x4bd7efb423f06fa033404fbd0935a2097918084d", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "346", - "reason": undefined, - "support": 1, - "votesMantissa": "142051682906883578", + "actionIndex": 27, + "callData": "0x0000000000000000000000000000000000000000000000000000000000007080", + "signature": "setReduceReservesBlockDelta(uint256)", + "target": "0x46d49adf48172d2e79d813a3f4f27ab61724b01e", + "value": "0", }, - ], - "forVotesMantissa": "7.24526856486012757789664e+23", - "proposalActions": [ { - "actionIndex": 0, - "callData": "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000007695a92c20d6fe000000000000000000000000000004cf605b238e9c3c72d0faed64d12426e4a54ee12", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 28, + "callData": "0x0000000000000000000000000000000000000000000000000214e8348c4f0000", + "signature": "setReserveFactor(uint256)", + "target": "0x46d49adf48172d2e79d813a3f4f27ab61724b01e", "value": "0", }, { - "actionIndex": 1, - "callData": "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000001969368974c05b00000000000000000000000000000060a08fff78aedba4eef712533a324272bf68119", + "actionIndex": 29, + "callData": "0x00000000000000000000000098f7a83361f7ac8765ccebab1425da6b341958a70000000000000000000000000000000000000000000000001bc16d674ec80000000000000000000000000000ce10739590001705f7ff231611ba4a48b2820327", "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "target": "0x8b293600c50d6fbdc6ed4251cc75ece29880276f", "value": "0", }, { - "actionIndex": 2, - "callData": "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000000000000000000000000492f037764b95800000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 30, + "callData": "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000001bc16d674ec80000", + "signature": "approve(address,uint256)", + "target": "0x98f7a83361f7ac8765ccebab1425da6b341958a7", "value": "0", }, { - "actionIndex": 3, - "callData": "0x000000000000000000000000eca88125a5adbe82614ffc12d0db554e2e2867c80000000000000000000000000000000000000000000000000000e6e81179dc00000000000000000000000000c53ffda840b51068c64b2e052a5715043f634bcd", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 31, + "callData": "0x00000000000000000000000046d49adf48172d2e79d813a3f4f27ab61724b01e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001bc16d674ec800000000000000000000000000008b293600c50d6fbdc6ed4251cc75ece29880276f000000000000000000000000000000000000000000000018650127cc3dc80000000000000000000000000000000000000000000000000015af1d78b58c400000", + "signature": "addMarket((address,uint256,uint256,uint256,address,uint256,uint256))", + "target": "0xc85491616fa949e048f3aac39fbf5b0703800667", "value": "0", }, { - "actionIndex": 4, - "callData": "0x000000000000000000000000eca88125a5adbe82614ffc12d0db554e2e2867c8000000000000000000000000f322942f644a996a617bd29c16bd7d231d9f35e9000000000000000000000000000000000000000000000d028f86ff8671380000000000000000000000000000f322942f644a996a617bd29c16bd7d231d9f35e9", - "signature": "redeemUnderlyingAndTransfer(address,address,uint256,address)", - "target": "0xc53ffda840b51068c64b2e052a5715043f634bcd", + "actionIndex": 32, + "callData": "0x000000000000000000000000c85491616fa949e048f3aac39fbf5b07038006670000000000000000000000000000000000000000000000000000000000000000", + "signature": "approve(address,uint256)", + "target": "0x98f7a83361f7ac8765ccebab1425da6b341958a7", "value": "0", }, { - "actionIndex": 5, - "callData": "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d0000000000000000000000000000000000000000000023ffb7ed6565d6400000000000000000000000000000fb1912af5b9d3fb678f801bf764e98f1c217ef35", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 33, + "callData": "0x000000000000000000000000000000000000000000000000002386f26fc10000", + "signature": "setProtocolSeizeShare(uint256)", + "target": "0x46d49adf48172d2e79d813a3f4f27ab61724b01e", "value": "0", }, { - "actionIndex": 6, - "callData": "0x000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c00000000000000000000000000000000000000000000002d4888513b630d0000000000000000000000000000939bd8d64c0a9583a7dcea9933f7b21697ab6396", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 34, + "callData": "0x000000000000000000000000a11c8d9dc9b66e209ef60f0c8d969d3cd988782c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", + "target": "0x32fbf7bbbd79355b86741e3181ef8c1d9bd309bb", "value": "0", }, { - "actionIndex": 7, - "callData": "0x00000000000000000000000000000000000000000000002d4888513b630d0000", - "signature": "withdraw(uint256)", - "target": "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c", + "actionIndex": 35, + "callData": "0x000000000000000000000000a11c8d9dc9b66e209ef60f0c8d969d3cd988782c000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", + "target": "0xf1fa230d25fc5d6cafe87c5a6f9e1b17bc6f194e", "value": "0", }, { - "actionIndex": 9, - "callData": "0x00000000000000000000000055d398326f99059ff775485246999027b3197955000000000000000000000000000000000000000000000032c61328a0a69d0000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 36, + "callData": "0x00000000000000000000000016227d60f7a0e586c66b005219dfc887d13c9531000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", + "target": "0x2ecede6989d8646c992344ff6c97c72a3f811a13", "value": "0", }, { - "actionIndex": 10, - "callData": "0x0000000000000000000000008ac76a51cc950d9822d68b83fe1ad97b32cd580d000000000000000000000000000000000000000000000010f7bf61a7a9440000000000000000000000000000c444949e0054a23c44fc45789738bdf64aed2391", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 37, + "callData": "0x000000000000000000000000a808e341e8e723dc6ba0bb5204bafc2330d7b8e4000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", + "target": "0x989a1993c023a45da141928921c0de8fd123b7d1", "value": "0", }, { - "actionIndex": 11, - "callData": "0x0000000000000000000000004124e7aaafd7f29ad6e6914b80179060b8be871c000000000000000000000000000000000000000000000e664992288f22800000", - "signature": "_grantXVS(address,uint256)", - "target": "0xfd36e2c2a6789db23113685031d7f16329158384", + "actionIndex": 38, + "callData": "0x00000000000000000000000098f7a83361f7ac8765ccebab1425da6b341958a7000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", + "target": "0xf358650a007aa12ecc8dac08cf8929be7f72a4d9", "value": "0", }, { - "actionIndex": 13, - "callData": "0x00000000000000000000000055d398326f99059ff775485246999027b31979550000000000000000000000000000000000000000000000a2a15d09519be000000000000000000000000000003d9d22e1821be3b1ce2a8acb6fe47ffef04243c3", - "signature": "withdrawTreasuryBEP20(address,uint256,address)", - "target": "0xf322942f644a996a617bd29c16bd7d231d9f35e9", + "actionIndex": 39, + "callData": "0x000000000000000000000000b9e0e753630434d7863528cc73cb7ac638a7c8ff000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000020000000000000000000000004349016259fcd8ee452f696b2a7beee31667d1290000000000000000000000007df9372096c8ca2401f30b3df931beff493f1fdc00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", + "signature": "setConversionConfigs(address,address[],(uint256,uint8)[])", + "target": "0x258f49254c758a0e37dab148addaea851f4b02a2", "value": "0", }, ], - "proposalId": "346", + "proposalId": 430, "proposalType": 0, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": 2024-07-27T17:59:24.000Z, - "queuedTxHash": "0xe10d420fda0ea567200153382452ae6fe75442c1700a47c4fa038459b49992e4", - "startDate": 2028-01-30T13:28:26.000Z, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": 2024-09-12T00:09:28.000Z, + "queuedTxHash": "0x4d5db5557ed421d59458767807505b30f84f3b697d3756caee06b776657fd427", + "remoteProposals": [], + "startDate": 2028-05-12T21:30:35.000Z, "state": 0, - "totalVotesMantissa": "7.24526856486012757789664e+23", + "totalVotesMantissa": "6.05372e+23", "userVoteSupport": undefined, }, { @@ -1399,357 +1022,386 @@ If passed this VIP will perform the following actions: "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2024-07-26T16:50:27.000Z, - "createdTxHash": "0xfa61989b6b1ffeac2db196886a90ff19ad4b1ca5ded07dea0fff8274b0e16d77", + "createdDate": 2024-09-05T10:57:38.000Z, + "createdTxHash": "0x712e38356472fe78b8521287faf44d42c08d35264cf2dbabbdfdd377975effcb", "description": { - "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", - "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "### Summary - -If passed, following the Community proposal “[Support ezETH as collateral on ETH Mainnet and BNB Chain](https://community.venus.io/t/support-ezeth-as-collateral-on-eth-mainnet-and-bnb-chain/4415)” and [the associated snapshot](https://snapshot.org/#/venus-xvs.eth/proposal/0xc2db89a9e361c9da0f9a545411b66b0decb68ed2916fb8171f12c7213a53d088), this VIP adds a market for the [ezETH token](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110) ([Renzo Protocol](https://www.renzoprotocol.com/)) into the Liquid Staked ETH pool on Ethereum. - -### Description - -#### Risk parameters - -Following [Chaos Labs recommendations](https://community.venus.io/t/support-ezeth-as-collateral-on-eth-mainnet-and-bnb-chain/4415/4), the risk parameters for the new market are: - -Underlying token: [ezETH](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110) - -* Borrow cap: 1,400 -* Supply cap: 14,000 -* Collateral factor: 80% -* Liquidation threshold: 85% -* Reserve factor: 20% - -Bootstrap liquidity: 1.41 ezETH - provided by the [Renzo Protocol](https://etherscan.io/address/0x1e3233e8d972cffc7d0f83afae4354a0db74e34e). - -Interest rate curve for the new market: - -* kink: 45% -* base (yearly): 0% -* multiplier (yearly): 9% -* jump multiplier (yearly): 75% - -#### Oracles configuration - -The [ResilientOracle](https://docs-v4.venus.io/risk/resilient-price-oracle) deployed to [Ethereum](https://etherscan.io/address/0xd2ce3fb018805ef92b8C5976cb31F84b4E295F94) is used for ezETH, with the following configuration. The OneJumpOracle is used to get the USD price of ezETH, first getting the conversion rate ezETH/WETH using the feeds from RedStone or Chainlink, and then getting the USD price using the [Chainlink price feed for ETH/USD](https://etherscan.io/address/0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419). - -* MAIN oracle - * Contract: [OneJumpOracle](https://etherscan.io/address/0xf689AD140BDb9425fB83ba6f55866447244b5a23) - * CORRELATED_TOKEN: [ezETH](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110) - * UNDERLYING_TOKEN: [WETH](https://etherscan.io/address/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2) - * INTERMEDIATE_ORACLE: [RedStoneOracle](https://etherscan.io/address/0x0FC8001B2c9Ec90352A46093130e284de5889C86), using its price feed [ezETH/ETH](https://etherscan.io/address/0xF4a3e183F59D2599ee3DF213ff78b1B3b1923696) -* PIVOT and FALLBACK: - * Contract: [OneJumpOracle](https://etherscan.io/address/0xD63011ddAc93a6f8348bf7E6Aeb3E30Ad7B46Df8) - * CORRELATED_TOKEN: [ezETH](https://etherscan.io/token/0xbf5495Efe5DB9ce00f80364C8B423567e58d2110) - * UNDERLYING_TOKEN: [WETH](https://etherscan.io/address/0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2) - * INTERMEDIATE_ORACLE: [ChainlinkOracle](https://etherscan.io/address/0x94c3A2d6B7B2c051aDa041282aec5B0752F8A1F2), using its price feed [ezETH/ETH](https://etherscan.io/address/0x636A000262F6aA9e1F094ABF0aD8f645C44f641C) -* Thresholds in the bound validator: 0.99 - 1.01 - -#### Security and additional considerations - -We applied the following security procedures for this upgrade: - -* **Audits:** [Quantstamp](https://github.com/VenusProtocol/oracle/blob/5cd52976a4c4d24e11ab34ca3aa5f99837eef593/audits/100_correlated_token_oracles_quantstamp_20240412.pdf), [Certik](https://github.com/VenusProtocol/oracle/blob/5cd52976a4c4d24e11ab34ca3aa5f99837eef593/audits/098_correlated_token_oracles_certik_20240412.pdf) and [Fairyproof](https://github.com/VenusProtocol/oracle/blob/5cd52976a4c4d24e11ab34ca3aa5f99837eef593/audits/101_correlated_token_oracles_fairyproof_20240328.pdf) have audited the OneJumpOracle. -* **VIP execution simulation:** in a simulation environment, validating the new market is properly added to the Liquid Staked ETH pool on Ethereum, with the right parameters and the expected bootstrap liquidity -* **Deployment on testnet:** the same market has been deployed to sepolia, and used in the Venus Protocol testnet deployment - -#### Deployed contracts - -* Mainnet vezETH_LiquidStakedETH: [0xA854D35664c658280fFf27B6eDC6C4195c3229B3](https://etherscan.io/address/0xA854D35664c658280fFf27B6eDC6C4195c3229B3) -* Testnet vezETH_LiquidStakedETH: [0xF4C1B7528f8B266D8ADf1a85c91d93114FeDbA2A](https://sepolia.etherscan.io/address/0xF4C1B7528f8B266D8ADf1a85c91d93114FeDbA2A) - -#### References - -* [VIP simulation](https://github.com/VenusProtocol/vips/pull/328) -* [Code of OneJumpOracle](https://github.com/VenusProtocol/oracle/blob/develop/contracts/oracles/OneJumpOracle.sol) -* [Documentation](https://docs-v4.venus.io/risk/resilient-price-oracle#correlated-token-oracles) - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0xd2a4cf0ef50774d47f5744e48c1317d5de7c48b7f2340cbaaf0d0b216b1236ac) multisig transaction will be executed. Otherwise, it will be rejected.", - "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-345 [Ethereum] New ezETH market in the Liquid Staked ETH pool", + "abstainDescription": "Indifferent to execution", + "againstDescription": "Do not execute this proposal", + "description": "Unlist Market", + "forDescription": "Execute this proposal", + "title": "VIP-357 Unlist Market", "version": "v2", }, - "endBlock": 40844245, - "endDate": 2028-01-31T12:26:17.000Z, - "executedDate": 2024-07-29T17:16:54.000Z, - "executedTxHash": "0x83bf35a4d86f0c0b4b2cfe535006cf1becc9df3e49abe2fa0181f7af6d906362", - "executionEtaDate": 2024-07-29T17:07:55.000Z, + "endBlock": 43604717, + "endDate": 2028-05-06T08:49:53.000Z, + "executedDate": 2024-09-05T11:23:20.000Z, + "executedTxHash": "0x54c5acabde26e06c8eb95bfadc2014cc295167f3a89f0388023c56758cb7bfbd", + "executionEtaDate": 2024-09-05T11:23:05.000Z, + "expiredDate": undefined, "forVotes": [ { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "345", - "reason": "Community delegators approved.", + "address": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "proposalId": "429", + "reason": undefined, "support": 1, - "votesMantissa": "4.07289674445287940237609e+23", + "votesMantissa": "6.05372e+23", }, + ], + "forVotesMantissa": "6.05372e+23", + "proposalActions": [ { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000005a000000000000000000000000000a949ffda9b216fba9c4e5b40ef561af0fdb72300000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000ba76b3fda00000000000000000000000000000000000000000000000000000000929fe9a100000000000000000000000000000000000000000000000000000000c299823800000000000000000000000000000000000000000000000000000000ede4edd000000000000000000000000000000000000000000000000000000000b0772d0b00000000000000000000000000000000000000000000000000000000abfceffc00000000000000000000000000000000000000000000000000000000007e3dd200000000000000000000000000000000000000000000000000000000c488847b00000000000000000000000000000000000000000000000000000000a78dc77500000000000000000000000000000000000000000000000000000000ddbf54fd00000000000000000000000000000000000000000000000000000000c5b4db550000000000000000000000000000000000000000000000000000000000000000000000000000000000a949ffda9b216fba9c4e5b40ef561af0fdb7230000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000010686dab600000000000000000000000000000000000000000000000000000000000000000000000000000000085c8d0133291348004aabffbe7cac2097af2aa1000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000011ead1a8a000000000000000000000000000000000000000000000000000000000da3d454c000000000000000000000000000000000000000000000000000000005c778605000000000000000000000000000000000000000000000000000000005ec88c79000000000000000000000000000000000000000000000000000000004e79238f000000000000000000000000000000000000000000000000000000005fc7e71e0000000000000000000000000000000000000000000000000000000047ef3b3b000000000000000000000000000000000000000000000000000000004ef4c3e10000000000000000000000000000000000000000000000000000000041c728b900000000000000000000000000000000000000000000000000000000eabe7d910000000000000000000000000000000000000000000000000000000051dff9890000000000000000000000000000000000000000000000000000000024008a62000000000000000000000000000000000000000000000000000000001ededc9100000000000000000000000000000000000000000000000000000000d02f7351000000000000000000000000000000000000000000000000000000006d35bf9100000000000000000000000000000000000000000000000000000000bdcdc258000000000000000000000000000000000000000000000000000000006a56947e00000000000000000000000000000000000000000000000000000000000000000000000000000000490dfd07f592452307817c4283866035bdb3b275000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000017f519fc30000000000000000000000000000000000000000000000000000000002b5d790c00000000000000000000000000000000000000000000000000000000317b0b7700000000000000000000000000000000000000000000000000000000e4028eee000000000000000000000000000000000000000000000000000000009bf34cbb00000000000000000000000000000000000000000000000000000000522c656b0000000000000000000000000000000000000000000000000000000017db2163000000000000000000000000000000000000000000000000000000004fd42e1700000000000000000000000000000000000000000000000000000000bb85745000000000000000000000000000000000000000000000000000000000607ef6c10000000000000000000000000000000000000000000000000000000051a485e4000000000000000000000000000000000000000000000000000000005f5af1aa0000000000000000000000000000000000000000000000000000000055ee1fe1000000000000000000000000000000000000000000000000000000009460c8b5000000000000000000000000000000000000000000000000000000002a6a606500000000000000000000000000000000000000000000000000000000d24febad000000000000000000000000000000000000000000000000000000009cfdd9e6000000000000000000000000000000000000000000000000000000002ec04124000000000000000000000000000000000000000000000000000000004e0853db000000000000000000000000000000000000000000000000000000006662c7c900000000000000000000000000000000000000000000000000000000919a3736000000000000000000000000000000000000000000000000000000004ef233fc00000000000000000000000000000000000000000000000000000000fd51a3ad00000000000000000000000000000000000000000000000000000000", + "signature": "diamondCut((address,uint8,bytes4[])[])", + "target": "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "value": "0", }, { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 1, + "callData": "0x00000000000000000000000094d1820b2d1c7c7452a163983dc888cec546b77d0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000ce10739590001705f7ff231611ba4a48b28203270000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "signature": "giveCallPermission(address,string,address)", + "target": "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "value": "0", }, { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 2, + "callData": "0x00000000000000000000000094d1820b2d1c7c7452a163983dc888cec546b77d00000000000000000000000000000000000000000000000000000000000000600000000000000000000000003cff21b7af8390fe68799d58727d3b4c25a83cb60000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "signature": "giveCallPermission(address,string,address)", + "target": "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "value": "0", }, { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "1.5189102236520590757127e+22", + "actionIndex": 3, + "callData": "0x00000000000000000000000094d1820b2d1c7c7452a163983dc888cec546b77d000000000000000000000000000000000000000000000000000000000000006000000000000000000000000023b893a7c45a5eb8c8c062b9f32d0d2e43ed286d0000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "signature": "giveCallPermission(address,string,address)", + "target": "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "1.166e+21", + "actionIndex": 4, + "callData": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060000000000000000000000000ce10739590001705f7ff231611ba4a48b28203270000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "signature": "giveCallPermission(address,string,address)", + "target": "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "value": "0", }, { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "801851714101606493084", + "actionIndex": 5, + "callData": "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000003cff21b7af8390fe68799d58727d3b4c25a83cb60000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "signature": "giveCallPermission(address,string,address)", + "target": "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "value": "0", }, { - "address": "0x299741f68fd5b59ca177795d824f9ce9f6843bba", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "63404721729301508664", + "actionIndex": 6, + "callData": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000023b893a7c45a5eb8c8c062b9f32d0d2e43ed286d0000000000000000000000000000000000000000000000000000000000000015756e6c6973744d61726b65742861646472657373290000000000000000000000", + "signature": "giveCallPermission(address,string,address)", + "target": "0x45f8a08f534f34a97187626e05d4b6648eeaa9aa", + "value": "0", }, { - "address": "0x1c25523a33128dc87ff6f26c444a981b03a97f1e", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "7986304696458341870", + "actionIndex": 7, + "callData": "0x000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000020000000000000000000000009c3015191d39cf1930f92eb7e7bcbd020bca286a000000000000000000000000f206af85bc2761c4f876d27bd474681cfb335efa0000000000000000000000000000000000000000000000000000000000000009000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000300000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000008", + "signature": "_setActionsPaused(address[],uint8[],bool)", + "target": "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "value": "0", }, { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "4297102348559360929", + "actionIndex": 8, + "callData": "0x0000000000000000000000009c3015191d39cf1930f92eb7e7bcbd020bca286a", + "signature": "unlistMarket(address)", + "target": "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "value": "0", }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "3338470954295420970", + "actionIndex": 9, + "callData": "0x000000000000000000000000f206af85bc2761c4f876d27bd474681cfb335efa", + "signature": "unlistMarket(address)", + "target": "0x94d1820b2d1c7c7452a163983dc888cec546b77d", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "345", - "reason": undefined, - "support": 1, - "votesMantissa": "142051682906883578", + "actionIndex": 10, + "callData": "0x000000000000000000000000912c97b168286f550fd7b9588b2069319f1c88a2", + "signature": "upgradeTo(address)", + "target": "0xdddd7725c073105fb2abfcbdec16708fc4c24b74", + "value": "0", }, ], - "forVotesMantissa": "7.24526856486012757789664e+23", - "proposalActions": [], - "proposalId": "345", + "proposalId": 429, "proposalType": 0, - "proposerAddress": "0x55a9f5374af30e3045fb491f1da3c2e8a74d168d", - "queuedDate": 2024-07-27T17:07:55.000Z, - "queuedTxHash": "0xf44368efd273825fc5426543ee66fe9d889e9e19d2469eca6296d96cedf17285", - "startDate": 2028-01-30T12:26:17.000Z, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": 2024-09-05T11:13:05.000Z, + "queuedTxHash": "0x5ff3875e1ed65359feccc17201c6a7f932b38942eab8ee302443075bae530abc", + "remoteProposals": [], + "startDate": 2028-05-06T08:42:23.000Z, "state": 0, - "totalVotesMantissa": "7.24526856486012757789664e+23", + "totalVotesMantissa": "6.05372e+23", "userVoteSupport": undefined, }, { "abstainVotes": [], "abstainedVotesMantissa": "0", - "againstVotes": [ - { - "address": "0xf5a78c15dd8013b8ed622c3b9b316e8ef5a6f61f", - "proposalId": "344", - "reason": "Xvs core pool also needs xvs distribution apy ", - "support": 0, - "votesMantissa": "1.001727281834443881027e+21", - }, - ], - "againstVotesMantissa": "1.001727281834443881027e+21", + "againstVotes": [], + "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2024-07-25T16:09:23.000Z, - "createdTxHash": "0x2426f9c0a21626b917a7ab68e27fec2262c47758bb6dc5fb0cd5bd3cf0d23ce1", + "createdDate": 2024-08-30T12:23:13.000Z, + "createdTxHash": "0xa5221059657fce108338d2120708498174c473fb5727af731febd5eb760b7930", "description": { - "abstainDescription": "Indifferent to execution", - "againstDescription": "Do not execute this proposal", - "description": "#### Summary - -If passed, this VIP will transfer the converted XVS tokens from the [XVS Vault Treasury](https://etherscan.io/address/0xaE39C38AF957338b3cEE2b3E5d825ea88df02EfE) to the [XVS Store](https://etherscan.io/address/0x1db646e1ab05571af99e47e8f909801e5c99d37b) and adjust the XVS Vault distribution speed. - -- Transfer 6,893 XVS from the [XVS Vault Treasury](https://etherscan.io/address/0xaE39C38AF957338b3cEE2b3E5d825ea88df02EfE) to the [XVS Store](https://etherscan.io/address/0x1db646e1ab05571af99e47e8f909801e5c99d37b) for distribution. -- Increase the XVS distribution speed from 250 XVS/Day to 310 XVS/day. - -#### Description - -A total of 6,893 XVS has been converted through a buyback during Q2 2024 using the [XVS converter](https://etherscan.io/address/0x1FD30e761C3296fE36D9067b1e398FD97B4C0407). These tokens will be added to the distribution as per our [Tokenomics V4](https://app.venus.io/#/governance/proposal/332?chainId=56) and [ETH Deployment Proposal](https://community.venus.io/t/xvs-ethereum-mainnet-development-program-with-lido-frax-curve-and-gitcoin/4200). - -The converted XVS is currently held in the [XVS Vault Treasury](https://etherscan.io/address/0xaE39C38AF957338b3cEE2b3E5d825ea88df02EfE) and needs to be transferred to the [XVS Store](https://etherscan.io/address/0x1db646e1ab05571af99e47e8f909801e5c99d37b) for distribution. - -The new distribution speed will be increased from 250 XVS/day to 310 XVS/day, which is estimated to increase the vault APR from 12% to 15%. - -#### References - -- [Tokenomics V4](https://app.venus.io/#/governance/proposal/332?chainId=56) -- [ETH Deployment Proposal](https://community.venus.io/t/xvs-ethereum-mainnet-development-program-with-lido-frax-curve-and-gitcoin/4200) -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/330) - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0x26a82f80811aebe17b3dc863726075581db822b08381f9bb75feb1600a4d11e6) multisig transaction will be executed. Otherwise, it will be rejected.", - "forDescription": "Execute this proposal", - "title": "VIP-344 [Ethereum] Distribution Speed Adjustment for the XVS Vault", + "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", + "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", + "description": "#### Description + Mint faucet on all network", + "forDescription": "I agree that Venus Protocol should proceed with this proposal", + "title": "Test VIP", "version": "v2", }, - "endBlock": 40814685, - "endDate": 2028-01-30T11:48:17.000Z, - "executedDate": 2024-07-28T16:20:53.000Z, - "executedTxHash": "0xbfb59828a4b0fef18b88affca4980834dd015ecceff2ef0303bc7fd0e1cf32df", - "executionEtaDate": 2024-07-28T16:14:12.000Z, - "forVotes": [ - { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "344", - "reason": "Community delegators approved.", - "support": 1, - "votesMantissa": "4.10181267722260581017158e+23", - }, - { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", - }, - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", - }, - { - "address": "0xf62c2d6ad02bb8b248e3b9be730b036f04d5453e", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1.4333339783793114945839e+22", - }, - { - "address": "0x2626600b9a04607b876afd155d7bef6832ac25ef", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "8.163577383031450017859e+21", - }, + "endBlock": 43433636, + "endDate": 2028-04-30T10:15:50.000Z, + "executedDate": undefined, + "executedTxHash": undefined, + "executionEtaDate": 1970-01-01T00:00:00.000Z, + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1.166e+21", + "actionIndex": 0, + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "value": "0", }, { - "address": "0x3189b40140cac6c20d5de8a37d667cc6a866d41b", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1.129288737856030085845e+21", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0xbdc1faea0cb9121df6afd0e47accd3048ba01337", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1.015965846030073973859e+21", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "801851714101606493084", + "actionIndex": 3, + "callData": "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, - { - "address": "0x03397520a5c1c27bba59852795764ebf1fe05978", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "4297102348559360929", + ], + "proposalId": 428, + "proposalType": 0, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": undefined, + "queuedTxHash": undefined, + "remoteProposals": [ + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 97, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 428, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 428, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 428, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, + ], + "startDate": 2028-04-30T10:08:20.000Z, + "state": 0, + "totalVotesMantissa": "0", + "userVoteSupport": undefined, + }, + { + "abstainVotes": [], + "abstainedVotesMantissa": "0", + "againstVotes": [], + "againstVotesMantissa": "0", + "cancelDate": undefined, + "cancelTxHash": undefined, + "createdDate": 2024-08-30T11:01:31.000Z, + "createdTxHash": "0x4f354d1e9d4ea6b90c61a093ad701b47e2182fb9aac5ff737bfd2c5c34e372ed", + "description": { + "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", + "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", + "description": "#### Description + Mint faucet on all network", + "forDescription": "I agree that Venus Protocol should proceed with this proposal", + "title": "Test VIP", + "version": "v2", + }, + "endBlock": 43432002, + "endDate": 2028-04-30T08:54:08.000Z, + "executedDate": undefined, + "executedTxHash": undefined, + "executionEtaDate": 1970-01-01T00:00:00.000Z, + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "3338470954295420970", + "actionIndex": 0, + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "value": "0", }, { - "address": "0x1c79eb2546e9e5c07a6be6cfb9c341a52eb107db", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "2000000000000000000", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0xe853cbc6a77cf04dc5bc990131bab00d926b923a", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "1002000000000000000", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "344", - "reason": undefined, - "support": 1, - "votesMantissa": "142051682906883578", + "actionIndex": 3, + "callData": "0x0000000000000000000000000000000000000000000000000000000000002776000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, ], - "forVotesMantissa": "7.36803130250749716984954e+23", - "proposalActions": [], - "proposalId": "344", + "proposalId": 427, "proposalType": 0, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": 2024-07-26T16:14:12.000Z, - "queuedTxHash": "0xb4f41b3a6bf80c317c1ac63c06841b0331a0f7f74fa2bf4ac8141ef2958882aa", - "startDate": 2028-01-29T11:48:17.000Z, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": undefined, + "queuedTxHash": undefined, + "remoteProposals": [ + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 97, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 427, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 427, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + { + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 427, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, + }, + ], + "startDate": 2028-04-30T08:46:38.000Z, "state": 0, - "totalVotesMantissa": "7.37804857532584160865981e+23", + "totalVotesMantissa": "0", "userVoteSupport": undefined, }, ], - "total": 353, + "total": 100, } `; diff --git a/apps/evm/src/clients/api/queries/getProposals/__tests__/index.spec.ts b/apps/evm/src/clients/api/queries/getProposals/__tests__/index.spec.ts index 4924dc4a3b..e17d7a18e0 100644 --- a/apps/evm/src/clients/api/queries/getProposals/__tests__/index.spec.ts +++ b/apps/evm/src/clients/api/queries/getProposals/__tests__/index.spec.ts @@ -9,8 +9,6 @@ const fakeParams: GetProposalsInput = { chainId: ChainId.BSC_TESTNET, currentBlockNumber: 1, proposalMinQuorumVotesMantissa: new BigNumber(10), - proposalExecutionGracePeriodMs: 1209600000, - blockTimeMs: 3000, accountAddress: fakeAccountAddress, }; diff --git a/apps/evm/src/clients/api/queries/getProposals/index.ts b/apps/evm/src/clients/api/queries/getProposals/index.ts index 520fca8d2b..960baaf266 100644 --- a/apps/evm/src/clients/api/queries/getProposals/index.ts +++ b/apps/evm/src/clients/api/queries/getProposals/index.ts @@ -1,18 +1,18 @@ import type BigNumber from 'bignumber.js'; import { type GetBscProposalsInput as GetBscGqlProposalsInput, + enrichRemoteProposals, formatToProposal, - getBscProposals as getBscGqlProposals, + getBscProposals, } from 'clients/subgraph'; -import type { Proposal_Filter } from 'clients/subgraph/gql/generated/governanceBsc'; +import type { Proposal_Filter, RemoteProposal } from 'clients/subgraph/gql/generated/governanceBsc'; +import { PROPOSAL_EXECUTION_GRACE_PERIOD_MS } from 'constants/chainMetadata'; import { type ChainId, type Proposal, ProposalState } from 'types'; export interface GetProposalsInput { chainId: ChainId; currentBlockNumber: number; proposalMinQuorumVotesMantissa: BigNumber; - blockTimeMs: number; - proposalExecutionGracePeriodMs: number; accountAddress?: string; proposalState?: ProposalState; search?: string; @@ -29,8 +29,6 @@ export const getProposals = async ({ chainId, currentBlockNumber, proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, - blockTimeMs, page = 0, limit = 10, proposalState, @@ -41,7 +39,7 @@ export const getProposals = async ({ let where: Proposal_Filter | undefined; const proposalExpiredTimestampSeconds = Math.floor( - (new Date().getTime() - (proposalExecutionGracePeriodMs ?? 0)) / 1000, + (new Date().getTime() - PROPOSAL_EXECUTION_GRACE_PERIOD_MS) / 1000, ); switch (proposalState) { @@ -115,7 +113,7 @@ export const getProposals = async ({ where, }; - const response = await getBscGqlProposals({ + const response = await getBscProposals({ chainId, variables, }); @@ -123,13 +121,25 @@ export const getProposals = async ({ const gqlProposals = response?.proposals || []; const total = response?.total.length ?? 0; + // Fetch remote proposals + const rawGqlRemoteProposals: RemoteProposal[] = []; + + gqlProposals.forEach(gqlProposal => + gqlProposal.remoteProposals.forEach(gqlRemoteProposal => + rawGqlRemoteProposals.push(gqlRemoteProposal as RemoteProposal), + ), + ); + + const gqlRemoteProposalsMapping = await enrichRemoteProposals({ + gqlRemoteProposals: rawGqlRemoteProposals, + }); + const proposals = (gqlProposals || []).map(gqlProposal => formatToProposal({ gqlProposal, + gqlRemoteProposalsMapping, proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, currentBlockNumber, - blockTimeMs, accountAddress, }), ); diff --git a/apps/evm/src/clients/api/queries/getProposals/useGetProposals.ts b/apps/evm/src/clients/api/queries/getProposals/useGetProposals.ts index 10365ce319..f51c2982fd 100644 --- a/apps/evm/src/clients/api/queries/getProposals/useGetProposals.ts +++ b/apps/evm/src/clients/api/queries/getProposals/useGetProposals.ts @@ -8,18 +8,13 @@ import { getProposals, } from 'clients/api/queries/getProposals'; import { CHAIN_METADATA } from 'constants/chainMetadata'; -import { DEFAULT_REFETCH_INTERVAL_MS } from 'constants/defaultRefetchInterval'; import FunctionKey from 'constants/functionKey'; import { governanceChain } from 'libs/wallet'; import { callOrThrow } from 'utilities'; type TrimmedGetProposalsInput = Omit< GetProposalsInput, - | 'currentBlockNumber' - | 'proposalMinQuorumVotesMantissa' - | 'proposalExecutionGracePeriodMs' - | 'blockTimeMs' - | 'chainId' + 'currentBlockNumber' | 'proposalMinQuorumVotesMantissa' | 'blockTimeMs' | 'chainId' >; type Options = QueryObserverOptions< @@ -31,14 +26,13 @@ type Options = QueryObserverOptions< FunctionKey.GET_PROPOSALS, Omit< GetProposalsInput, - | 'currentBlockNumber' - | 'proposalMinQuorumVotesMantissa' - | 'proposalExecutionGracePeriodMs' - | 'blockTimeMs' + 'currentBlockNumber' | 'proposalMinQuorumVotesMantissa' | 'blockTimeMs' >, ] >; +const { blockTimeMs: BSC_BLOCK_TIME_MS } = CHAIN_METADATA[governanceChain.id]; + export const useGetProposals = ( input: TrimmedGetProposalsInput = {}, options?: Partial, @@ -47,13 +41,16 @@ export const useGetProposals = ( const proposalMinQuorumVotesMantissa = getProposalMinQuorumVotesData?.proposalMinQuorumVotesMantissa; - const { data: getBlockNumberData } = useGetBlockNumber({ - chainId: governanceChain.id, - }); + const { data: getBlockNumberData } = useGetBlockNumber( + { + chainId: governanceChain.id, + }, + { + refetchInterval: BSC_BLOCK_TIME_MS, + }, + ); const currentBlockNumber = getBlockNumberData?.blockNumber; - const { blockTimeMs, proposalExecutionGracePeriodMs } = CHAIN_METADATA[governanceChain.id]; - const sanitizedInput: TrimmedGetProposalsInput = { ...input, page: input.page ?? 0, @@ -74,8 +71,6 @@ export const useGetProposals = ( { currentBlockNumber, proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, - blockTimeMs, }, params => getProposals({ @@ -91,8 +86,7 @@ export const useGetProposals = ( total: 0, proposals: [], }, - refetchInterval: - sanitizedInput.page === 0 ? (blockTimeMs || DEFAULT_REFETCH_INTERVAL_MS) * 5 : undefined, + refetchInterval: sanitizedInput.page === 0 ? BSC_BLOCK_TIME_MS! * 5 : undefined, ...options, enabled: typeof currentBlockNumber === 'number' && diff --git a/apps/evm/src/clients/api/queries/getVoterHistory/__snapshots__/index.spec.ts.snap b/apps/evm/src/clients/api/queries/getVoterHistory/__snapshots__/index.spec.ts.snap index f3eee9cea0..846f0664c0 100644 --- a/apps/evm/src/clients/api/queries/getVoterHistory/__snapshots__/index.spec.ts.snap +++ b/apps/evm/src/clients/api/queries/getVoterHistory/__snapshots__/index.spec.ts.snap @@ -62,6 +62,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-14T15:22:50.000Z, "queuedTxHash": "0x1d8c233bd9f7074f9355fc91e092a6f2ed80e6ddde10a5eec1ba25eadff21651", "reason": "", + "remoteProposals": [], "startDate": 2023-09-14T15:13:47.000Z, "state": 7, "support": 1, @@ -113,6 +114,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-12T16:36:41.000Z, "queuedTxHash": "0x32ac482bf430b49cb15e5f7860a4d75aeb23a171977034d52ade034e8c9d9bd3", "reason": "", + "remoteProposals": [], "startDate": 2023-09-12T16:25:53.000Z, "state": 7, "support": 1, @@ -164,6 +166,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-12T16:15:26.000Z, "queuedTxHash": "0x32b68a97e6a7431ec1b8c5834d27e1bf40ad5b0f1b7014d5ce7fb067b278bd87", "reason": "", + "remoteProposals": [], "startDate": 2023-09-12T16:06:26.000Z, "state": 7, "support": 1, @@ -215,6 +218,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-11T10:18:11.000Z, "queuedTxHash": "0x4a4f3d03765ed3c1d27e9338ca57702224771a8590852a8dbf3ef590ee880271", "reason": "", + "remoteProposals": [], "startDate": 2023-09-11T09:51:17.000Z, "state": 7, "support": 1, @@ -268,6 +272,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-08-31T10:42:34.000Z, "queuedTxHash": "0xd01b12dda1c8fb28c37515341aac4e72e559b50e5c707d9c3e18690be558ef9f", "reason": "", + "remoteProposals": [], "startDate": 2023-08-31T09:42:43.000Z, "state": 8, "support": 1, @@ -319,6 +324,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-08-29T11:42:16.000Z, "queuedTxHash": "0xb5e75d6211a9fdd794316b6369dd0052e9dfc3280dca6dbb0857ccf866cafc6e", "reason": "", + "remoteProposals": [], "startDate": 2023-08-29T11:34:07.000Z, "state": 8, "support": 1, @@ -392,6 +398,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-14T15:22:50.000Z, "queuedTxHash": "0x1d8c233bd9f7074f9355fc91e092a6f2ed80e6ddde10a5eec1ba25eadff21651", "reason": "", + "remoteProposals": [], "startDate": 2023-09-14T15:13:47.000Z, "state": 7, "support": 1, @@ -443,6 +450,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-12T16:36:41.000Z, "queuedTxHash": "0x32ac482bf430b49cb15e5f7860a4d75aeb23a171977034d52ade034e8c9d9bd3", "reason": "", + "remoteProposals": [], "startDate": 2023-09-12T16:25:53.000Z, "state": 7, "support": 1, @@ -494,6 +502,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-12T16:15:26.000Z, "queuedTxHash": "0x32b68a97e6a7431ec1b8c5834d27e1bf40ad5b0f1b7014d5ce7fb067b278bd87", "reason": "", + "remoteProposals": [], "startDate": 2023-09-12T16:06:26.000Z, "state": 7, "support": 1, @@ -545,6 +554,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-09-11T10:18:11.000Z, "queuedTxHash": "0x4a4f3d03765ed3c1d27e9338ca57702224771a8590852a8dbf3ef590ee880271", "reason": "", + "remoteProposals": [], "startDate": 2023-09-11T09:51:17.000Z, "state": 7, "support": 1, @@ -598,6 +608,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-08-31T10:42:34.000Z, "queuedTxHash": "0xd01b12dda1c8fb28c37515341aac4e72e559b50e5c707d9c3e18690be558ef9f", "reason": "", + "remoteProposals": [], "startDate": 2023-08-31T09:42:43.000Z, "state": 8, "support": 1, @@ -649,6 +660,7 @@ Simulation of the VIP: [https://github.com/VenusProtocol/vips/pull/70](https://g "queuedDate": 2023-08-29T11:42:16.000Z, "queuedTxHash": "0xb5e75d6211a9fdd794316b6369dd0052e9dfc3280dca6dbb0857ccf866cafc6e", "reason": "", + "remoteProposals": [], "startDate": 2023-08-29T11:34:07.000Z, "state": 8, "support": 1, diff --git a/apps/evm/src/clients/api/queries/getVoterHistory/formatToProposal.ts b/apps/evm/src/clients/api/queries/getVoterHistory/formatToProposal.ts index 772d796b79..1ec16eb359 100644 --- a/apps/evm/src/clients/api/queries/getVoterHistory/formatToProposal.ts +++ b/apps/evm/src/clients/api/queries/getVoterHistory/formatToProposal.ts @@ -111,6 +111,7 @@ export const formatToProposal = ({ abstainVotes, proposalType: proposalType ?? ProposalType.NORMAL, userVoteSupport, + remoteProposals: [], // This data isn't used in the UI but requires an extra call to be fetch, so we don't fetch it }; return proposal; diff --git a/apps/evm/src/clients/subgraph/__mocks__/index.ts b/apps/evm/src/clients/subgraph/__mocks__/index.ts index 2acb5752ce..005ff98beb 100644 --- a/apps/evm/src/clients/subgraph/__mocks__/index.ts +++ b/apps/evm/src/clients/subgraph/__mocks__/index.ts @@ -1,11 +1,16 @@ -import proposalsResponse from '__mocks__/subgraph/proposals.json'; +import bscProposalsResponse from '__mocks__/subgraph/bscProposals.json'; +import nonBscProposalsResponse from '__mocks__/subgraph/nonBscProposals.json'; export * from '../queries/isolatedPools/getIsolatedPoolParticipantsCount'; export * from '../queries/governanceBsc/getBscProposals'; export * from '../utilities/formatToProposal'; +export * from '../utilities/enrichRemoteProposals'; -export const getBscProposals = vi.fn(async () => proposalsResponse); +export const getBscProposals = vi.fn(async () => bscProposalsResponse); export const getBscProposal = vi.fn(async () => ({ - proposal: proposalsResponse.proposals[0], + proposal: bscProposalsResponse.proposals[0], })); + +export const getNonBscProposals = vi.fn(async () => nonBscProposalsResponse); + export const getIsolatedPoolParticipantsCount = vi.fn(); diff --git a/apps/evm/src/clients/subgraph/index.ts b/apps/evm/src/clients/subgraph/index.ts index ec6b514392..8a99d195c1 100644 --- a/apps/evm/src/clients/subgraph/index.ts +++ b/apps/evm/src/clients/subgraph/index.ts @@ -1,4 +1,6 @@ export * from './queries/isolatedPools/getIsolatedPoolParticipantsCount'; export * from './queries/governanceBsc/getBscProposals'; export * from './queries/governanceBsc/getBscProposal'; +export * from './queries/governanceNonBsc/getNonBscProposals'; export * from './utilities/formatToProposal'; +export * from './utilities/enrichRemoteProposals'; diff --git a/apps/evm/src/clients/subgraph/queries/governanceBsc/fragments/proposal.graphql b/apps/evm/src/clients/subgraph/queries/governanceBsc/fragments/bscProposal.graphql similarity index 58% rename from apps/evm/src/clients/subgraph/queries/governanceBsc/fragments/proposal.graphql rename to apps/evm/src/clients/subgraph/queries/governanceBsc/fragments/bscProposal.graphql index 1bca4b6eaa..71ce8ff191 100644 --- a/apps/evm/src/clients/subgraph/queries/governanceBsc/fragments/proposal.graphql +++ b/apps/evm/src/clients/subgraph/queries/governanceBsc/fragments/bscProposal.graphql @@ -1,4 +1,5 @@ -fragment ProposalFragment on Proposal { +fragment BscProposal on Proposal { + id proposalId startBlock endBlock @@ -19,21 +20,25 @@ fragment ProposalFragment on Proposal { } created { + id timestamp txHash } executed { + id timestamp txHash } canceled { + id timestamp txHash } queued { + id timestamp txHash } @@ -51,17 +56,34 @@ fragment ProposalFragment on Proposal { } remoteProposals { + id proposalId - layerZeroChainId - executed { - timestamp - txHash + targets + values + signatures + calldatas + + trustedRemote { + id + layerZeroChainId } - withdrawn { - timestamp - txHash + stateTransactions { + stored { + id + timestamp + } + + executed { + id + timestamp + } + + withdrawn { + id + timestamp + } } } } diff --git a/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposal/getBscProposal.graphql b/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposal/getBscProposal.graphql index 40da597e4e..5010c96c83 100644 --- a/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposal/getBscProposal.graphql +++ b/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposal/getBscProposal.graphql @@ -1,5 +1,5 @@ query Proposal($id: ID!) { proposal(id: $id) { - ...ProposalFragment + ...BscProposal } } diff --git a/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposals/getBscProposals.graphql b/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposals/getBscProposals.graphql index 250e423b18..7bab4ad462 100644 --- a/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposals/getBscProposals.graphql +++ b/apps/evm/src/clients/subgraph/queries/governanceBsc/getBscProposals/getBscProposals.graphql @@ -1,6 +1,6 @@ query Proposals($limit: Int = 10, $skip: Int = 0, $where: Proposal_filter) { proposals(first: $limit, skip: $skip, where: $where, orderBy: startBlock, orderDirection: desc) { - ...ProposalFragment + ...BscProposal } total: proposals(where: $where) { diff --git a/apps/evm/src/clients/subgraph/queries/governanceNonBsc/fragments/nonBscProposal.graphql b/apps/evm/src/clients/subgraph/queries/governanceNonBsc/fragments/nonBscProposal.graphql new file mode 100644 index 0000000000..ed98685325 --- /dev/null +++ b/apps/evm/src/clients/subgraph/queries/governanceNonBsc/fragments/nonBscProposal.graphql @@ -0,0 +1,20 @@ +fragment NonBscProposal on Proposal { + id + proposalId + executionEta + + queued { + id + timestamp + } + + canceled { + id + timestamp + } + + executed { + id + timestamp + } +} diff --git a/apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/getNonBscProposals.graphql b/apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/getNonBscProposals.graphql new file mode 100644 index 0000000000..0271b8cdb4 --- /dev/null +++ b/apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/getNonBscProposals.graphql @@ -0,0 +1,5 @@ +query Proposals($where: Proposal_filter) { + proposals(where: $where) { + ...NonBscProposal + } +} diff --git a/apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/index.ts b/apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/index.ts new file mode 100644 index 0000000000..1ee721878c --- /dev/null +++ b/apps/evm/src/clients/subgraph/queries/governanceNonBsc/getNonBscProposals/index.ts @@ -0,0 +1,22 @@ +import { request } from 'graphql-request'; + +import { + ProposalsDocument, + type ProposalsQueryVariables, +} from 'clients/subgraph/gql/generated/governanceNonBsc'; +import config from 'config'; +import type { ChainId } from 'types'; + +export interface GetNonBscProposalsInput { + chainId: ChainId; + variables: ProposalsQueryVariables; +} + +export const getNonBscProposals = ({ chainId, variables }: GetNonBscProposalsInput) => + config.subgraphUrls[chainId]?.governance + ? request({ + url: config.subgraphUrls[chainId]!.governance!, + variables, + document: ProposalsDocument, + }) + : undefined; diff --git a/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/__snapshots__/index.spec.ts.snap b/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/__snapshots__/index.spec.ts.snap new file mode 100644 index 0000000000..8fa9c83d3e --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/__snapshots__/index.spec.ts.snap @@ -0,0 +1,146 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`enrichRemoteProposals > returns remote proposals in the correct format 1`] = ` +{ + "4": { + "calldatas": [ + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e0000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc000000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000", + ], + "canceled": null, + "executed": { + "id": "0x544c7a7eaa39193348b5907232f9cee66c8aa6f609200d03792289b40487d164", + "timestamp": "1720520363", + }, + "executionEta": "1719935819", + "id": "4", + "proposalId": "4", + "queued": { + "id": "0x3f4f7a17f7ed78c0c3620e61391aeab8b0a22b2438c7c8b65396e3d52c617d1f", + "timestamp": "1719763019", + }, + "signatures": [ + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + ], + "targets": [ + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + ], + "values": [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + ], + }, + "5": { + "calldatas": [ + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000197365745265636569766556657273696f6e2875696e7431362900000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000207365744d61784461696c79526563656976654c696d69742875696e7432353629", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e00000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc0000000000000000000000000000000000000000000000000000000000000000077061757365282900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e0000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc000000000000000000000000000000000000000000000000000000000000000026736574436f6e6669672875696e7431362c75696e7431362c75696e743235362c6279746573290000000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000001761646454696d656c6f636b7328616464726573735b5d29000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba00000000000000000000000000000000000000000000000000000000000000600000000000000000000000008764f50616b62a99a997876c2deaaa04554c5b2e000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000", + "0x00000000000000000000000087ed3fd3a25d157637b955991fb1b41b566916ba0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000eb9b85342c34f65af734c7bd4a149c86c472bc00000000000000000000000000000000000000000000000000000000000000002772657472794d6573736167652875696e7431362c62797465732c75696e7436342c62797465732900000000000000000000000000000000000000000000000000", + ], + "canceled": null, + "executed": { + "id": "0x544c7a7eaa39193348b5907232f9cee66c8aa6f609200d03792289b40487d164", + "timestamp": "1720520363", + }, + "executionEta": "1719935819", + "id": "5", + "proposalId": "5", + "queued": { + "id": "0x3f4f7a17f7ed78c0c3620e61391aeab8b0a22b2438c7c8b65396e3d52c617d1f", + "timestamp": "1719763019", + }, + "signatures": [ + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + "giveCallPermission(address,string,address)", + ], + "targets": [ + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + "0x230058da2d23eb8836ec5db7037ef7250c56e25e", + ], + "values": [ + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + "0", + ], + }, +} +`; diff --git a/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/index.spec.ts b/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/index.spec.ts new file mode 100644 index 0000000000..334728e2e9 --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/__tests__/index.spec.ts @@ -0,0 +1,12 @@ +import bscProposalsResponse from '__mocks__/subgraph/bscProposals.json'; +import { enrichRemoteProposals } from '..'; + +describe('enrichRemoteProposals', () => { + it('returns remote proposals in the correct format', async () => { + const res = await enrichRemoteProposals({ + gqlRemoteProposals: bscProposalsResponse.proposals[0].remoteProposals, + }); + + expect(res).toMatchSnapshot(); + }); +}); diff --git a/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/index.ts b/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/index.ts new file mode 100644 index 0000000000..9d3f5c74c9 --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/enrichRemoteProposals/index.ts @@ -0,0 +1,58 @@ +import { getNonBscProposals } from 'clients/subgraph'; +import type { RemoteProposal } from 'clients/subgraph/gql/generated/governanceBsc'; +import type { NonBscProposalFragment } from 'clients/subgraph/gql/generated/governanceNonBsc'; +import { CHAIN_IDS_ON_LAYER_ZERO } from 'constants/layerZero'; +import type { ChainId } from 'types'; +import { extractSettledPromiseValue } from 'utilities'; + +export const enrichRemoteProposals = async ({ + gqlRemoteProposals, +}: { + gqlRemoteProposals: (Pick & { + trustedRemote: Pick; + })[]; +}) => { + // Group proposals by chain ID + const remoteProposalIdsMapping: { + [chainId in ChainId]?: number[]; + } = {}; + + gqlRemoteProposals.forEach(remoteProposal => { + // Map LayerZero chain ID to actual chain ID + const remoteChainId = CHAIN_IDS_ON_LAYER_ZERO[remoteProposal.trustedRemote.layerZeroChainId]; + + if (remoteProposal.proposalId) { + remoteProposalIdsMapping[remoteChainId] = [ + ...(remoteProposalIdsMapping[remoteChainId] || []), + remoteProposal.proposalId, + ]; + } + }); + + const results = await Promise.allSettled( + Object.entries(remoteProposalIdsMapping).map(([chainId, remoteProposalIds]) => + getNonBscProposals({ + chainId: Number(chainId) as ChainId, + variables: { + where: { + proposalId_in: remoteProposalIds.map(String), + }, + }, + }), + ), + ); + + const enrichedProposals = results.flatMap(extractSettledPromiseValue); + + const enrichedProposalsMapping: { + [proposalId: number]: NonBscProposalFragment; + } = {}; + + enrichedProposals.forEach(p => { + p?.proposals?.forEach(proposal => { + enrichedProposalsMapping[proposal.proposalId] = proposal; + }); + }); + + return enrichedProposalsMapping; +}; diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/__snapshots__/index.spec.ts.snap b/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/__snapshots__/index.spec.ts.snap index 74ea1e41eb..302ce80086 100644 --- a/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/__snapshots__/index.spec.ts.snap +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/__snapshots__/index.spec.ts.snap @@ -2,129 +2,134 @@ exports[`formatToProposal > returns proposal in the correct format 1`] = ` { - "abstainVotes": [ - { - "address": "0x21f62c4c380264231d33dd1a1fe546d013b905f8", - "proposalId": "353", - "reason": undefined, - "support": 2, - "votesMantissa": "801851714101606493084", - }, - ], - "abstainedVotesMantissa": "801851714101606493084", - "againstVotes": [ - { - "address": "0x1abe7f510dd4cc2b017ef78f4757b83ae334862d", - "proposalId": "353", - "reason": undefined, - "support": 0, - "votesMantissa": "1e+23", - }, - ], - "againstVotesMantissa": "1e+23", + "abstainVotes": [], + "abstainedVotesMantissa": "0", + "againstVotes": [], + "againstVotesMantissa": "0", "cancelDate": undefined, "cancelTxHash": undefined, - "createdDate": 2023-09-20T07:39:35.000Z, - "createdTxHash": "0xbe4f9879425120453393641d4518e571b289d3ec74e3a27a2d4281caf251f408", + "createdDate": 2024-10-01T11:58:15.000Z, + "createdTxHash": "0xcfafe0fcb0ed8ba08a454be1c05d0883287b76457cf0fae93d07f0131d565e49", "description": { "abstainDescription": "I am indifferent to whether Venus Protocol proceeds or not", "againstDescription": "I do not think that Venus Protocol should proceed with this proposal", - "description": "This VIP will perform the following Risk Parameter actions as per Chaos Labs’ latest recommendations in this Venus community forum publication: [Chaos Labs - Risk Parameter Updates - 08/02/24](https://community.venus.io/t/chaos-labs-risk-parameter-updates-08-02-24/4502). - -- [WETH (Liquid Staked ETH)](https://etherscan.io/address/0xc82780Db1257C788F262FBbDA960B3706Dfdcaf2): - - Reduce Collateral Factor, from 90% to 0% - - Increase Kink, from 80% to 90% - - Increase Multiplier, from 3.5% to 4.5% - - Increase Reserve Factor, from 15% to 25% - -Complete analysis and details of these recommendations are available in the above publication. - -Please note that reducing the collateral factor to 0% will not cause current borrowers to be liquidated as the liquidation threshold will not be modified. - -#### References - -- [VIP simulation](https://github.com/VenusProtocol/vips/pull/356) - -#### Disclaimer for Ethereum VIPs - -Privilege commands on Ethereum will be executed by the [Guardian wallet](https://etherscan.io/address/0x285960C5B22fD66A736C7136967A3eB15e93CC67), until the [Multichain Governance](https://docs-v4.venus.io/technical-reference/reference-technical-articles/multichain-governance) contracts are fully enabled. If this VIP passes, [this](https://app.safe.global/transactions/tx?safe=eth:0x285960C5B22fD66A736C7136967A3eB15e93CC67&id=multisig_0x285960C5B22fD66A736C7136967A3eB15e93CC67_0xab824acf17443e1c50231fa0d6ad1d854269941db67704518104867ac9181083) multisig transaction will be executed. Otherwise, it will be rejected.", + "description": "#### Description + Mint faucet on all network", "forDescription": "I agree that Venus Protocol should proceed with this proposal", - "title": "VIP-353 [Ethereum] Risk Parameters Adjustments (WETH)", + "title": "Test VIP", "version": "v2", }, - "endBlock": 33499859, - "endDate": 2023-06-15T09:07:50.000Z, + "endBlock": 44354696, + "endDate": 2024-06-26T06:49:41.000Z, "executedDate": undefined, - "executedTxHash": "0x91f6267525b678fe62632dc738c766ccb02408a81cd9f5915f4f40db79368ce2", + "executedTxHash": undefined, "executionEtaDate": 1970-01-01T00:00:00.000Z, - "forVotes": [ + "expiredDate": undefined, + "forVotes": [], + "forVotesMantissa": "0", + "proposalActions": [ { - "address": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "proposalId": "353", - "reason": "Community delegators approved.", - "support": 1, - "votesMantissa": "4.33469577024822530748692e+23", + "actionIndex": 0, + "callData": "0x00000000000000000000000003862dfa5d0be8f64509c001cb8c6188194469df0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "allocateTo(address,uint256)", + "target": "0xb32171ecd878607ffc4f8fc0bcce6852bb3149e0", + "value": "0", }, { - "address": "0xc72f3295b7fe847ec99e3a3c6dd6e90db5e1061b", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1.00001059438691098785833e+23", + "actionIndex": 1, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027b1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f3118a17863996b9f2a073c9a66faaa664355cf80000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0xfce889ba7afde7428acaa3ef146b1bd526e78a19", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1e+23", + "actionIndex": 2, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027f7000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000772d68929655ce7234c8c94256526dda66ef641e0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, { - "address": "0x09c90ea0d16ce058229b939967aa29446d13ceed", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "1.16937e+21", - }, - { - "address": "0x53beb1e70d3d051d1e8b061ab93a6212c728317d", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "199226357358097054944", + "actionIndex": 3, + "callData": "0x00000000000000000000000000000000000000000000000000000000000027da000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000002c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000022000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000008ac9b3801d0a8f5055428ae0bf301ca1da9768550000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000f6661756365742875696e743235362900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000002200010000000000000000000000000000000000000000000000000000000000124f80000000000000000000000000000000000000000000000000000000000000", + "signature": "execute(uint16,bytes,bytes,address)", + "target": "0xcfd34aeb46b1cb4779c945854d405e91d27a1899", + "value": "0", }, + ], + "proposalId": 436, + "proposalType": 0, + "proposerAddress": "0x2ce1d0ffd7e869d9df33e28552b12ddded326706", + "queuedDate": undefined, + "queuedTxHash": undefined, + "remoteProposals": [ { - "address": "0x3d759121234cd36F8124C21aFe1c6852d2bEd848", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "13777102348559360929", + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0xf3118a17863996b9f2a073c9a66faaa664355cf8", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, { - "address": "0x51e76fd862d563d58b7a807b01eabe0f3b07ac1a", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "13058470954295420970", + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 5611, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x8ac9b3801d0a8f5055428ae0bf301ca1da976855", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, { - "address": "0x627c97d755fc7fbb54ceb3c8e7d341cf9074c357", - "proposalId": "353", - "reason": undefined, - "support": 1, - "votesMantissa": "9977051682906883578", + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 421614, + "executedDate": undefined, + "executionEtaDate": undefined, + "expiredDate": undefined, + "proposalActions": [ + { + "actionIndex": 0, + "callData": "0x0000000000000000000000000000000000000000000000000de0b6b3a7640000", + "signature": "faucet(uint256)", + "target": "0x772d68929655ce7234c8c94256526dda66ef641e", + "value": "0", + }, + ], + "proposalId": 436, + "queuedDate": undefined, + "remoteProposalId": undefined, + "state": 0, }, ], - "forVotesMantissa": "6.34876045445857488254946e+23", - "proposalActions": [], - "proposalId": "353", - "proposalType": 1, - "proposerAddress": "0xc444949e0054a23c44fc45789738bdf64aed2391", - "queuedDate": undefined, - "queuedTxHash": "0xc295f4f351eb2ebeebbbee99066733585458ef91fc38570594c8da1e0554cfd6", - "startDate": 2023-06-15T09:00:20.000Z, - "state": 4, - "totalVotesMantissa": "7.3567789715995909474803e+23", - "userVoteSupport": 1, + "startDate": 2024-06-26T06:42:11.000Z, + "state": 0, + "totalVotesMantissa": "0", + "userVoteSupport": undefined, } `; diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/index.spec.ts b/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/index.spec.ts index 7bfb1e240a..f9caabad07 100644 --- a/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/index.spec.ts +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/__tests__/index.spec.ts @@ -1,5 +1,6 @@ import fakeAccountAddress from '__mocks__/models/address'; -import proposalsResponse from '__mocks__/subgraph/proposals.json'; +import bscProposalsResponse from '__mocks__/subgraph/bscProposals.json'; +import nonBscProposalsResponse from '__mocks__/subgraph/nonBscProposals.json'; import BigNumber from 'bignumber.js'; import type { ProposalsQuery } from 'clients/subgraph/gql/generated/governanceBsc'; import { formatToProposal } from '..'; @@ -11,12 +12,11 @@ describe('formatToProposal', () => { it('returns proposal in the correct format', async () => { const res = formatToProposal({ - gqlProposal: proposalsResponse.proposals[0] as ProposalsQuery['proposals'][number], + gqlProposal: bscProposalsResponse.proposals[0] as ProposalsQuery['proposals'][number], + gqlRemoteProposalsMapping: nonBscProposalsResponse.proposals, currentBlockNumber: 41360384, proposalMinQuorumVotesMantissa: new BigNumber('1000000000000000000000'), - proposalExecutionGracePeriodMs: 1000, accountAddress: fakeAccountAddress, - blockTimeMs: 3000, }); expect(res).toMatchSnapshot(); diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/__snapshots__/index.spec.ts.snap b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/__snapshots__/index.spec.ts.snap new file mode 100644 index 0000000000..0f2500be2d --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/__snapshots__/index.spec.ts.snap @@ -0,0 +1,129 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`formatToRemoteProposal > returns bridged remote proposal in the correct format 1`] = ` +{ + "bridgedDate": 2022-06-29T10:43:23.000Z, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": 2024-07-09T10:19:23.000Z, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": undefined, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 0, +} +`; + +exports[`formatToRemoteProposal > returns canceled remote proposal in the correct format 1`] = ` +{ + "bridgedDate": 2022-06-29T10:43:23.000Z, + "canceledDate": 2024-07-09T10:19:23.000Z, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": undefined, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 0, +} +`; + +exports[`formatToRemoteProposal > returns expired remote proposal in the correct format 1`] = ` +{ + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": undefined, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": 2024-07-16T15:56:59.000Z, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 4, +} +`; + +exports[`formatToRemoteProposal > returns pending remote proposal in the correct format 1`] = ` +{ + "bridgedDate": undefined, + "canceledDate": undefined, + "chainId": 11155111, + "executedDate": 2024-07-09T10:19:23.000Z, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": undefined, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 0, +} +`; + +exports[`formatToRemoteProposal > returns remote proposal as canceled when source proposal state is 2 in the correct format 1`] = ` +{ + "bridgedDate": undefined, + "canceledDate": 2024-03-14T12:01:40.000Z, + "chainId": 11155111, + "executedDate": 2024-07-09T10:19:23.000Z, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": undefined, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 0, +} +`; + +exports[`formatToRemoteProposal > returns remote proposal as canceled when source proposal state is 3 in the correct format 1`] = ` +{ + "bridgedDate": undefined, + "canceledDate": 2024-03-14T12:05:00.000Z, + "chainId": 11155111, + "executedDate": 2024-07-09T10:19:23.000Z, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": undefined, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 0, +} +`; + +exports[`formatToRemoteProposal > returns remote proposal as canceled when source proposal state is 6 in the correct format 1`] = ` +{ + "bridgedDate": undefined, + "canceledDate": 2024-03-14T12:03:20.000Z, + "chainId": 11155111, + "executedDate": 2024-07-09T10:19:23.000Z, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": undefined, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 0, +} +`; + +exports[`formatToRemoteProposal > returns withdrawn remote proposal in the correct format 1`] = ` +{ + "bridgedDate": undefined, + "canceledDate": 2022-06-29T10:43:23.000Z, + "chainId": 11155111, + "executedDate": 2024-07-09T10:19:23.000Z, + "executionEtaDate": 2024-07-02T15:56:59.000Z, + "expiredDate": undefined, + "proposalActions": [], + "proposalId": 1, + "queuedDate": 2024-06-30T15:56:59.000Z, + "remoteProposalId": 4, + "state": 0, +} +`; diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/index.spec.ts b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/index.spec.ts new file mode 100644 index 0000000000..7c1cf05711 --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/__tests__/index.spec.ts @@ -0,0 +1,108 @@ +import nonBscProposalsResponse from '__mocks__/subgraph/nonBscProposals.json'; +import { ProposalState, RemoteProposalState } from 'types'; +import type Vi from 'vitest'; +import { formatToProposalActions } from '../../formatToProposalActions'; +import { getRemoteProposalState } from '../getRemoteProposalState'; + +import { formatToRemoteProposal } from '..'; + +vi.mock('../getRemoteProposalState'); +vi.mock('../../formatToProposalActions'); + +const params = { + layerZeroChainId: 10161, + remoteProposalId: 1, + gqlRemoteProposal: nonBscProposalsResponse.proposals[0], + proposalState: ProposalState.Executed, + callDatas: [], + signatures: [], + targets: [], + values: [], +}; + +const fakeDate = new Date('2024-03-14T12:00:00Z'); + +describe('formatToRemoteProposal', () => { + beforeEach(() => { + vi.useFakeTimers().setSystemTime(fakeDate); + + (getRemoteProposalState as Vi.Mock).mockImplementation(() => RemoteProposalState.Pending); + (formatToProposalActions as Vi.Mock).mockImplementation(() => []); + }); + + afterEach(() => { + vi.useRealTimers(); + }); + + it('returns pending remote proposal in the correct format', () => { + const result = formatToRemoteProposal(params); + + expect(result).toMatchSnapshot(); + }); + + it('returns withdrawn remote proposal in the correct format', () => { + const result = formatToRemoteProposal({ + ...params, + withdrawnTimestampSeconds: 1656499403, + }); + + expect(result).toMatchSnapshot(); + }); + + it('returns canceled remote proposal in the correct format', () => { + const result = formatToRemoteProposal({ + ...params, + gqlRemoteProposal: { + ...nonBscProposalsResponse.proposals[0], + canceled: { + id: '0x544c7a7eaa39193348b5907232f9cee66c8aa6f609200d03792289b40487d164', + timestamp: '1720520363', + }, + executed: null, + }, + bridgedTimestampSeconds: 1656499403, + }); + + expect(result).toMatchSnapshot(); + }); + + it.each([ + [ProposalState.Canceled, { proposalCanceledDate: new Date(fakeDate.getTime() + 100000) }], + [ProposalState.Expired, { proposalExpiredDate: new Date(fakeDate.getTime() + 200000) }], + [ProposalState.Defeated, { proposalEndDate: new Date(fakeDate.getTime() + 300000) }], + ])( + 'returns remote proposal as canceled when source proposal state is %s in the correct format', + (proposalState, otherParams) => { + const result = formatToRemoteProposal({ + ...params, + ...otherParams, + proposalState, + }); + + expect(result).toMatchSnapshot(); + }, + ); + + it('returns bridged remote proposal in the correct format', () => { + const result = formatToRemoteProposal({ + ...params, + bridgedTimestampSeconds: 1656499403, + }); + + expect(result).toMatchSnapshot(); + }); + + it('returns expired remote proposal in the correct format', () => { + (getRemoteProposalState as Vi.Mock).mockImplementation(() => RemoteProposalState.Expired); + + const result = formatToRemoteProposal({ + ...params, + gqlRemoteProposal: { + ...nonBscProposalsResponse.proposals[0], + executed: null, + }, + }); + + expect(result).toMatchSnapshot(); + }); +}); diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/__tests__/index.spec.ts b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/__tests__/index.spec.ts new file mode 100644 index 0000000000..a66c5dff59 --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/__tests__/index.spec.ts @@ -0,0 +1,127 @@ +import { PROPOSAL_EXECUTION_GRACE_PERIOD_MS } from 'constants/chainMetadata'; +import { ProposalState, RemoteProposalState } from 'types'; +import { getRemoteProposalState } from '..'; + +describe('getRemoteProposalState', () => { + beforeEach(() => { + vi.useFakeTimers().setSystemTime(new Date('2024-03-14T12:00:00Z')); + }); + + afterEach(() => { + vi.useRealTimers(); + }); + + it('returns Canceled when isRemoteProposalCanceled is true', () => { + const result = getRemoteProposalState({ + proposalState: ProposalState.Executed, + isRemoteProposalBridged: true, + isRemoteProposalQueued: true, + isRemoteProposalExecuted: false, + isRemoteProposalCanceled: true, + }); + expect(result).toBe(RemoteProposalState.Canceled); + }); + + it('returns Canceled when proposalState is Canceled, Defeated or Expired', () => { + const baseParams = { + isRemoteProposalBridged: true, + isRemoteProposalQueued: true, + isRemoteProposalExecuted: false, + isRemoteProposalCanceled: true, + }; + + expect( + getRemoteProposalState({ + proposalState: ProposalState.Canceled, + ...baseParams, + }), + ).toBe(RemoteProposalState.Canceled); + + expect( + getRemoteProposalState({ + proposalState: ProposalState.Defeated, + ...baseParams, + }), + ).toBe(RemoteProposalState.Canceled); + + expect( + getRemoteProposalState({ + proposalState: ProposalState.Expired, + ...baseParams, + }), + ).toBe(RemoteProposalState.Canceled); + }); + + it('returns Executed when isRemoteProposalExecuted is true', () => { + const result = getRemoteProposalState({ + proposalState: ProposalState.Executed, + isRemoteProposalBridged: true, + isRemoteProposalQueued: true, + isRemoteProposalExecuted: true, + isRemoteProposalCanceled: false, + }); + expect(result).toBe(RemoteProposalState.Executed); + }); + + it('returns Pending when not isRemoteProposalBridged and not isRemoteProposalQueued', () => { + const result = getRemoteProposalState({ + proposalState: ProposalState.Executed, + isRemoteProposalBridged: false, + isRemoteProposalQueued: false, + isRemoteProposalExecuted: false, + isRemoteProposalCanceled: false, + }); + expect(result).toBe(RemoteProposalState.Pending); + }); + + it('returns Bridged when isRemoteProposalBridged and not isRemoteProposalQueued', () => { + const result = getRemoteProposalState({ + proposalState: ProposalState.Executed, + isRemoteProposalBridged: true, + isRemoteProposalQueued: false, + isRemoteProposalExecuted: false, + isRemoteProposalCanceled: false, + }); + expect(result).toBe(RemoteProposalState.Bridged); + }); + + it('returns Queued when isRemoteProposalQueued and not expired', () => { + const result = getRemoteProposalState({ + proposalState: ProposalState.Executed, + isRemoteProposalBridged: true, + isRemoteProposalQueued: true, + isRemoteProposalExecuted: false, + isRemoteProposalCanceled: false, + remoteProposalExecutionEtaDate: new Date('2024-03-14T13:00:00Z'), + }); + expect(result).toBe(RemoteProposalState.Queued); + }); + + it('returns Queued when isRemoteProposalQueued and remoteProposalExecutionEtaDate is undefined', () => { + const result = getRemoteProposalState({ + proposalState: ProposalState.Executed, + isRemoteProposalBridged: true, + isRemoteProposalQueued: true, + isRemoteProposalExecuted: false, + isRemoteProposalCanceled: false, + }); + expect(result).toBe(RemoteProposalState.Queued); + }); + + it('returns Expired when isRemoteProposalQueued and expired', () => { + const remoteProposalExecutionEtaDate = new Date('2024-03-14T11:59:59Z'); + remoteProposalExecutionEtaDate.setMilliseconds( + remoteProposalExecutionEtaDate.getMilliseconds() - PROPOSAL_EXECUTION_GRACE_PERIOD_MS - 1, + ); + + const result = getRemoteProposalState({ + proposalState: ProposalState.Executed, + isRemoteProposalBridged: true, + isRemoteProposalQueued: true, + isRemoteProposalExecuted: false, + isRemoteProposalCanceled: false, + remoteProposalExecutionEtaDate, + }); + expect(result).toBe(RemoteProposalState.Expired); + }); +}); diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/index.ts b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/index.ts new file mode 100644 index 0000000000..62bc23e6ac --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/getRemoteProposalState/index.ts @@ -0,0 +1,55 @@ +import { PROPOSAL_EXECUTION_GRACE_PERIOD_MS } from 'constants/chainMetadata'; +import { ProposalState, RemoteProposalState } from 'types'; + +export const getRemoteProposalState = ({ + proposalState, + isRemoteProposalBridged, + isRemoteProposalQueued, + isRemoteProposalCanceled, + isRemoteProposalExecuted, + remoteProposalExecutionEtaDate, +}: { + proposalState: ProposalState; + isRemoteProposalBridged: boolean; + isRemoteProposalQueued: boolean; + isRemoteProposalExecuted: boolean; + isRemoteProposalCanceled: boolean; + remoteProposalExecutionEtaDate?: Date; +}) => { + if ( + isRemoteProposalCanceled || + proposalState === ProposalState.Canceled || + proposalState === ProposalState.Defeated || + proposalState === ProposalState.Expired + ) { + return RemoteProposalState.Canceled; + } + + if (isRemoteProposalExecuted) { + return RemoteProposalState.Executed; + } + + if (!isRemoteProposalBridged && !isRemoteProposalQueued) { + return RemoteProposalState.Pending; + } + + if (isRemoteProposalBridged && !isRemoteProposalQueued) { + return RemoteProposalState.Bridged; + } + + if (!remoteProposalExecutionEtaDate) { + return RemoteProposalState.Queued; + } + + const nowMs = new Date().getTime(); + const expiredEtaTimestampMs = + remoteProposalExecutionEtaDate.getTime() + PROPOSAL_EXECUTION_GRACE_PERIOD_MS; + + const expired = expiredEtaTimestampMs < nowMs; + + if (isRemoteProposalQueued && !expired) { + return RemoteProposalState.Queued; + } + + return RemoteProposalState.Expired; +}; diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/index.ts b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/index.ts new file mode 100644 index 0000000000..222bcb9e29 --- /dev/null +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/formatToRemoteProposal/index.ts @@ -0,0 +1,114 @@ +import type { NonBscProposalFragment } from 'clients/subgraph/gql/generated/governanceNonBsc'; +import { PROPOSAL_EXECUTION_GRACE_PERIOD_MS } from 'constants/chainMetadata'; +import { CHAIN_IDS_ON_LAYER_ZERO } from 'constants/layerZero'; +import { ProposalState, type RemoteProposal, RemoteProposalState } from 'types'; +import { convertToDate } from 'utilities'; +import { formatToProposalActions } from '../formatToProposalActions'; +import { getRemoteProposalState } from './getRemoteProposalState'; + +export const formatToRemoteProposal = ({ + proposalState, + proposalCanceledDate, + proposalExpiredDate, + proposalEndDate, + proposalId, + layerZeroChainId, + gqlRemoteProposal, + bridgedTimestampSeconds, + failedTimestampSeconds, + withdrawnTimestampSeconds, + callDatas, + signatures, + targets, + values, +}: { + proposalState: ProposalState; + layerZeroChainId: number; + proposalId: number; + callDatas: string[]; + signatures: string[]; + targets: string[]; + values: string[]; + proposalCanceledDate?: Date; + proposalExpiredDate?: Date; + proposalEndDate?: Date; + failedTimestampSeconds?: number; + bridgedTimestampSeconds?: number; + withdrawnTimestampSeconds?: number; + gqlRemoteProposal?: NonBscProposalFragment; +}) => { + const chainId = CHAIN_IDS_ON_LAYER_ZERO[layerZeroChainId]; + + let canceledDate = undefined; + + if (gqlRemoteProposal?.canceled?.timestamp) { + canceledDate = convertToDate({ + timestampSeconds: Number(gqlRemoteProposal?.canceled?.timestamp), + }); + } else if (failedTimestampSeconds) { + canceledDate = convertToDate({ + timestampSeconds: Number(failedTimestampSeconds), + }); + } else if (withdrawnTimestampSeconds) { + canceledDate = convertToDate({ + timestampSeconds: Number(withdrawnTimestampSeconds), + }); + } else if ( + proposalState === ProposalState.Canceled || + proposalState === ProposalState.Expired || + proposalState === ProposalState.Defeated + ) { + canceledDate = proposalCanceledDate || proposalExpiredDate || proposalEndDate; + } + + const executionEtaDate = gqlRemoteProposal?.executionEta + ? convertToDate({ + timestampSeconds: Number(gqlRemoteProposal.executionEta), + }) + : undefined; + + const state = getRemoteProposalState({ + proposalState, + isRemoteProposalBridged: !!bridgedTimestampSeconds, + isRemoteProposalQueued: !!gqlRemoteProposal?.queued?.timestamp, + isRemoteProposalExecuted: !!gqlRemoteProposal?.executed?.timestamp, + isRemoteProposalCanceled: !!canceledDate, + remoteProposalExecutionEtaDate: executionEtaDate, + }); + + const expiredDate = + state === RemoteProposalState.Expired && executionEtaDate + ? new Date(executionEtaDate.getTime() + PROPOSAL_EXECUTION_GRACE_PERIOD_MS) + : undefined; + + const remoteProposal: RemoteProposal = { + proposalId, + remoteProposalId: gqlRemoteProposal && Number(gqlRemoteProposal.proposalId), + chainId, + proposalActions: formatToProposalActions({ + callDatas, + signatures, + targets, + values, + }), + canceledDate, + bridgedDate: bridgedTimestampSeconds + ? convertToDate({ timestampSeconds: bridgedTimestampSeconds }) + : undefined, + queuedDate: gqlRemoteProposal?.queued?.timestamp + ? convertToDate({ + timestampSeconds: Number(gqlRemoteProposal.queued.timestamp), + }) + : undefined, + executionEtaDate, + executedDate: gqlRemoteProposal?.executed?.timestamp + ? convertToDate({ + timestampSeconds: Number(gqlRemoteProposal.executed.timestamp), + }) + : undefined, + expiredDate, + state, + }; + + return remoteProposal; +}; diff --git a/apps/evm/src/clients/subgraph/utilities/formatToProposal/index.ts b/apps/evm/src/clients/subgraph/utilities/formatToProposal/index.ts index a1ec741311..d56a0a3f61 100644 --- a/apps/evm/src/clients/subgraph/utilities/formatToProposal/index.ts +++ b/apps/evm/src/clients/subgraph/utilities/formatToProposal/index.ts @@ -1,10 +1,15 @@ import BigNumber from 'bignumber.js'; -import type { ProposalsQuery } from 'clients/subgraph/gql/generated/governanceBsc'; +import type { BscProposalFragment } from 'clients/subgraph/gql/generated/governanceBsc'; +import type { NonBscProposalFragment } from 'clients/subgraph/gql/generated/governanceNonBsc'; +import { CHAIN_METADATA, PROPOSAL_EXECUTION_GRACE_PERIOD_MS } from 'constants/chainMetadata'; +import { governanceChain } from 'libs/wallet'; import { type AbstainVoter, type AgainstVoter, type ForVoter, type Proposal, + ProposalState, + type RemoteProposal, VoteSupport, } from 'types'; import { @@ -17,35 +22,36 @@ import { getUserVoteSupport, } from 'utilities'; import { formatToProposalActions } from './formatToProposalActions'; +import { formatToRemoteProposal } from './formatToRemoteProposal'; + +const { blockTimeMs: BSC_BLOCK_TIME_MS } = CHAIN_METADATA[governanceChain.id]; export const formatToProposal = ({ gqlProposal, + gqlRemoteProposalsMapping, currentBlockNumber, proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, accountAddress, - blockTimeMs, }: { - gqlProposal: ProposalsQuery['proposals'][number]; + gqlProposal: BscProposalFragment; + gqlRemoteProposalsMapping: { + [proposalId: number]: NonBscProposalFragment; + }; currentBlockNumber: number; proposalMinQuorumVotesMantissa: BigNumber; - blockTimeMs: number; - proposalExecutionGracePeriodMs?: number; accountAddress?: string; }) => { - const executionEtaDate = convertToDate({ timestampSeconds: Number(gqlProposal.executionEta) }); + const executionEtaDate = convertToDate({ + timestampSeconds: Number(gqlProposal.executionEta), + }); const nowMs = new Date().getTime(); - const startDate = new Date(nowMs + (gqlProposal.startBlock - currentBlockNumber) * blockTimeMs); - const endDate = new Date(nowMs + (gqlProposal.endBlock - currentBlockNumber) * blockTimeMs); - - // Extract BSC proposal actions - const proposalActions = formatToProposalActions({ - callDatas: gqlProposal.calldatas || [], - signatures: gqlProposal.signatures || [], - targets: gqlProposal.targets || [], - values: gqlProposal.values || [], - }); + const startDate = new Date( + nowMs + (Number(gqlProposal.startBlock) - currentBlockNumber) * BSC_BLOCK_TIME_MS!, + ); + const endDate = new Date( + nowMs + (Number(gqlProposal.endBlock) - currentBlockNumber) * BSC_BLOCK_TIME_MS!, + ); // Extract votes const { @@ -111,37 +117,103 @@ export const formatToProposal = ({ }, ); + const state = getProposalState({ + startBlockNumber: Number(gqlProposal.startBlock), + endBlockNumber: Number(gqlProposal.endBlock), + currentBlockNumber, + proposalMinQuorumVotesMantissa, + forVotesMantissa, + passing: gqlProposal.passing, + queued: !!gqlProposal.queued?.timestamp, + executed: !!gqlProposal.executed?.timestamp, + canceled: !!gqlProposal.canceled?.timestamp, + executionEtaTimestampMs: Number(gqlProposal.executionEta * 1000), + }); + + // Extract BSC proposal actions + const proposalActions = formatToProposalActions({ + callDatas: gqlProposal.calldatas || [], + signatures: gqlProposal.signatures || [], + targets: gqlProposal.targets || [], + values: gqlProposal.values || [], + }); + + const cancelDate = gqlProposal.canceled?.timestamp + ? convertToDate({ + timestampSeconds: Number(gqlProposal.canceled.timestamp), + }) + : undefined; + + const queuedDate = gqlProposal.queued?.timestamp + ? convertToDate({ + timestampSeconds: Number(gqlProposal.queued.timestamp), + }) + : undefined; + + const executedDate = gqlProposal.executed?.timestamp + ? convertToDate({ + timestampSeconds: Number(gqlProposal.executed.timestamp), + }) + : undefined; + + const expiredDate = + state === ProposalState.Expired && executionEtaDate + ? new Date(executionEtaDate.getTime() + PROPOSAL_EXECUTION_GRACE_PERIOD_MS) + : undefined; + + const remoteProposals = gqlProposal.remoteProposals.reduce( + ( + acc, + { proposalId, trustedRemote, stateTransactions, calldatas, signatures, targets, values }, + ) => { + const gqlRemoteProposal = gqlRemoteProposalsMapping[proposalId]; + + const remoteProposal = formatToRemoteProposal({ + proposalState: state, + proposalCanceledDate: cancelDate, + proposalExpiredDate: expiredDate, + proposalEndDate: endDate, + proposalId: Number(gqlProposal.proposalId), + layerZeroChainId: trustedRemote.layerZeroChainId, + gqlRemoteProposal, + failedTimestampSeconds: stateTransactions?.stored?.timestamp + ? Number(stateTransactions.stored.timestamp) + : undefined, + bridgedTimestampSeconds: stateTransactions?.executed?.timestamp + ? Number(stateTransactions.executed.timestamp) + : undefined, + withdrawnTimestampSeconds: stateTransactions?.withdrawn?.timestamp + ? Number(stateTransactions.withdrawn.timestamp) + : undefined, + callDatas: calldatas ?? [], + signatures: signatures ?? [], + targets: targets ?? [], + values: values ?? [], + }); + + return [...acc, remoteProposal]; + }, + [], + ); + const result: Proposal = { - proposalId: gqlProposal.proposalId, + proposalId: Number(gqlProposal.proposalId), proposalType: getProposalType({ type: gqlProposal.type }), proposerAddress: gqlProposal.proposer.id, - state: getProposalState({ - startBlockNumber: gqlProposal.startBlock, - endBlockNumber: gqlProposal.endBlock, - currentBlockNumber, - proposalMinQuorumVotesMantissa, - proposalExecutionGracePeriodMs, - forVotesMantissa, - passing: gqlProposal.passing, - queued: !!gqlProposal.queued?.timestamp, - executed: !!gqlProposal.executed?.timestamp, - canceled: !!gqlProposal.canceled?.timestamp, - executionEtaTimestampMs: gqlProposal.executionEta, + state, + description: formatToProposalDescription({ + description: gqlProposal.description, }), - description: formatToProposalDescription({ description: gqlProposal.description }), endBlock: +gqlProposal.endBlock, createdDate: gqlProposal.created?.timestamp - ? convertToDate({ timestampSeconds: gqlProposal.created.timestamp }) - : undefined, - cancelDate: gqlProposal.canceled?.timestamp - ? convertToDate({ timestampSeconds: gqlProposal.canceled.timestamp }) - : undefined, - queuedDate: gqlProposal.queued?.timestamp - ? convertToDate({ timestampSeconds: gqlProposal.queued.timestamp }) - : undefined, - executedDate: gqlProposal.executed?.timestamp - ? convertToDate({ timestampSeconds: gqlProposal.executed.timestamp }) + ? convertToDate({ + timestampSeconds: Number(gqlProposal.created.timestamp), + }) : undefined, + cancelDate, + queuedDate, + executedDate, + expiredDate, proposalActions, forVotes, againstVotes, @@ -158,6 +230,7 @@ export const formatToProposal = ({ startDate, endDate, executionEtaDate, + remoteProposals, }; return result; diff --git a/apps/evm/src/config/codegen.ts b/apps/evm/src/config/codegen.ts index 8a654cdb4f..ca389a01d6 100644 --- a/apps/evm/src/config/codegen.ts +++ b/apps/evm/src/config/codegen.ts @@ -29,13 +29,13 @@ export const projects = { }, }, }, - governanceRemoteChains: { + governanceNonBsc: { schema: 'https://api.studio.thegraph.com/query/77761/venus-governance-ethereum/version/latest', - documents: ['../clients/subgraph/queries/governanceRemoteChains/**/*.graphql'], + documents: ['../clients/subgraph/queries/governanceNonBsc/**/*.graphql'], extensions: { codegen: { generates: { - '../clients/subgraph/gql/generated/governanceRemoteChains.ts': { + '../clients/subgraph/gql/generated/governanceNonBsc.ts': { plugins, }, }, diff --git a/apps/evm/src/constants/chainMetadata.ts b/apps/evm/src/constants/chainMetadata.ts index 150cd000b8..b02652f425 100644 --- a/apps/evm/src/constants/chainMetadata.ts +++ b/apps/evm/src/constants/chainMetadata.ts @@ -6,7 +6,7 @@ import opbnbLogo from 'libs/wallet/img/chains/opbnb.svg'; import zkSyncLogo from 'libs/wallet/img/chains/zkSync.svg'; import { ChainId, type ChainMetadata } from 'types'; -const PROPOSAL_EXECUTION_GRACE_PERIOD_MS = 14 * 24 * 60 * 60 * 1000; // 14 days in milliseconds +export const PROPOSAL_EXECUTION_GRACE_PERIOD_MS = 14 * 24 * 60 * 60 * 1000; // 14 days in milliseconds export const CHAIN_METADATA: { [chainId in ChainId]: ChainMetadata; @@ -19,7 +19,6 @@ export const CHAIN_METADATA: { blockTimeMs: 3000, blocksPerDay: 28800, corePoolComptrollerContractAddress: '0xfD36E2c2a6789Db23113685031d7F16329158384', - proposalExecutionGracePeriodMs: PROPOSAL_EXECUTION_GRACE_PERIOD_MS, nativeToken: getToken({ chainId: ChainId.BSC_MAINNET, symbol: 'BNB' })!, }, [ChainId.BSC_TESTNET]: { @@ -30,7 +29,6 @@ export const CHAIN_METADATA: { blockTimeMs: 3000, blocksPerDay: 28800, corePoolComptrollerContractAddress: '0x94d1820b2D1c7c7452A163983Dc888CEC546b77D', - proposalExecutionGracePeriodMs: PROPOSAL_EXECUTION_GRACE_PERIOD_MS, nativeToken: getToken({ chainId: ChainId.BSC_TESTNET, symbol: 'BNB' })!, }, [ChainId.OPBNB_MAINNET]: { @@ -95,7 +93,10 @@ export const CHAIN_METADATA: { corePoolComptrollerContractAddress: '0x006D44b6f5927b3eD83bD0c1C36Fb1A3BaCaC208', lstPoolComptrollerContractAddress: '0x3D04F926b2a165BBa17FBfccCCB61513634fa5e4', lstPoolVWstEthContractAddress: '0x253515E19e8b888a4CA5a0a3363B712402ce4046', - nativeToken: getToken({ chainId: ChainId.ARBITRUM_SEPOLIA, symbol: 'ETH' })!, + nativeToken: getToken({ + chainId: ChainId.ARBITRUM_SEPOLIA, + symbol: 'ETH', + })!, }, [ChainId.ZKSYNC_SEPOLIA]: { name: 'zkSync Sepolia', diff --git a/apps/evm/src/hooks/useIsFeatureEnabled/index.tsx b/apps/evm/src/hooks/useIsFeatureEnabled/index.tsx index 19f7bac6b0..bae25f2da2 100644 --- a/apps/evm/src/hooks/useIsFeatureEnabled/index.tsx +++ b/apps/evm/src/hooks/useIsFeatureEnabled/index.tsx @@ -101,6 +101,9 @@ export const featureFlags = { ChainId.OPBNB_TESTNET, ChainId.ARBITRUM_SEPOLIA, ChainId.ZKSYNC_SEPOLIA, + // DEV ONLY - do not release with this flag enabled + ChainId.BSC_MAINNET, + // END DEV ONLY ], }; diff --git a/apps/evm/src/libs/translations/translations/en.json b/apps/evm/src/libs/translations/translations/en.json index 7f4422136d..a5a52769f9 100644 --- a/apps/evm/src/libs/translations/translations/en.json +++ b/apps/evm/src/libs/translations/translations/en.json @@ -1085,18 +1085,15 @@ "command": { "cta": { "execute": "Execute", - "retry": "Retry", "wrongChain": "Switch to {{chainName}}" }, "dates": { - "executableIn": "Executable on {{date, }}", - "previousStep": "{{date, }}", - "queuedIn": "Queued on {{date, }}" + "executableAt": "Executable at {{date, }}", + "previousStep": "{{date, }}" }, "description": { "bridged": "Waiting for the bridge to propagate the transaction", "canceled": "Payload execution cancelled by governance guardian", - "executionFailed": "Payload execution failed. Please try again.", "pending": "Waiting for the BNB chain payload to be executed", "waitingToBeExecutable": "Waiting for queueing period to end", "wrongChain": "This payload needs to be executed on the {{chainName}} chain" @@ -1110,8 +1107,7 @@ "executed": "Executed", "expired": "Expired", "pending": "Pending", - "queued": "Queued", - "succeeded": "Succeeded" + "queued": "Queued" } }, "commands": { @@ -1129,6 +1125,7 @@ "description": "Description", "executeButtonLabel": "Execute", "executedDate": "Executed: {{ date, dd MMM yyyy h:mm a }}", + "expiredDate": "Expired: {{ date, dd MMM yyyy h:mm a }}", "greenPulseAnimation": { "altText": "Green pulse animation" }, @@ -1152,7 +1149,8 @@ "dateOnly": "{{date, dd MMM yyyy}}", "timeOnly": "{{date, h:mm a}}" }, - "timeUntilExecutable": "Time until executable", + "timeUntilExecutable": "Executable at: {{ date, dd MMM yyyy h:mm a }}", + "timeUntilVotable": "Voting starts at: {{ date, dd MMM yyyy h:mm a }}", "voteStatus": { "abstained": "Abstained", "notVoted": "Not voted", diff --git a/apps/evm/src/pages/Governance/ProposalList/GovernanceProposal/index.tsx b/apps/evm/src/pages/Governance/ProposalList/GovernanceProposal/index.tsx index 48376abe7d..c04f40450d 100644 --- a/apps/evm/src/pages/Governance/ProposalList/GovernanceProposal/index.tsx +++ b/apps/evm/src/pages/Governance/ProposalList/GovernanceProposal/index.tsx @@ -29,6 +29,7 @@ import TEST_IDS from './testIds'; // t('voteProposalUi.executedDate') // t('voteProposalUi.queuedUntilDate') // t('voteProposalUi.defeatedDate') +// t('voteProposalUi.expiredDate') interface StateCard { state: ProposalState | undefined; @@ -47,7 +48,8 @@ const StatusCard: React.FC = ({ state }) => { label: string; } > = useMemo(() => { - const label = state ? getProposalStateLabel({ state }) : t('proposalState.active'); + const label = + state !== undefined ? getProposalStateLabel({ state }) : t('proposalState.active'); return { [ProposalState.Queued]: { @@ -130,6 +132,7 @@ const GovernanceProposalUi: React.FC = ({ executedDate, executionEtaDate, cancelDate, + expiredDate, endDate, userVoteSupport, forVotesMantissa, @@ -173,10 +176,12 @@ const GovernanceProposalUi: React.FC = ({ return [executionEtaDate, 'voteProposalUi.queuedUntilDate']; case ProposalState.Defeated: return [endDate, 'voteProposalUi.defeatedDate']; + case ProposalState.Expired: + return [expiredDate, 'voteProposalUi.expiredDate']; default: return [undefined, undefined]; } - }, [state, cancelDate, executedDate, endDate, executionEtaDate]); + }, [state, cancelDate, executedDate, endDate, executionEtaDate, expiredDate]); return ( , 'onClick'> & Pick< - ProposalCommand, + RemoteProposal, | 'chainId' | 'state' - | 'failedExecutionAt' - | 'canceledAt' - | 'bridgedAt' - | 'queuedAt' - | 'succeededAt' - | 'executableAt' - | 'executedAt' - | 'expiredAt' + | 'canceledDate' + | 'bridgedDate' + | 'queuedDate' + | 'executionEtaDate' + | 'executedDate' + | 'expiredDate' >; export const Cta: React.FC = ({ chainId, state, - failedExecutionAt, - canceledAt, - bridgedAt, - queuedAt, - executableAt, - executedAt, - expiredAt, + canceledDate, + bridgedDate, + queuedDate, + executionEtaDate, + executedDate, + expiredDate, ...otherProps }) => { const { t } = useTranslation(); const chainMetadata = CHAIN_METADATA[chainId]; - const { isOnWrongChain, hasFailedExecution } = useCommand({ + const { isOnWrongChain } = useCommand({ chainId, state, - executableAt, - failedExecutionAt, - executedAt, + executionEtaDate, }); const { switchChain } = useSwitchChain(); // TODO: wire up (see VEN-2701) const execute = () => {}; - const retry = () => {}; const onClick = (e: React.MouseEvent) => { e.stopPropagation(); @@ -57,10 +51,6 @@ export const Cta: React.FC = ({ return switchChain({ chainId }); } - if (hasFailedExecution) { - return retry(); - } - return execute(); }; @@ -71,12 +61,8 @@ export const Cta: React.FC = ({ }); } - if (hasFailedExecution) { - return t('voteProposalUi.command.cta.retry'); - } - return t('voteProposalUi.command.cta.execute'); - }, [t, isOnWrongChain, hasFailedExecution, chainMetadata.name]); + }, [t, isOnWrongChain, chainMetadata.name]); return (