Technical details
The Panther Protocol will be extended with the following newly deployed smart contracts:
On the Ethereum mainnet:
- at
0x39ed49B3cEA4796E669f2542a41B876646c1BBe7
:AdvancedStakeV2ActionMsgTranslator
On the Polygon network:
- at
0x7f076D64055E19d0f9E84160748c6c3CED9c28aC
:AdvancedStakeV2ActionMsgTranslator
The proposal transactions will involve the following pre-existing smart contracts:
On the Ethereum mainnet:
- at
0x505796f5bc290269d2522cf19135ad7aa60dfd77
:DAO_Multisig
- at
0xf4d06d72dACdD8393FA4eA72FdcC10049711F899
:Staking
- at
0x347a58878D04951588741d4d16d54B742c7f60fC
:RewardMaster
- at
0xFED599513aB078Edea7Cf46574154f92b0B9FCAB
:AdvancedStakeRewardAdviserAndMsgSender
- at
0x909E34d3f6124C324ac83DccA84b74398a6fa173
:ZKPToken
- at
0xb476104aa9D1f30180a01987FB09b1e96dDCF14B
:VestingPools
- at
0xfe5e5D361b2ad62c541bAb87C45a0B9B018389a2
:FxRoot
- at
0x4e59b44847b379578588920cA78FbF26c0B4956C
:DeterministicDeploymentProxy
(github.com/Arachnid/deterministic-deployment-proxy)
On the Polygon network:
- at
0x4cEc451F63DBE47D9dA2DeBE2B734E4CB4000Eac
:Staking
- at
0x09220DD0c342Ee92C333FAa6879984D63B4dff03
:RewardMaster
- at
0x4e59b44847b379578588920cA78FbF26c0B4956C
:DeterministicDeploymentProxy
(github.com/Arachnid/deterministic-deployment-proxy) - at
0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76
:MaticBridgeModule
This proposal initiates the execution of several blockchain transactions. These transactions have been pre-encoded during the submission of the proposal to snapshot.org and can be independently verified using the snapshot.org web interface.
Deploy the
AdvancedStakeV2ActionMsgTranslator
on the Polygon network by invoking the DeterministicDeploymentProxy
on the Polygon Network. The transaction will initiate a call to FxRoot
on the Ethereum mainnet, which will bridge the contract bytecode to the Polygon network through the MaticBridgeModule
:FxRoot@eth::sendMessageToChild(0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76, 0x0000000000000000000000004e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001500000000000000000000000000000000000000000000000000000000000005248484806d0109ded292adb1e26b7422b1a421b02e037a04defec1d1ac2d98413660a060405234801561001057600080fd5b506040516104e43803806104e483398101604081905261002f91610089565b6001600160a01b0381166100785760405162461bcd60e51b815260206004820152600c60248201526b5a65726f206164647265737360a01b604482015260640160405180910390fd5b6001600160a01b03166080526100b9565b60006020828403121561009b57600080fd5b81516001600160a01b03811681146100b257600080fd5b9392505050565b6080516104096100db6000396000818161010101526101af01526104096000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063e9cb032414610030575b600080fd5b61004361003e3660046102cc565b6100be565b6040516100b59190600060a08201905073ffffffffffffffffffffffffffffffffffffffff80845116835260208401516bffffffffffffffffffffffff808216602086015282604087015116604086015280606087015116606086015250508060808501511660808401525092915050565b60405180910390f35b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091523373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146101735760405162461bcd60e51b815260206004820152601160248201527f414d543a20756e617574686f72697a656400000000000000000000000000000060448201526064015b60405180910390fd5b63e6ab1cdf60e01b6001600160e01b031984160161022457604051630dc3282360e11b815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631b865046906101ed906319932b9d60e31b90869060040161039d565b600060405180830381600087803b15801561020757600080fd5b505af115801561021b573d6000803e3d6000fd5b50505050610284565b6001600160e01b03198316636a8ecb8160e01b146102845760405162461bcd60e51b815260206004820152601760248201527f414d543a20756e737570706f7274656420616374696f6e000000000000000000604482015260640161016a565b506040805160a08101825260008082526020820181905291810182905260608101829052608081019190915292915050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156102df57600080fd5b82356001600160e01b0319811681146102f757600080fd5b9150602083013567ffffffffffffffff8082111561031457600080fd5b818501915085601f83011261032857600080fd5b81358181111561033a5761033a6102b6565b604051601f8201601f19908116603f01168101908382118183101715610362576103626102b6565b8160405282815288602084870101111561037b57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b63ffffffff60e01b8316815260006020604081840152835180604085015260005b818110156103da578581018301518582016060015282016103be565b506000606082860101526060601f19601f83011685010192505050939250505056fea164736f6c6343000810000a00000000000000000000000009220dd0c342ee92c333faa6879984d63b4dff0300000000000000000000000000000000000000000000000000000000)
Deploy the
AdvancedStakeV2ActionMsgTranslator
on the Ethereum mainnet using the DeterministicDeploymentProxy
:DeterministicDeploymentProxy@eth::call(
0x8484806d0109ded292adb1e26b7422b1a421b02e037a04defec1d1ac2d98413660a060405234801561001057600080fd5b506040516104e43803806104e483398101604081905261002f91610089565b6001600160a01b0381166100785760405162461bcd60e51b815260206004820152600c60248201526b5a65726f206164647265737360a01b604482015260640160405180910390fd5b6001600160a01b03166080526100b9565b60006020828403121561009b57600080fd5b81516001600160a01b03811681146100b257600080fd5b9392505050565b6080516104096100db6000396000818161010101526101af01526104096000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063e9cb032414610030575b600080fd5b61004361003e3660046102cc565b6100be565b6040516100b59190600060a08201905073ffffffffffffffffffffffffffffffffffffffff80845116835260208401516bffffffffffffffffffffffff808216602086015282604087015116604086015280606087015116606086015250508060808501511660808401525092915050565b60405180910390f35b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091523373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016146101735760405162461bcd60e51b815260206004820152601160248201527f414d543a20756e617574686f72697a656400000000000000000000000000000060448201526064015b60405180910390fd5b63e6ab1cdf60e01b6001600160e01b031984160161022457604051630dc3282360e11b815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690631b865046906101ed906319932b9d60e31b90869060040161039d565b600060405180830381600087803b15801561020757600080fd5b505af115801561021b573d6000803e3d6000fd5b50505050610284565b6001600160e01b03198316636a8ecb8160e01b146102845760405162461bcd60e51b815260206004820152601760248201527f414d543a20756e737570706f7274656420616374696f6e000000000000000000604482015260640161016a565b506040805160a08101825260008082526020820181905291810182905260608101829052608081019190915292915050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156102df57600080fd5b82356001600160e01b0319811681146102f757600080fd5b9150602083013567ffffffffffffffff8082111561031457600080fd5b818501915085601f83011261032857600080fd5b81358181111561033a5761033a6102b6565b604051601f8201601f19908116603f01168101908382118183101715610362576103626102b6565b8160405282815288602084870101111561037b57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b63ffffffff60e01b8316815260006020604081840152835180604085015260005b818110156103da578581018301518582016060015282016103be565b506000606082860101526060601f19601f83011685010192505050939250505056fea164736f6c6343000810000a000000000000000000000000347a58878d04951588741d4d16d54b742c7f60fc
)
Configure the
Staking
and AdvancedStakeRewardAdviserAndMsgSender
contracts on the Ethereum mainnet to work with the newly deployed AdvancedStakeV2ActionMsgTranslator
:RewardMaster@eth::addRewardAdviser(
"0xf4d06d72dACdD8393FA4eA72FdcC10049711F899",
"0x1954e321",
"0x39ed49B3cEA4796E669f2542a41B876646c1BBe7")
RewardMaster@eth::addRewardAdviser(
"0xf4d06d72dACdD8393FA4eA72FdcC10049711F899",
"0x6a8ecb81",
"0x39ed49B3cEA4796E669f2542a41B876646c1BBe7")
RewardMaster@eth::addRewardAdviser(
"0x39ed49B3cEA4796E669f2542a41B876646c1BBe7",
"0xcc995ce8",
"0xFED599513aB078Edea7Cf46574154f92b0B9FCAB")
RewardMaster@eth::addRewardAdviser(
"0x39ed49B3cEA4796E669f2542a41B876646c1BBe7",
"0xb8372e55",
"0xFED599513aB078Edea7Cf46574154f92b0B9FCAB")
Enable Advanced Stakes V2 on the Ethereum mainnet from Thursday, April 6, 2023, at 6:00:00 PM UTC until Tuesday, August 22, 2023, at 12:00:00 PM UTC, with a lock period of 60 days:
Staking@eth::addTerms(
"0x8496de05",
[true,true,1000,0,1680804000,1692705600,0,0,5184000])
Configure the
Staking
and AdvancedStakeRewardAdviserAndMsgSender
contracts on the Polygon network to interact with the newly deployed AdvancedStakeV2ActionMsgTranslator
.FxRoot@eth::sendMessageToChild(
0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76,
0x00000000000000000000000009220dd0c342ee92c333faa6879984d63b4dff03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000006499ff97360000000000000000000000004cec451f63dbe47d9da2debe2b734e4cb4000eac1954e321000000000000000000000000000000000000000000000000000000000000000000000000000000007f076d64055e19d0f9e84160748c6c3ced9c28ac00000000000000000000000000000000000000000000000000000000)
FxRoot@eth::sendMessageToChild(
0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76,
0x00000000000000000000000009220dd0c342ee92c333faa6879984d63b4dff03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000006499ff97360000000000000000000000004cec451f63dbe47d9da2debe2b734e4cb4000eac6a8ecb81000000000000000000000000000000000000000000000000000000000000000000000000000000007f076d64055e19d0f9e84160748c6c3ced9c28ac00000000000000000000000000000000000000000000000000000000)
FxRoot@eth::sendMessageToChild(
0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76,
0x00000000000000000000000009220dd0c342ee92c333faa6879984d63b4dff03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000006499ff97360000000000000000000000007f076d64055e19d0f9e84160748c6c3ced9c28accc995ce8000000000000000000000000000000000000000000000000000000000000000000000000000000008f15a43961c27c74cb4f55234a78802401614de300000000000000000000000000000000000000000000000000000000)
FxRoot@eth::sendMessageToChild(
0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76,
0x00000000000000000000000009220dd0c342ee92c333faa6879984d63b4dff03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000019000000000000000000000000000000000000000000000000000000000000006499ff97360000000000000000000000007f076d64055e19d0f9e84160748c6c3ced9c28acb8372e55000000000000000000000000000000000000000000000000000000000000000000000000000000008f15a43961c27c74cb4f55234a78802401614de300000000000000000000000000000000000000000000000000000000)
FxRoot@eth::sendMessageToChild
calls on the Ethereum network represents encoded transactions that will trigger the corresponding calls on the Polygon network. This is done through the bridging mechanism provided by the MaticBridgeModule
. Once the transactions are executed on the Ethereum network, they will be relayed to the Polygon network, where they will be decoded and executed as the intended calls. The transactions mentioned above represent the following calls on the Polygon network:RewardMaster@matic::addRewardAdviser(
"0x4cEc451F63DBE47D9dA2DeBE2B734E4CB4000Eac",
"0x1954e321",
"0x7f076D64055E19d0f9E84160748c6c3CED9c28aC")
RewardMaster@matic::addRewardAdviser(
"0x4cEc451F63DBE47D9dA2DeBE2B734E4CB4000Eac",
"0x6a8ecb81",
"0x7f076D64055E19d0f9E84160748c6c3CED9c28aC")
RewardMaster@matic::addRewardAdviser(
"0x7f076D64055E19d0f9E84160748c6c3CED9c28aC",
"0xcc995ce8",
"0x8f15a43961c27C74CB4F55234A78802401614de3")
RewardMaster@matic::addRewardAdviser(
"0x7f076D64055E19d0f9E84160748c6c3CED9c28aC",
"0xb8372e55",
"0x8f15a43961c27C74CB4F55234A78802401614de3")
Enable advanced stakes V2 on Polygon starting from Thursday, April 6, 2023 at 6:00:00 PM UTC until Tuesday, August 22, 2023 at 12:00:00 PM UTC, with a lock period of 60 days:
FxRoot@eth::sendMessageToChild(
0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76,
0x0000000000000000000000004cec451f63dbe47d9da2debe2b734e4cb4000eac000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000001445391dff58496de05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000642f08a00000000000000000000000000000000000000000000000000000000064e4a3400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004f1a0000000000000000000000000000000000000000000000000000000000)
The transaction will call
FxRoot
on the mainnet to bridge the following configuration data to the Polygon network through MaticBridgeModule
:Staking@matic::addTerms(
"0x8496de05",
[true,true,1000,0,1680804000,1692705600,0,0,5184000])
Update the advanced staking reward parameters by changing the end time to Tuesday, August 22, 2023 at 4:00:00 PM GMT:
FxRoot@eth::sendMessageToChild(
0x4A4FC40d2475f493EcA3Ec436b924237AA1b0a76,
0x0000000000000000000000008f15a43961c27c74cb4f55234a78802401614de3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b0000000000000000000000000000000000000000000000000000000000000084bfa6946000000000000000000000000000000000000000000000000000000000639226200000000000000000000000000000000000000000000000000000000064e4db80000000000000000000000000000000000000000000000000000000000000000f000000000000000000000000000000000000000000000000000000000000000f00000000000000000000000000000000000000000000000000000000)
The transaction will invoke the
FxRoot
on the mainnet to facilitate the transfer of the following configuration call across the Polygon bridge:AdvancedStakeRewardController@matic::updateRewardParams(
[1670522400,1692720000,15,15]
)
Transfer ZKP reward to the community member for executing the PIP-11:
ZKPToken@eth::transfer(
"0xE1B583De9cB37196031b771686734a31ec365768",
"2000000000000000000000")
Add and configure a 100,000 $ZKP Vesting Pool designated for Community Deployment rewards:
VestingPools@eth::addVestingPools(
["0x505796f5bc290269d2522cf19135ad7aa60dfd77"],
[[false,true,1683450000,1,100000000000,100000000000,0]])
VestingPools@eth::updatePoolTime(18, 1681732800, 1)