From f86b12a28f7810fb7a0e66da9b889306f09cb207 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1s=20Migone?= Date: Tue, 1 Oct 2024 14:49:01 -0300 Subject: [PATCH] feat(horizon): deploy horizon with Hardhat Ignition (#1025) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat(horizon): wip ignition deployment * feat: add ignition modules for horizon contracts Signed-off-by: Tomás Migone * feat: add deploy scripts for horizon staking contracts Signed-off-by: Tomás Migone * feat: first version of horizon contracts deployed with ignition Signed-off-by: Tomás Migone * feat: deploy subgraph service using ignition Signed-off-by: Tomás Migone * fix: remove deployment files for localhost Signed-off-by: Tomás Migone * chore: gitignore localhost deployment files for ignition Signed-off-by: Tomás Migone * chore: add deployment files for arbitrum sepolia and sepolia Signed-off-by: Tomás Migone * fix: deployment tweaks, add deployment files to github Signed-off-by: Tomás Migone * fix: use correct network name for arbitrum sepolia Signed-off-by: Tomás Migone * fix: hardhat build Signed-off-by: Tomás Migone --------- Signed-off-by: Tomás Migone --- .gitignore | 4 + packages/horizon/README.md | 22 +- packages/horizon/contracts/mocks/Dummy.sol | 5 + packages/horizon/hardhat.config.ts | 29 + .../ignition/configs/horizon.hardhat.json | 46 + .../artifacts/BridgeEscrow#BridgeEscrow.json | 159 ++ .../BridgeEscrow#BridgeEscrow_Instance.json | 159 ++ .../artifacts/BridgeEscrow#GraphProxy.json | 177 ++ .../artifacts/Controller#Controller.json | 349 +++ .../artifacts/Curation#Curation.json | 707 +++++ .../artifacts/Curation#Curation_Instance.json | 707 +++++ .../Curation#GraphCurationToken.json | 414 +++ .../artifacts/Curation#GraphProxy.json | 177 ++ .../artifacts/EpochManager#EpochManager.json | 364 +++ .../EpochManager#EpochManager_Instance.json | 364 +++ .../artifacts/EpochManager#GraphProxy.json | 177 ++ .../GraphHorizon_Periphery#Dummy.json | 10 + .../GraphPayments#GraphPayments.json | 308 +++ .../GraphPayments#GraphPayments_Instance.json | 308 +++ .../GraphProxyAdmin#GraphProxyAdmin.json | 234 ++ .../artifacts/GraphToken#GraphProxy.json | 177 ++ .../artifacts/GraphToken#GraphToken.json | 750 ++++++ .../GraphToken#GraphToken_Instance.json | 750 ++++++ .../GraphTokenGateway#GraphProxy.json | 177 ++ .../GraphTokenGateway#GraphTokenGateway.json | 647 +++++ ...kenGateway#GraphTokenGateway_Instance.json | 647 +++++ ...izonProxies#GraphProxy_HorizonStaking.json | 177 ++ ...zonProxies#OZProxyDummy_GraphPayments.json | 10 + ...onProxies#OZProxyDummy_PaymentsEscrow.json | 10 + ...rizonProxies#ProxyAdmin_GraphPayments.json | 132 + ...izonProxies#ProxyAdmin_PaymentsEscrow.json | 132 + .../HorizonProxies#RegisteredDummy.json | 10 + ...sparentUpgradeableProxy_GraphPayments.json | 116 + ...parentUpgradeableProxy_PaymentsEscrow.json | 116 + .../HorizonStaking#HorizonStaking.json | 2280 +++++++++++++++++ ...orizonStaking#HorizonStaking_Instance.json | 2280 +++++++++++++++++ ...onStakingExtension#ExponentialRebates.json | 55 + ...kingExtension#HorizonStakingExtension.json | 1263 +++++++++ .../PaymentsEscrow#PaymentsEscrow.json | 769 ++++++ ...aymentsEscrow#PaymentsEscrow_Instance.json | 769 ++++++ .../artifacts/RewardsManager#GraphProxy.json | 177 ++ .../RewardsManager#RewardsManager.json | 635 +++++ ...ewardsManager#RewardsManager_Instance.json | 635 +++++ .../artifacts/TAPCollector#TAPCollector.json | 450 ++++ .../chain-11155111/deployed_addresses.json | 41 + .../deployments/chain-11155111/journal.jsonl | 318 +++ .../artifacts/BridgeEscrow#BridgeEscrow.json | 159 ++ .../BridgeEscrow#BridgeEscrow_Instance.json | 159 ++ .../artifacts/BridgeEscrow#GraphProxy.json | 177 ++ .../artifacts/Controller#Controller.json | 349 +++ .../artifacts/Curation#Curation.json | 707 +++++ .../artifacts/Curation#Curation_Instance.json | 707 +++++ .../Curation#GraphCurationToken.json | 414 +++ .../artifacts/Curation#GraphProxy.json | 177 ++ .../artifacts/EpochManager#EpochManager.json | 364 +++ .../EpochManager#EpochManager_Instance.json | 364 +++ .../artifacts/EpochManager#GraphProxy.json | 177 ++ .../GraphHorizon_Periphery#Dummy.json | 10 + .../GraphPayments#GraphPayments.json | 308 +++ .../GraphPayments#GraphPayments_Instance.json | 308 +++ .../GraphProxyAdmin#GraphProxyAdmin.json | 234 ++ .../artifacts/GraphToken#GraphProxy.json | 177 ++ .../artifacts/GraphToken#GraphToken.json | 750 ++++++ .../GraphToken#GraphToken_Instance.json | 750 ++++++ .../GraphTokenGateway#GraphProxy.json | 177 ++ .../GraphTokenGateway#GraphTokenGateway.json | 647 +++++ ...kenGateway#GraphTokenGateway_Instance.json | 647 +++++ ...izonProxies#GraphProxy_HorizonStaking.json | 177 ++ ...zonProxies#OZProxyDummy_GraphPayments.json | 10 + ...onProxies#OZProxyDummy_PaymentsEscrow.json | 10 + ...rizonProxies#ProxyAdmin_GraphPayments.json | 132 + ...izonProxies#ProxyAdmin_PaymentsEscrow.json | 132 + .../HorizonProxies#RegisteredDummy.json | 10 + ...sparentUpgradeableProxy_GraphPayments.json | 116 + ...parentUpgradeableProxy_PaymentsEscrow.json | 116 + .../HorizonStaking#HorizonStaking.json | 2280 +++++++++++++++++ ...orizonStaking#HorizonStaking_Instance.json | 2280 +++++++++++++++++ ...onStakingExtension#ExponentialRebates.json | 55 + ...kingExtension#HorizonStakingExtension.json | 1263 +++++++++ .../PaymentsEscrow#PaymentsEscrow.json | 769 ++++++ ...aymentsEscrow#PaymentsEscrow_Instance.json | 769 ++++++ .../artifacts/RewardsManager#GraphProxy.json | 177 ++ .../RewardsManager#RewardsManager.json | 635 +++++ ...ewardsManager#RewardsManager_Instance.json | 635 +++++ .../artifacts/TAPCollector#TAPCollector.json | 450 ++++ .../chain-421614/deployed_addresses.json | 41 + .../deployments/chain-421614/journal.jsonl | 328 +++ packages/horizon/ignition/modules/core.ts | 15 + .../ignition/modules/core/GraphPayments.ts | 31 + .../ignition/modules/core/HorizonProxies.ts | 42 + .../ignition/modules/core/HorizonStaking.ts | 38 + .../modules/core/HorizonStakingExtension.ts | 26 + .../ignition/modules/core/PaymentsEscrow.ts | 32 + .../ignition/modules/core/TAPCollector.ts | 18 + packages/horizon/ignition/modules/horizon.ts | 31 + .../horizon/ignition/modules/periphery.ts | 57 + .../modules/periphery/BridgeEscrow.ts | 18 + .../ignition/modules/periphery/Controller.ts | 17 + .../ignition/modules/periphery/Curation.ts | 23 + .../modules/periphery/EpochManager.ts | 19 + .../modules/periphery/GraphProxyAdmin.ts | 13 + .../ignition/modules/periphery/GraphToken.ts | 33 + .../modules/periphery/GraphTokenGateway.ts | 22 + .../modules/periphery/RewardsManager.ts | 26 + .../ignition/modules/proxy/GraphProxy.ts | 36 + .../proxy/TransparentUpgradeableProxy.ts | 33 + packages/horizon/package.json | 13 +- packages/horizon/scripts/deploy.ts | 16 + packages/horizon/tsconfig.json | 1 + packages/subgraph-service/hardhat.config.ts | 2 +- .../configs/subgraph-service.hardhat.json | 13 + .../ignition/modules/DisputeManager.ts | 36 + .../ignition/modules/Proxies.ts | 10 + .../ignition/modules/SubgraphService.ts | 34 + packages/subgraph-service/package.json | 9 +- packages/subgraph-service/scripts/deploy.ts | 117 +- packages/subgraph-service/tsconfig.json | 5 +- yarn.lock | 234 +- 118 files changed, 37341 insertions(+), 69 deletions(-) create mode 100644 packages/horizon/contracts/mocks/Dummy.sol create mode 100644 packages/horizon/ignition/configs/horizon.hardhat.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/Controller#Controller.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphCurationToken.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphHorizon_Periphery#Dummy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphProxyAdmin#GraphProxyAdmin.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#RegisteredDummy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#ExponentialRebates.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#HorizonStakingExtension.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/artifacts/TAPCollector#TAPCollector.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/deployed_addresses.json create mode 100644 packages/horizon/ignition/deployments/chain-11155111/journal.jsonl create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/Controller#Controller.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphCurationToken.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphHorizon_Periphery#Dummy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphProxyAdmin#GraphProxyAdmin.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#RegisteredDummy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#ExponentialRebates.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#HorizonStakingExtension.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#GraphProxy.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager_Instance.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/artifacts/TAPCollector#TAPCollector.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/deployed_addresses.json create mode 100644 packages/horizon/ignition/deployments/chain-421614/journal.jsonl create mode 100644 packages/horizon/ignition/modules/core.ts create mode 100644 packages/horizon/ignition/modules/core/GraphPayments.ts create mode 100644 packages/horizon/ignition/modules/core/HorizonProxies.ts create mode 100644 packages/horizon/ignition/modules/core/HorizonStaking.ts create mode 100644 packages/horizon/ignition/modules/core/HorizonStakingExtension.ts create mode 100644 packages/horizon/ignition/modules/core/PaymentsEscrow.ts create mode 100644 packages/horizon/ignition/modules/core/TAPCollector.ts create mode 100644 packages/horizon/ignition/modules/horizon.ts create mode 100644 packages/horizon/ignition/modules/periphery.ts create mode 100644 packages/horizon/ignition/modules/periphery/BridgeEscrow.ts create mode 100644 packages/horizon/ignition/modules/periphery/Controller.ts create mode 100644 packages/horizon/ignition/modules/periphery/Curation.ts create mode 100644 packages/horizon/ignition/modules/periphery/EpochManager.ts create mode 100644 packages/horizon/ignition/modules/periphery/GraphProxyAdmin.ts create mode 100644 packages/horizon/ignition/modules/periphery/GraphToken.ts create mode 100644 packages/horizon/ignition/modules/periphery/GraphTokenGateway.ts create mode 100644 packages/horizon/ignition/modules/periphery/RewardsManager.ts create mode 100644 packages/horizon/ignition/modules/proxy/GraphProxy.ts create mode 100644 packages/horizon/ignition/modules/proxy/TransparentUpgradeableProxy.ts create mode 100644 packages/horizon/scripts/deploy.ts create mode 100644 packages/subgraph-service/ignition/configs/subgraph-service.hardhat.json create mode 100644 packages/subgraph-service/ignition/modules/DisputeManager.ts create mode 100644 packages/subgraph-service/ignition/modules/Proxies.ts create mode 100644 packages/subgraph-service/ignition/modules/SubgraphService.ts diff --git a/.gitignore b/.gitignore index 55602edb4..01a1de8c7 100644 --- a/.gitignore +++ b/.gitignore @@ -54,3 +54,7 @@ cache_forge tx-builder-*.json !tx-builder-template.json + +# Hardhat Ignition +**/chain-31337/ +!**/ignition/**/artifacts/ diff --git a/packages/horizon/README.md b/packages/horizon/README.md index 7be82e5d6..d3a0d6200 100644 --- a/packages/horizon/README.md +++ b/packages/horizon/README.md @@ -1,13 +1,17 @@ -# Sample Hardhat Project +# 🌅 Graph Horizon 🌅 -This project demonstrates a basic Hardhat use case. It comes with a sample contract, a test for that contract, and a script that deploys that contract. +Graph Horizon is the next evolution of the Graph Protocol. -Try running some of the following tasks: +## Deployment -```shell -npx hardhat help -npx hardhat test -REPORT_GAS=true npx hardhat test -npx hardhat node -npx hardhat run scripts/deploy.ts +We use Hardhat Ignition to deploy the contracts. To build and deploy the contracts run the following commands: + +```bash +yarn install +yarn build +npx hardhat ignition deploy ./ignition/modules/horizon.ts \ + --parameters ./ignition/configs/graph.hardhat.json \ + --network hardhat ``` + +You can use any network defined in `hardhat.config.ts` by replacing `hardhat` with the network name. \ No newline at end of file diff --git a/packages/horizon/contracts/mocks/Dummy.sol b/packages/horizon/contracts/mocks/Dummy.sol new file mode 100644 index 000000000..e6a575d0f --- /dev/null +++ b/packages/horizon/contracts/mocks/Dummy.sol @@ -0,0 +1,5 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +pragma solidity 0.8.27; + +contract Dummy {} diff --git a/packages/horizon/hardhat.config.ts b/packages/horizon/hardhat.config.ts index de221c723..57f1d8f89 100644 --- a/packages/horizon/hardhat.config.ts +++ b/packages/horizon/hardhat.config.ts @@ -1,5 +1,6 @@ import '@nomicfoundation/hardhat-foundry' import '@nomicfoundation/hardhat-toolbox' +import '@nomicfoundation/hardhat-ignition-ethers' import 'hardhat-storage-layout' import 'hardhat-contract-sizer' @@ -19,6 +20,34 @@ const config: HardhatUserConfig = { artifacts: './build/contracts', sources: './contracts', }, + networks: { + hardhat: { + accounts: { + mnemonic: 'myth like bonus scare over problem client lizard pioneer submit female collect', + }, + }, + arbitrumSepolia: { + url: 'https://sepolia-rollup.arbitrum.io/rpc', + accounts: { + mnemonic: process.env.MNEMONIC ?? '', + }, + }, + }, + etherscan: { + apiKey: { + arbitrumSepolia: process.env.ETHERSCAN_API_KEY ?? '', + }, + customChains: [ + { + network: 'arbitrumSepolia', + chainId: 421614, + urls: { + apiURL: 'https://api-sepolia.arbiscan.io/api', + browserURL: 'https://sepolia.arbiscan.io/', + }, + }, + ], + }, } export default config diff --git a/packages/horizon/ignition/configs/horizon.hardhat.json b/packages/horizon/ignition/configs/horizon.hardhat.json new file mode 100644 index 000000000..894a2ed59 --- /dev/null +++ b/packages/horizon/ignition/configs/horizon.hardhat.json @@ -0,0 +1,46 @@ +{ + "GraphProxyAdmin": { + "governor": "0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0" + }, + "Controller": { + "governor": "0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0", + "pauseGuardian": "0x95cED938F7991cd0dFcb48F0a06a40FA1aF46EBC" + }, + "RewardsManager": { + "subgraphAvailabilityOracle": "0xd03ea8624C8C5987235048901fB614fDcA89b117", + "issuancePerBlock": "114155251141552511415n", + "subgraphServiceAddress": "0x0000000000000000000000000000000000000000" + }, + "EpochManager": { + "epochLength": 60 + }, + "GraphTokenGateway": { + "pauseGuardian": "0x95cED938F7991cd0dFcb48F0a06a40FA1aF46EBC" + }, + "Curation": { + "curationTaxPercentage": 10000, + "minimumCurationDeposit": 1 + }, + "GraphToken": { + "initialSupply": "10000000000000000000000000000n", + "governor": "0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0" + }, + "HorizonStaking": { + "subgraphServiceAddress": "0x0000000000000000000000000000000000000000", + "maxThawingPeriod": 2419200 + }, + "HorizonStakingExtension": { + "subgraphServiceAddress": "0x0000000000000000000000000000000000000000" + }, + "GraphPayments": { + "protocolPaymentCut": 10000 + }, + "PaymentsEscrow": { + "revokeCollectorThawingPeriod": 10000, + "withdrawEscrowThawingPeriod": 10000 + }, + "TAPCollector": { + "eip712Name": "TAPCollector", + "eip712Version": "1" + } +} diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow.json new file mode 100644 index 000000000..3e87653d9 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow.json @@ -0,0 +1,159 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "BridgeEscrow", + "sourceName": "contracts/gateway/BridgeEscrow.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "approveAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "revokeAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051610c376101696000398061071f5250806106f65250806106cd528061089e5250806106a452508061067b5250806106525250806106295250610c376000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow_Instance.json new file mode 100644 index 000000000..3e87653d9 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#BridgeEscrow_Instance.json @@ -0,0 +1,159 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "BridgeEscrow", + "sourceName": "contracts/gateway/BridgeEscrow.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "approveAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "revokeAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051610c376101696000398061071f5250806106f65250806106cd528061089e5250806106a452508061067b5250806106525250806106295250610c376000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#GraphProxy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/BridgeEscrow#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/Controller#Controller.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Controller#Controller.json new file mode 100644 index 000000000..c74445ff4 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Controller#Controller.json @@ -0,0 +1,349 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Controller", + "sourceName": "contracts/governance/Controller.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPauseGuardian", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "pauseGuardian", + "type": "address" + } + ], + "name": "NewPauseGuardian", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PartialPauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "SetContractProxy", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + } + ], + "name": "getContractProxy", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPausePartialTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPauseTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "partialPaused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_contractAddress", + "type": "address" + } + ], + "name": "setContractProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_toPause", + "type": "bool" + } + ], + "name": "setPartialPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newPauseGuardian", + "type": "address" + } + ], + "name": "setPauseGuardian", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_toPause", + "type": "bool" + } + ], + "name": "setPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + } + ], + "name": "unsetContractProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "updateController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506100243361003360201b6109b21760201c565b61002e6001610055565b6100e7565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff1615158115151415610075576100e4565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff910416156100a157426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a15b50565b610ba0806100f66000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80636cda3798116100a2578063e0e9929211610071578063e0e9929214610215578063e3056a3414610241578063eb5dd94f14610249578063f2fde38b14610275578063f7641a5e1461029b5761010b565b80636cda3798146101ce57806379ba5097146101e85780639181df9c146101f057806391b4ded91461020d5761010b565b806348bde20c116100de57806348bde20c146101795780634fc07d751461019f57806356371bd8146101a75780635c975abb146101c65761010b565b80630c340a241461011057806316c38b3c1461013457806324a3d622146101555780632e292fc71461015d575b600080fd5b6101186102b8565b604080516001600160a01b039092168252519081900360200190f35b6101536004803603602081101561014a57600080fd5b503515156102c7565b005b610118610331565b610165610340565b604080519115158252519081900360200190f35b6101536004803603602081101561018f57600080fd5b50356001600160a01b0316610350565b61011861040c565b610153600480360360208110156101bd57600080fd5b5035151561041b565b610165610482565b6101d6610492565b60408051918252519081900360200190f35b610153610498565b6101536004803603602081101561020657600080fd5b50356105a6565b6101d6610651565b6101536004803603604081101561022b57600080fd5b50803590602001356001600160a01b0316610657565b61011861076e565b6101536004803603604081101561025f57600080fd5b50803590602001356001600160a01b031661077d565b6101536004803603602081101561028b57600080fd5b50356001600160a01b0316610899565b610118600480360360208110156102b157600080fd5b5035610997565b6000546001600160a01b031681565b6000546001600160a01b03163314806102ea57506004546001600160a01b031633145b6103255760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e816109d4565b50565b6004546001600160a01b031681565b600154600160a01b900460ff1690565b6000546001600160a01b031633146103a8576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610403576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b61032e81610a65565b6000546001600160a01b031690565b6000546001600160a01b031633148061043e57506004546001600160a01b031633145b6104795760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e81610ab7565b600154600160a81b900460ff1690565b60025481565b6001546001600160a01b031680158015906104bb5750336001600160a01b038216145b61050c576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b600081815260056020908152604080832080546001600160a01b031916905580519283525183927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a250565b60035481565b6000546001600160a01b031633146106af576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661070a576040805162461bcd60e51b815260206004820152601c60248201527f436f6e74726163742061646472657373206d7573742062652073657400000000604482015290519081900360640190fd5b60008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a25050565b6001546001600160a01b031681565b6000546001600160a01b031633146107d5576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610829576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b6000828152600560205260408082205481516392eefe9b60e01b81526001600160a01b038581166004830152925192909116926392eefe9b9260248084019382900301818387803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031633146108f1576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610943576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000908152600560205260409020546001600160a01b031690565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff16151581151514156109f45761032e565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff91041615610a2057426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b600160149054906101000a900460ff1615158115151415610ad75761032e565b6001805460ff60a01b1916600160a01b8315158102919091179182905560ff91041615610b0357426002555b60015460408051600160a01b90920460ff1615158252517f511b770d1b1dc5cbd412a5017f55cbb2295b826385e5f46c1de2b6ebeb44ae02916020908290030190a15056fe4f6e6c7920476f7665726e6f72206f7220477561726469616e2063616e2063616c6ca2646970667358221220c742dbbf8f38fda928d26053c584788bb7d7b003131594b9e14f1381ebbdbb3064736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80636cda3798116100a2578063e0e9929211610071578063e0e9929214610215578063e3056a3414610241578063eb5dd94f14610249578063f2fde38b14610275578063f7641a5e1461029b5761010b565b80636cda3798146101ce57806379ba5097146101e85780639181df9c146101f057806391b4ded91461020d5761010b565b806348bde20c116100de57806348bde20c146101795780634fc07d751461019f57806356371bd8146101a75780635c975abb146101c65761010b565b80630c340a241461011057806316c38b3c1461013457806324a3d622146101555780632e292fc71461015d575b600080fd5b6101186102b8565b604080516001600160a01b039092168252519081900360200190f35b6101536004803603602081101561014a57600080fd5b503515156102c7565b005b610118610331565b610165610340565b604080519115158252519081900360200190f35b6101536004803603602081101561018f57600080fd5b50356001600160a01b0316610350565b61011861040c565b610153600480360360208110156101bd57600080fd5b5035151561041b565b610165610482565b6101d6610492565b60408051918252519081900360200190f35b610153610498565b6101536004803603602081101561020657600080fd5b50356105a6565b6101d6610651565b6101536004803603604081101561022b57600080fd5b50803590602001356001600160a01b0316610657565b61011861076e565b6101536004803603604081101561025f57600080fd5b50803590602001356001600160a01b031661077d565b6101536004803603602081101561028b57600080fd5b50356001600160a01b0316610899565b610118600480360360208110156102b157600080fd5b5035610997565b6000546001600160a01b031681565b6000546001600160a01b03163314806102ea57506004546001600160a01b031633145b6103255760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e816109d4565b50565b6004546001600160a01b031681565b600154600160a01b900460ff1690565b6000546001600160a01b031633146103a8576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610403576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b61032e81610a65565b6000546001600160a01b031690565b6000546001600160a01b031633148061043e57506004546001600160a01b031633145b6104795760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e81610ab7565b600154600160a81b900460ff1690565b60025481565b6001546001600160a01b031680158015906104bb5750336001600160a01b038216145b61050c576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b600081815260056020908152604080832080546001600160a01b031916905580519283525183927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a250565b60035481565b6000546001600160a01b031633146106af576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661070a576040805162461bcd60e51b815260206004820152601c60248201527f436f6e74726163742061646472657373206d7573742062652073657400000000604482015290519081900360640190fd5b60008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a25050565b6001546001600160a01b031681565b6000546001600160a01b031633146107d5576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610829576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b6000828152600560205260408082205481516392eefe9b60e01b81526001600160a01b038581166004830152925192909116926392eefe9b9260248084019382900301818387803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031633146108f1576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610943576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000908152600560205260409020546001600160a01b031690565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff16151581151514156109f45761032e565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff91041615610a2057426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b600160149054906101000a900460ff1615158115151415610ad75761032e565b6001805460ff60a01b1916600160a01b8315158102919091179182905560ff91041615610b0357426002555b60015460408051600160a01b90920460ff1615158252517f511b770d1b1dc5cbd412a5017f55cbb2295b826385e5f46c1de2b6ebeb44ae02916020908290030190a15056fe4f6e6c7920476f7665726e6f72206f7220477561726469616e2063616e2063616c6ca2646970667358221220c742dbbf8f38fda928d26053c584788bb7d7b003131594b9e14f1381ebbdbb3064736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation.json new file mode 100644 index 000000000..f9d96cee6 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation.json @@ -0,0 +1,707 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2Curation", + "sourceName": "contracts/l2/curation/L2Curation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + } + ], + "name": "Burned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Collected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "curationTax", + "type": "uint256" + } + ], + "name": "Signalled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "bondingCurve", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_tokensOutMin", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTaxPercentage", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTokenMaster", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "defaultReserveRatio", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curator", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCuratorSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_curationTaxPercentage", + "type": "uint32" + }, + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isCurated", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumCurationDeposit", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_signalOutMin", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "mintTaxFree", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "pools", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "reserveRatio", + "type": "uint32" + }, + { + "internalType": "contract IGraphCurationToken", + "name": "gcs", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_percentage", + "type": "uint32" + } + ], + "name": "setCurationTaxPercentage", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + } + ], + "name": "setCurationTokenMaster", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "name": "setDefaultReserveRatio", + "outputs": [], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "setMinimumCurationDeposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + } + ], + "name": "signalToTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalToTokensNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6101806040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea361014052613d0960e61b6101605234801561011a57600080fd5b5060805160a05160c05160e0516101005161012051610140516101605160e01c6128cc61018f60003980610c2f52508061141b52806119025250806113f25250806113c9528061180c5250806113a05280611dbf5250806113775280611ff252508061134e52508061132552506128cc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation_Instance.json new file mode 100644 index 000000000..f9d96cee6 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#Curation_Instance.json @@ -0,0 +1,707 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2Curation", + "sourceName": "contracts/l2/curation/L2Curation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + } + ], + "name": "Burned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Collected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "curationTax", + "type": "uint256" + } + ], + "name": "Signalled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "bondingCurve", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_tokensOutMin", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTaxPercentage", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTokenMaster", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "defaultReserveRatio", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curator", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCuratorSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_curationTaxPercentage", + "type": "uint32" + }, + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isCurated", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumCurationDeposit", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_signalOutMin", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "mintTaxFree", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "pools", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "reserveRatio", + "type": "uint32" + }, + { + "internalType": "contract IGraphCurationToken", + "name": "gcs", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_percentage", + "type": "uint32" + } + ], + "name": "setCurationTaxPercentage", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + } + ], + "name": "setCurationTokenMaster", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "name": "setDefaultReserveRatio", + "outputs": [], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "setMinimumCurationDeposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + } + ], + "name": "signalToTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalToTokensNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6101806040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea361014052613d0960e61b6101605234801561011a57600080fd5b5060805160a05160c05160e0516101005161012051610140516101605160e01c6128cc61018f60003980610c2f52508061141b52806119025250806113f25250806113c9528061180c5250806113a05280611dbf5250806113775280611ff252508061134e52508061132552506128cc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphCurationToken.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphCurationToken.json new file mode 100644 index 000000000..b7220dcc7 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphCurationToken.json @@ -0,0 +1,414 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphCurationToken", + "sourceName": "contracts/curation/GraphCurationToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506114ec806100206000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806379ba5097116100a2578063a9059cbb11610071578063a9059cbb14610352578063c4d66de81461037e578063dd62ed3e146103a4578063e3056a34146103d2578063f2fde38b146103da57610116565b806379ba5097146102ea57806379cc6790146102f257806395d89b411461031e578063a457c2d71461032657610116565b806323b872dd116100e957806323b872dd14610216578063313ce5671461024c578063395093511461026a57806340c10f191461029657806370a08231146102c457610116565b806306fdde031461011b578063095ea7b3146101985780630c340a24146101d857806318160ddd146101fc575b600080fd5b610123610400565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b038135169060200135610496565b604080519115158252519081900360200190f35b6101e06104b3565b604080516001600160a01b039092168252519081900360200190f35b6102046104c2565b60408051918252519081900360200190f35b6101c46004803603606081101561022c57600080fd5b506001600160a01b038135811691602081013590911690604001356104c8565b61025461054f565b6040805160ff9092168252519081900360200190f35b6101c46004803603604081101561028057600080fd5b506001600160a01b038135169060200135610558565b6102c2600480360360408110156102ac57600080fd5b506001600160a01b0381351690602001356105a6565b005b610204600480360360208110156102da57600080fd5b50356001600160a01b031661060c565b6102c2610627565b6102c26004803603604081101561030857600080fd5b506001600160a01b038135169060200135610737565b610123610799565b6101c46004803603604081101561033c57600080fd5b506001600160a01b0381351690602001356107fa565b6101c46004803603604081101561036857600080fd5b506001600160a01b038135169060200135610862565b6102c26004803603602081101561039457600080fd5b50356001600160a01b0316610876565b610204600480360360408110156103ba57600080fd5b506001600160a01b0381358116916020013516610972565b6101e061099d565b6102c2600480360360208110156103f057600080fd5b50356001600160a01b03166109ac565b60368054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b820191906000526020600020905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b60006104aa6104a3610aaa565b8484610aae565b50600192915050565b6065546001600160a01b031681565b60355490565b60006104d5848484610b9a565b610545846104e1610aaa565b61054085604051806060016040528060288152602001611400602891396001600160a01b038a1660009081526034602052604081209061051f610aaa565b6001600160a01b031681526020810191909152604001600020549190610cf7565b610aae565b5060019392505050565b60385460ff1690565b60006104aa610565610aaa565b846105408560346000610576610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610d8e565b6065546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610def565b5050565b6001600160a01b031660009081526033602052604090205490565b6066546001600160a01b0316801580159061064a5750336001600160a01b038216145b61069b576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b606580546001600160a01b038381166001600160a01b0319808416919091179384905560668054909116905560405191811692169082907f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f90600090a36066546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6065546001600160a01b0316331461078f576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610ee1565b60378054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b60006104aa610807610aaa565b84610540856040518060600160405280602581526020016114926025913960346000610831610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610cf7565b60006104aa61086f610aaa565b8484610b9a565b600054610100900460ff168061088f575061088f610fdd565b8061089d575060005460ff16155b6108d85760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015610903576000805460ff1961ff0019909116610100171660011790555b61090c82610fee565b61095d604051806040016040528060148152602001734772617068204375726174696f6e20536861726560601b8152506040518060400160405280600381526020016247435360e81b815250611010565b8015610608576000805461ff00191690555050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6066546001600160a01b031681565b6065546001600160a01b03163314610a04576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610a56576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b606680546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b038316610af35760405162461bcd60e51b815260040180806020018281038252602481526020018061146e6024913960400191505060405180910390fd5b6001600160a01b038216610b385760405162461bcd60e51b815260040180806020018281038252602281526020018061138a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260346020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610bdf5760405162461bcd60e51b81526004018080602001828103825260258152602001806114496025913960400191505060405180910390fd5b6001600160a01b038216610c245760405162461bcd60e51b81526004018080602001828103825260238152602001806113456023913960400191505060405180910390fd5b610c2f8383836110c1565b610c6c816040518060600160405280602681526020016113ac602691396001600160a01b0386166000908152603360205260409020549190610cf7565b6001600160a01b038085166000908152603360205260408082209390935590841681522054610c9b9082610d8e565b6001600160a01b0380841660008181526033602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d865760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d4b578181015183820152602001610d33565b50505050905090810190601f168015610d785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610e4a576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610e56600083836110c1565b603554610e639082610d8e565b6035556001600160a01b038216600090815260336020526040902054610e899082610d8e565b6001600160a01b03831660008181526033602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610f265760405162461bcd60e51b81526004018080602001828103825260218152602001806114286021913960400191505060405180910390fd5b610f32826000836110c1565b610f6f81604051806060016040528060228152602001611368602291396001600160a01b0385166000908152603360205260409020549190610cf7565b6001600160a01b038316600090815260336020526040902055603554610f9590826110c6565b6035556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6000610fe830611123565b15905090565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110295750611029610fdd565b80611037575060005460ff16155b6110725760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff1615801561109d576000805460ff1961ff0019909116610100171660011790555b6110a5611129565b6110af83836111cb565b80156110c1576000805461ff00191690555b505050565b60008282111561111d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600054610100900460ff16806111425750611142610fdd565b80611150575060005460ff16155b61118b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff161580156111b6576000805460ff1961ff0019909116610100171660011790555b80156111c8576000805461ff00191690555b50565b600054610100900460ff16806111e457506111e4610fdd565b806111f2575060005460ff16155b61122d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015611258576000805460ff1961ff0019909116610100171660011790555b825161126b9060369060208601906112a3565b50815161127f9060379060208501906112a3565b506038805460ff1916601217905580156110c1576000805461ff0019169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826112d9576000855561131f565b82601f106112f257805160ff191683800117855561131f565b8280016001018555821561131f579182015b8281111561131f578251825591602001919060010190611304565b5061132b92915061132f565b5090565b5b8082111561132b576000815560010161133056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200b687fddcd01dbad6e1d5fbd49cb041f69ed61684a12a4c26c6e37e0f5ad7c2a64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101165760003560e01c806379ba5097116100a2578063a9059cbb11610071578063a9059cbb14610352578063c4d66de81461037e578063dd62ed3e146103a4578063e3056a34146103d2578063f2fde38b146103da57610116565b806379ba5097146102ea57806379cc6790146102f257806395d89b411461031e578063a457c2d71461032657610116565b806323b872dd116100e957806323b872dd14610216578063313ce5671461024c578063395093511461026a57806340c10f191461029657806370a08231146102c457610116565b806306fdde031461011b578063095ea7b3146101985780630c340a24146101d857806318160ddd146101fc575b600080fd5b610123610400565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b038135169060200135610496565b604080519115158252519081900360200190f35b6101e06104b3565b604080516001600160a01b039092168252519081900360200190f35b6102046104c2565b60408051918252519081900360200190f35b6101c46004803603606081101561022c57600080fd5b506001600160a01b038135811691602081013590911690604001356104c8565b61025461054f565b6040805160ff9092168252519081900360200190f35b6101c46004803603604081101561028057600080fd5b506001600160a01b038135169060200135610558565b6102c2600480360360408110156102ac57600080fd5b506001600160a01b0381351690602001356105a6565b005b610204600480360360208110156102da57600080fd5b50356001600160a01b031661060c565b6102c2610627565b6102c26004803603604081101561030857600080fd5b506001600160a01b038135169060200135610737565b610123610799565b6101c46004803603604081101561033c57600080fd5b506001600160a01b0381351690602001356107fa565b6101c46004803603604081101561036857600080fd5b506001600160a01b038135169060200135610862565b6102c26004803603602081101561039457600080fd5b50356001600160a01b0316610876565b610204600480360360408110156103ba57600080fd5b506001600160a01b0381358116916020013516610972565b6101e061099d565b6102c2600480360360208110156103f057600080fd5b50356001600160a01b03166109ac565b60368054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b820191906000526020600020905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b60006104aa6104a3610aaa565b8484610aae565b50600192915050565b6065546001600160a01b031681565b60355490565b60006104d5848484610b9a565b610545846104e1610aaa565b61054085604051806060016040528060288152602001611400602891396001600160a01b038a1660009081526034602052604081209061051f610aaa565b6001600160a01b031681526020810191909152604001600020549190610cf7565b610aae565b5060019392505050565b60385460ff1690565b60006104aa610565610aaa565b846105408560346000610576610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610d8e565b6065546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610def565b5050565b6001600160a01b031660009081526033602052604090205490565b6066546001600160a01b0316801580159061064a5750336001600160a01b038216145b61069b576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b606580546001600160a01b038381166001600160a01b0319808416919091179384905560668054909116905560405191811692169082907f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f90600090a36066546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6065546001600160a01b0316331461078f576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610ee1565b60378054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b60006104aa610807610aaa565b84610540856040518060600160405280602581526020016114926025913960346000610831610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610cf7565b60006104aa61086f610aaa565b8484610b9a565b600054610100900460ff168061088f575061088f610fdd565b8061089d575060005460ff16155b6108d85760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015610903576000805460ff1961ff0019909116610100171660011790555b61090c82610fee565b61095d604051806040016040528060148152602001734772617068204375726174696f6e20536861726560601b8152506040518060400160405280600381526020016247435360e81b815250611010565b8015610608576000805461ff00191690555050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6066546001600160a01b031681565b6065546001600160a01b03163314610a04576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610a56576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b606680546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b038316610af35760405162461bcd60e51b815260040180806020018281038252602481526020018061146e6024913960400191505060405180910390fd5b6001600160a01b038216610b385760405162461bcd60e51b815260040180806020018281038252602281526020018061138a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260346020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610bdf5760405162461bcd60e51b81526004018080602001828103825260258152602001806114496025913960400191505060405180910390fd5b6001600160a01b038216610c245760405162461bcd60e51b81526004018080602001828103825260238152602001806113456023913960400191505060405180910390fd5b610c2f8383836110c1565b610c6c816040518060600160405280602681526020016113ac602691396001600160a01b0386166000908152603360205260409020549190610cf7565b6001600160a01b038085166000908152603360205260408082209390935590841681522054610c9b9082610d8e565b6001600160a01b0380841660008181526033602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d865760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d4b578181015183820152602001610d33565b50505050905090810190601f168015610d785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610e4a576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610e56600083836110c1565b603554610e639082610d8e565b6035556001600160a01b038216600090815260336020526040902054610e899082610d8e565b6001600160a01b03831660008181526033602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610f265760405162461bcd60e51b81526004018080602001828103825260218152602001806114286021913960400191505060405180910390fd5b610f32826000836110c1565b610f6f81604051806060016040528060228152602001611368602291396001600160a01b0385166000908152603360205260409020549190610cf7565b6001600160a01b038316600090815260336020526040902055603554610f9590826110c6565b6035556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6000610fe830611123565b15905090565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110295750611029610fdd565b80611037575060005460ff16155b6110725760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff1615801561109d576000805460ff1961ff0019909116610100171660011790555b6110a5611129565b6110af83836111cb565b80156110c1576000805461ff00191690555b505050565b60008282111561111d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600054610100900460ff16806111425750611142610fdd565b80611150575060005460ff16155b61118b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff161580156111b6576000805460ff1961ff0019909116610100171660011790555b80156111c8576000805461ff00191690555b50565b600054610100900460ff16806111e457506111e4610fdd565b806111f2575060005460ff16155b61122d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015611258576000805460ff1961ff0019909116610100171660011790555b825161126b9060369060208601906112a3565b50815161127f9060379060208501906112a3565b506038805460ff1916601217905580156110c1576000805461ff0019169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826112d9576000855561131f565b82601f106112f257805160ff191683800117855561131f565b8280016001018555821561131f579182015b8281111561131f578251825591602001919060010190611304565b5061132b92915061132f565b5090565b5b8082111561132b576000815560010161133056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200b687fddcd01dbad6e1d5fbd49cb041f69ed61684a12a4c26c6e37e0f5ad7c2a64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphProxy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/Curation#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager.json new file mode 100644 index 000000000..cd09f36f8 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager.json @@ -0,0 +1,364 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "EpochManager", + "sourceName": "contracts/epochs/EpochManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epochLength", + "type": "uint256" + } + ], + "name": "EpochLengthUpdate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "caller", + "type": "address" + } + ], + "name": "EpochRun", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_block", + "type": "uint256" + } + ], + "name": "blockHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "blockNum", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlockSinceStart", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epoch", + "type": "uint256" + } + ], + "name": "epochsSince", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochsSinceUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isCurrentEpochRun", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastRunEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "runEpoch", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "setEpochLength", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161103461016460003980610aac525080610a83525080610a5a525080610a31525080610a085250806109df5250806109b652506110346000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager_Instance.json new file mode 100644 index 000000000..cd09f36f8 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#EpochManager_Instance.json @@ -0,0 +1,364 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "EpochManager", + "sourceName": "contracts/epochs/EpochManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epochLength", + "type": "uint256" + } + ], + "name": "EpochLengthUpdate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "caller", + "type": "address" + } + ], + "name": "EpochRun", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_block", + "type": "uint256" + } + ], + "name": "blockHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "blockNum", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlockSinceStart", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epoch", + "type": "uint256" + } + ], + "name": "epochsSince", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochsSinceUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isCurrentEpochRun", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastRunEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "runEpoch", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "setEpochLength", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161103461016460003980610aac525080610a83525080610a5a525080610a31525080610a085250806109df5250806109b652506110346000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#GraphProxy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/EpochManager#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphHorizon_Periphery#Dummy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphHorizon_Periphery#Dummy.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphHorizon_Periphery#Dummy.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments.json new file mode 100644 index 000000000..d9b94acde --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments.json @@ -0,0 +1,308 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphPayments", + "sourceName": "contracts/payments/GraphPayments.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "GraphPaymentsInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "name": "GraphPaymentsInvalidProtocolPaymentCut", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensReceiver", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDelegationPool", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensProtocol", + "type": "uint256" + } + ], + "name": "PaymentCollected", + "type": "event" + }, + { + "inputs": [], + "name": "PROTOCOL_PAYMENT_CUT", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101e060405234801561001157600080fd5b5060405161132f38038061132f833981016040819052610030916104ee565b816001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b290610372565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e590610372565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e90610372565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015890610372565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019090610372565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb90610372565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020990610372565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024590610372565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a90610372565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a45061033a81620f4240101590565b819061035c5760405163d3097bcb60e01b815260040161007191815260200190565b506101c081905261036b610420565b505061058a565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103ad91815260200190565b602060405180830381865afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee919061051a565b9050826001600160a01b0382166104195760405163218f5add60e11b8152600401610071919061053c565b5092915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156104705760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146104cf5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b80516001600160a01b03811681146104e957600080fd5b919050565b6000806040838503121561050157600080fd5b61050a836104d2565b9150602083015190509250929050565b60006020828403121561052c57600080fd5b610535826104d2565b9392505050565b602081526000825180602084015260005b8181101561056a576020818601810151604086840101520161054d565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c051610d086106276000396000818160560152610104015260005050600050506000505060005050600050506000505060005050600050506000818161012e015281816102c1015261035401526000818160d5015281816102220152818161025a0152818161029201526103f50152610d086000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments_Instance.json new file mode 100644 index 000000000..d9b94acde --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphPayments#GraphPayments_Instance.json @@ -0,0 +1,308 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphPayments", + "sourceName": "contracts/payments/GraphPayments.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "GraphPaymentsInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "name": "GraphPaymentsInvalidProtocolPaymentCut", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensReceiver", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDelegationPool", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensProtocol", + "type": "uint256" + } + ], + "name": "PaymentCollected", + "type": "event" + }, + { + "inputs": [], + "name": "PROTOCOL_PAYMENT_CUT", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101e060405234801561001157600080fd5b5060405161132f38038061132f833981016040819052610030916104ee565b816001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b290610372565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e590610372565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e90610372565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015890610372565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019090610372565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb90610372565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020990610372565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024590610372565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a90610372565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a45061033a81620f4240101590565b819061035c5760405163d3097bcb60e01b815260040161007191815260200190565b506101c081905261036b610420565b505061058a565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103ad91815260200190565b602060405180830381865afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee919061051a565b9050826001600160a01b0382166104195760405163218f5add60e11b8152600401610071919061053c565b5092915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156104705760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146104cf5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b80516001600160a01b03811681146104e957600080fd5b919050565b6000806040838503121561050157600080fd5b61050a836104d2565b9150602083015190509250929050565b60006020828403121561052c57600080fd5b610535826104d2565b9392505050565b602081526000825180602084015260005b8181101561056a576020818601810151604086840101520161054d565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c051610d086106276000396000818160560152610104015260005050600050506000505060005050600050506000505060005050600050506000818161012e015281816102c1015261035401526000818160d5015281816102220152818161025a0152818161029201526103f50152610d086000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphProxyAdmin#GraphProxyAdmin.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphProxyAdmin#GraphProxyAdmin.json new file mode 100644 index 000000000..07f0623c5 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphProxyAdmin#GraphProxyAdmin.json @@ -0,0 +1,234 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxyAdmin", + "sourceName": "contracts/upgrades/GraphProxyAdmin.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract GraphUpgradeable", + "name": "_implementation", + "type": "address" + }, + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract GraphUpgradeable", + "name": "_implementation", + "type": "address" + }, + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "changeProxyAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "getProxyAdmin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "getProxyImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "getProxyPendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "_implementation", + "type": "address" + } + ], + "name": "upgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506100243361002960201b610a0c1760201c565b61004b565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b610a648061005a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80637eff275e116100715780637eff275e146101b157806399a88ec4146101df578063e3056a341461020d578063eb451a0214610215578063f2fde38b14610243578063f3b7dead14610269576100a9565b806307ebde0e146100ae5780630c340a2414610139578063204e1c7a1461015d5780635bf410eb1461018357806379ba5097146101a9575b600080fd5b610137600480360360608110156100c457600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156100f857600080fd5b82018360208201111561010a57600080fd5b8035906020019184600183028401116401000000008311171561012c57600080fd5b50909250905061028f565b005b610141610388565b604080516001600160a01b039092168252519081900360200190f35b6101416004803603602081101561017357600080fd5b50356001600160a01b0316610397565b6101416004803603602081101561019957600080fd5b50356001600160a01b031661046a565b610137610525565b610137600480360360408110156101c757600080fd5b506001600160a01b0381358116916020013516610633565b610137600480360360408110156101f557600080fd5b506001600160a01b03813581169160200135166106f6565b61014161079d565b6101376004803603604081101561022b57600080fd5b506001600160a01b03813581169160200135166107ac565b6101376004803603602081101561025957600080fd5b50356001600160a01b0316610853565b6101416004803603602081101561027f57600080fd5b50356001600160a01b0316610951565b6000546001600160a01b031633146102e7576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b836001600160a01b0316639ce7abe58484846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001806020018281038252848482818152602001925080828437600081840152601f19601f820116905080830192505050945050505050600060405180830381600087803b15801561036a57600080fd5b505af115801561037e573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031681565b6000806000836001600160a01b03166040518080635c60da1b60e01b8152506004019050600060405180830381855afa9150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b50915091508161044b576040805162461bcd60e51b8152602060048201526016602482015275141c9bde1e481a5b5c1b0818d85b1b0819985a5b195960521b604482015290519081900360640190fd5b80806020019051602081101561046057600080fd5b5051949350505050565b6000806000836001600160a01b0316604051808063396f7b2360e01b8152506004019050600060405180830381855afa9150503d80600081146104c9576040519150601f19603f3d011682016040523d82523d6000602084013e6104ce565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601d60248201527f50726f78792070656e64696e67496d706c2063616c6c206661696c6564000000604482015290519081900360640190fd5b6001546001600160a01b031680158015906105485750336001600160a01b038216145b610599576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b0316331461068b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663704b6c02826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b505050505050565b6000546001600160a01b0316331461074e576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b0316633659cfe6826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6001546001600160a01b031681565b6000546001600160a01b03163314610804576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663a2594d82826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6000546001600160a01b031633146108ab576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b0381166108fd576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000806000836001600160a01b031660405180806303e1469160e61b8152506004019050600060405180830381855afa9150503d80600081146109b0576040519150601f19603f3d011682016040523d82523d6000602084013e6109b5565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601760248201527f50726f78792061646d696e2063616c6c206661696c6564000000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b039290921691909117905556fea26469706673582212208b271ee4c7625d89f662c15e90f70e142245bf56f0595043fe9af742b09d958c64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80637eff275e116100715780637eff275e146101b157806399a88ec4146101df578063e3056a341461020d578063eb451a0214610215578063f2fde38b14610243578063f3b7dead14610269576100a9565b806307ebde0e146100ae5780630c340a2414610139578063204e1c7a1461015d5780635bf410eb1461018357806379ba5097146101a9575b600080fd5b610137600480360360608110156100c457600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156100f857600080fd5b82018360208201111561010a57600080fd5b8035906020019184600183028401116401000000008311171561012c57600080fd5b50909250905061028f565b005b610141610388565b604080516001600160a01b039092168252519081900360200190f35b6101416004803603602081101561017357600080fd5b50356001600160a01b0316610397565b6101416004803603602081101561019957600080fd5b50356001600160a01b031661046a565b610137610525565b610137600480360360408110156101c757600080fd5b506001600160a01b0381358116916020013516610633565b610137600480360360408110156101f557600080fd5b506001600160a01b03813581169160200135166106f6565b61014161079d565b6101376004803603604081101561022b57600080fd5b506001600160a01b03813581169160200135166107ac565b6101376004803603602081101561025957600080fd5b50356001600160a01b0316610853565b6101416004803603602081101561027f57600080fd5b50356001600160a01b0316610951565b6000546001600160a01b031633146102e7576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b836001600160a01b0316639ce7abe58484846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001806020018281038252848482818152602001925080828437600081840152601f19601f820116905080830192505050945050505050600060405180830381600087803b15801561036a57600080fd5b505af115801561037e573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031681565b6000806000836001600160a01b03166040518080635c60da1b60e01b8152506004019050600060405180830381855afa9150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b50915091508161044b576040805162461bcd60e51b8152602060048201526016602482015275141c9bde1e481a5b5c1b0818d85b1b0819985a5b195960521b604482015290519081900360640190fd5b80806020019051602081101561046057600080fd5b5051949350505050565b6000806000836001600160a01b0316604051808063396f7b2360e01b8152506004019050600060405180830381855afa9150503d80600081146104c9576040519150601f19603f3d011682016040523d82523d6000602084013e6104ce565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601d60248201527f50726f78792070656e64696e67496d706c2063616c6c206661696c6564000000604482015290519081900360640190fd5b6001546001600160a01b031680158015906105485750336001600160a01b038216145b610599576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b0316331461068b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663704b6c02826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b505050505050565b6000546001600160a01b0316331461074e576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b0316633659cfe6826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6001546001600160a01b031681565b6000546001600160a01b03163314610804576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663a2594d82826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6000546001600160a01b031633146108ab576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b0381166108fd576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000806000836001600160a01b031660405180806303e1469160e61b8152506004019050600060405180830381855afa9150503d80600081146109b0576040519150601f19603f3d011682016040523d82523d6000602084013e6109b5565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601760248201527f50726f78792061646d696e2063616c6c206661696c6564000000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b039290921691909117905556fea26469706673582212208b271ee4c7625d89f662c15e90f70e142245bf56f0595043fe9af742b09d958c64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphProxy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken.json new file mode 100644 index 000000000..5889eeaf0 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken.json @@ -0,0 +1,750 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphToken", + "sourceName": "contracts/l2/token/L2GraphToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeBurned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeMinted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "gateway", + "type": "address" + } + ], + "name": "GatewaySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Address", + "type": "address" + } + ], + "name": "L1AddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "addMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeBurn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeMint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "isMinter", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1Address", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "_v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "_r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "removeMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_gw", + "type": "address" + } + ], + "name": "setGateway", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "setL1Address", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101206040527fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac564726080527fefcec85968da792893fa503eb21730083fc6c50ed5461e56163b28335b2a5f9660a0527f044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d60c0527fe33842a7acd1d5a1d28f25a931703e5605152dc48d64dc4716efdae1f565959160e0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9610100523480156100c657600080fd5b5060805160a05160c05160e0516101005161261e61010660003980611547525080611eae525080611e5e525080611e3d525080611e1c525061261e6000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken_Instance.json new file mode 100644 index 000000000..5889eeaf0 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphToken#GraphToken_Instance.json @@ -0,0 +1,750 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphToken", + "sourceName": "contracts/l2/token/L2GraphToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeBurned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeMinted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "gateway", + "type": "address" + } + ], + "name": "GatewaySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Address", + "type": "address" + } + ], + "name": "L1AddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "addMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeBurn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeMint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "isMinter", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1Address", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "_v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "_r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "removeMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_gw", + "type": "address" + } + ], + "name": "setGateway", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "setL1Address", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101206040527fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac564726080527fefcec85968da792893fa503eb21730083fc6c50ed5461e56163b28335b2a5f9660a0527f044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d60c0527fe33842a7acd1d5a1d28f25a931703e5605152dc48d64dc4716efdae1f565959160e0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9610100523480156100c657600080fd5b5060805160a05160c05160e0516101005161261e61010660003980611547525080611eae525080611e5e525080611e3d525080611e1c525061261e6000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphProxy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway.json new file mode 100644 index 000000000..a9c54a794 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway.json @@ -0,0 +1,647 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphTokenGateway", + "sourceName": "contracts/l2/gateway/L2GraphTokenGateway.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "DepositFinalized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Counterpart", + "type": "address" + } + ], + "name": "L1CounterpartAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1GRT", + "type": "address" + } + ], + "name": "L1TokenAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l2Router", + "type": "address" + } + ], + "name": "L2RouterSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPauseGuardian", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "pauseGuardian", + "type": "address" + } + ], + "name": "NewPauseGuardian", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PartialPauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "TxToL1", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "l2ToL1Id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "exitNum", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "WithdrawalInitiated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "l1ERC20", + "type": "address" + } + ], + "name": "calculateL2TokenAddress", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "finalizeInboundTransfer", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "getOutboundCalldata", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "l1Counterpart", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1GRT", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l2Router", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPausePartialTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPauseTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Counterpart", + "type": "address" + } + ], + "name": "setL1CounterpartAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1GRT", + "type": "address" + } + ], + "name": "setL1TokenAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l2Router", + "type": "address" + } + ], + "name": "setL2Router", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newPauseGuardian", + "type": "address" + } + ], + "name": "setPauseGuardian", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_newPaused", + "type": "bool" + } + ], + "name": "setPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161222b6101696000398061112f5250806111065250806110dd528061150a5250806110b452508061108b525080611062525080611039525061222b6000f3fe6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "deployedBytecode": "0x6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json new file mode 100644 index 000000000..a9c54a794 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json @@ -0,0 +1,647 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphTokenGateway", + "sourceName": "contracts/l2/gateway/L2GraphTokenGateway.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "DepositFinalized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Counterpart", + "type": "address" + } + ], + "name": "L1CounterpartAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1GRT", + "type": "address" + } + ], + "name": "L1TokenAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l2Router", + "type": "address" + } + ], + "name": "L2RouterSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPauseGuardian", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "pauseGuardian", + "type": "address" + } + ], + "name": "NewPauseGuardian", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PartialPauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "TxToL1", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "l2ToL1Id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "exitNum", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "WithdrawalInitiated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "l1ERC20", + "type": "address" + } + ], + "name": "calculateL2TokenAddress", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "finalizeInboundTransfer", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "getOutboundCalldata", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "l1Counterpart", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1GRT", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l2Router", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPausePartialTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPauseTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Counterpart", + "type": "address" + } + ], + "name": "setL1CounterpartAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1GRT", + "type": "address" + } + ], + "name": "setL1TokenAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l2Router", + "type": "address" + } + ], + "name": "setL2Router", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newPauseGuardian", + "type": "address" + } + ], + "name": "setPauseGuardian", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_newPaused", + "type": "bool" + } + ], + "name": "setPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161222b6101696000398061112f5250806111065250806110dd528061150a5250806110b452508061108b525080611062525080611039525061222b6000f3fe6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "deployedBytecode": "0x6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json new file mode 100644 index 000000000..942e4b2e5 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json @@ -0,0 +1,132 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ProxyAdmin", + "sourceName": "contracts/proxy/transparent/ProxyAdmin.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "OwnableInvalidOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "OwnableUnauthorizedAccount", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "UPGRADE_INTERFACE_VERSION", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ITransparentUpgradeableProxy", + "name": "proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "implementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "deployedBytecode": "0x60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json new file mode 100644 index 000000000..942e4b2e5 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json @@ -0,0 +1,132 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ProxyAdmin", + "sourceName": "contracts/proxy/transparent/ProxyAdmin.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "OwnableInvalidOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "OwnableUnauthorizedAccount", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "UPGRADE_INTERFACE_VERSION", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ITransparentUpgradeableProxy", + "name": "proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "implementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "deployedBytecode": "0x60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#RegisteredDummy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#RegisteredDummy.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#RegisteredDummy.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json new file mode 100644 index 000000000..c7f1f49b4 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json @@ -0,0 +1,116 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TransparentUpgradeableProxy", + "sourceName": "contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_logic", + "type": "address" + }, + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "admin", + "type": "address" + } + ], + "name": "ERC1967InvalidAdmin", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ERC1967InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "ERC1967NonPayable", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [], + "name": "ProxyDeniedAdminAccess", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "previousAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + } + ], + "bytecode": "0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103", + "deployedBytecode": "0x608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json new file mode 100644 index 000000000..c7f1f49b4 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json @@ -0,0 +1,116 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TransparentUpgradeableProxy", + "sourceName": "contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_logic", + "type": "address" + }, + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "admin", + "type": "address" + } + ], + "name": "ERC1967InvalidAdmin", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ERC1967InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "ERC1967NonPayable", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [], + "name": "ProxyDeniedAdminAccess", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "previousAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + } + ], + "bytecode": "0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103", + "deployedBytecode": "0x608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking.json new file mode 100644 index 000000000..e442f237e --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking.json @@ -0,0 +1,2280 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "HorizonStaking", + "sourceName": "contracts/staking/HorizonStaking.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "address", + "name": "stakingExtensionAddress", + "type": "address" + }, + { + "internalType": "address", + "name": "subgraphDataServiceAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingCallerIsServiceProvider", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientIdleStake", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientShares", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientStakeForLegacyAllocations", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minRequired", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "HorizonStakingInvalidDelegationFeeCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidDelegationPoolState", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "maxMaxVerifierCut", + "type": "uint32" + } + ], + "name": "HorizonStakingInvalidMaxVerifierCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidProvision", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "HorizonStakingInvalidThawingPeriod", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroShares", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingNotAuthorized", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingNothingThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingProvisionAlreadyExists", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingSlippageProtection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "HorizonStakingStillThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingTooManyThawRequests", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingTooManyTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingVerifierNotAllowed", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListEmptyList", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidIterations", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidZeroId", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListMaxElementsExceeded", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyController", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyGovernor", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "AllowedLockedVerifierSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegatedTokensWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "DelegationFeeCutSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "DelegationSlashingEnabled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashingSkipped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "MaxThawingPeriodSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "OperatorSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionIncreased", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersStaged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionThawed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeDeposited", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "StakeLocked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "ThawRequestCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + } + ], + "name": "ThawRequestFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawRequestsFulfilled", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ThawRequestsFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [], + "name": "ThawingPeriodCleared", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDeprovisioned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensToDelegationPoolAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensUndelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "destination", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "VerifierTokensSent", + "type": "event" + }, + { + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "acceptProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToDelegationPool", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "clearThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSharesOut", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "deprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegatedTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "delegator", + "type": "address" + } + ], + "name": "getDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.Delegation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + } + ], + "name": "getDelegationFeeCut", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegationPool", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.DelegationPool", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getIdleStake", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getMaxThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProviderTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProvision", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "createdAt", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "maxVerifierCutPending", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriodPending", + "type": "uint64" + } + ], + "internalType": "struct IHorizonStakingTypes.Provision", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getServiceProvider", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokensStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensProvisioned", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.ServiceProvider", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "getThawRequest", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "next", + "type": "bytes32" + } + ], + "internalType": "struct IHorizonStakingTypes.ThawRequest", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawRequestList", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32", + "name": "head", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "tail", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "count", + "type": "uint256" + } + ], + "internalType": "struct LinkedList.List", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "delegationRatio", + "type": "uint32" + } + ], + "name": "getTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAllowedLockedVerifier", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAuthorized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isDelegationSlashingEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provisionLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "oldVerifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newVerifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "reprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setAllowedLockedVerifier", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "setDelegationFeeCut", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setDelegationSlashingEnabled", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "setMaxThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperatorLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "setProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensVerifier", + "type": "uint256" + }, + { + "internalType": "address", + "name": "verifierDestination", + "type": "address" + } + ], + "name": "slash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "unstake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "minSharesForNewProvider", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b50604051615b2c380380615b2c8339810160408190526100309161041b565b828181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610351565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610351565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610351565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610351565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610351565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610351565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610351565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610351565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610351565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b039081166101c052929092166101e052506104ce915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038c91815260200190565b602060405180830381865afa1580156103a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103cd919061045e565b9050826001600160a01b0382166103f85760405163218f5add60e11b81526004016100749190610480565b5092915050565b80516001600160a01b038116811461041657600080fd5b919050565b60008060006060848603121561043057600080fd5b610439846103ff565b9250610447602085016103ff565b9150610455604085016103ff565b90509250925092565b60006020828403121561047057600080fd5b610479826103ff565b9392505050565b602081526000825180602084015260005b818110156104ae5760208186018101516040868401015201610491565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516155836105a960003960006102fb015260008181610dbf015281816115b60152818161166801528181612f5401528181613e120152614172015260005050600050506000505060005050600050506000612f0d015260005050600050506000505060008181610d89015281816117cd015281816125b2015281816128c80152818161295f01528181612ac00152818161380b015281816139cb01528181613d88015261401e01526155836000f3fe6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "deployedBytecode": "0x6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking_Instance.json new file mode 100644 index 000000000..e442f237e --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStaking#HorizonStaking_Instance.json @@ -0,0 +1,2280 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "HorizonStaking", + "sourceName": "contracts/staking/HorizonStaking.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "address", + "name": "stakingExtensionAddress", + "type": "address" + }, + { + "internalType": "address", + "name": "subgraphDataServiceAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingCallerIsServiceProvider", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientIdleStake", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientShares", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientStakeForLegacyAllocations", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minRequired", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "HorizonStakingInvalidDelegationFeeCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidDelegationPoolState", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "maxMaxVerifierCut", + "type": "uint32" + } + ], + "name": "HorizonStakingInvalidMaxVerifierCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidProvision", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "HorizonStakingInvalidThawingPeriod", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroShares", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingNotAuthorized", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingNothingThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingProvisionAlreadyExists", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingSlippageProtection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "HorizonStakingStillThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingTooManyThawRequests", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingTooManyTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingVerifierNotAllowed", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListEmptyList", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidIterations", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidZeroId", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListMaxElementsExceeded", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyController", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyGovernor", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "AllowedLockedVerifierSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegatedTokensWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "DelegationFeeCutSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "DelegationSlashingEnabled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashingSkipped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "MaxThawingPeriodSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "OperatorSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionIncreased", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersStaged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionThawed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeDeposited", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "StakeLocked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "ThawRequestCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + } + ], + "name": "ThawRequestFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawRequestsFulfilled", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ThawRequestsFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [], + "name": "ThawingPeriodCleared", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDeprovisioned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensToDelegationPoolAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensUndelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "destination", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "VerifierTokensSent", + "type": "event" + }, + { + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "acceptProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToDelegationPool", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "clearThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSharesOut", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "deprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegatedTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "delegator", + "type": "address" + } + ], + "name": "getDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.Delegation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + } + ], + "name": "getDelegationFeeCut", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegationPool", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.DelegationPool", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getIdleStake", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getMaxThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProviderTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProvision", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "createdAt", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "maxVerifierCutPending", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriodPending", + "type": "uint64" + } + ], + "internalType": "struct IHorizonStakingTypes.Provision", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getServiceProvider", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokensStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensProvisioned", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.ServiceProvider", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "getThawRequest", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "next", + "type": "bytes32" + } + ], + "internalType": "struct IHorizonStakingTypes.ThawRequest", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawRequestList", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32", + "name": "head", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "tail", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "count", + "type": "uint256" + } + ], + "internalType": "struct LinkedList.List", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "delegationRatio", + "type": "uint32" + } + ], + "name": "getTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAllowedLockedVerifier", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAuthorized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isDelegationSlashingEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provisionLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "oldVerifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newVerifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "reprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setAllowedLockedVerifier", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "setDelegationFeeCut", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setDelegationSlashingEnabled", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "setMaxThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperatorLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "setProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensVerifier", + "type": "uint256" + }, + { + "internalType": "address", + "name": "verifierDestination", + "type": "address" + } + ], + "name": "slash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "unstake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "minSharesForNewProvider", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b50604051615b2c380380615b2c8339810160408190526100309161041b565b828181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610351565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610351565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610351565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610351565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610351565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610351565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610351565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610351565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610351565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b039081166101c052929092166101e052506104ce915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038c91815260200190565b602060405180830381865afa1580156103a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103cd919061045e565b9050826001600160a01b0382166103f85760405163218f5add60e11b81526004016100749190610480565b5092915050565b80516001600160a01b038116811461041657600080fd5b919050565b60008060006060848603121561043057600080fd5b610439846103ff565b9250610447602085016103ff565b9150610455604085016103ff565b90509250925092565b60006020828403121561047057600080fd5b610479826103ff565b9392505050565b602081526000825180602084015260005b818110156104ae5760208186018101516040868401015201610491565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516155836105a960003960006102fb015260008181610dbf015281816115b60152818161166801528181612f5401528181613e120152614172015260005050600050506000505060005050600050506000612f0d015260005050600050506000505060008181610d89015281816117cd015281816125b2015281816128c80152818161295f01528181612ac00152818161380b015281816139cb01528181613d88015261401e01526155836000f3fe6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "deployedBytecode": "0x6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#ExponentialRebates.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#ExponentialRebates.json new file mode 100644 index 000000000..fc0c0c29f --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#ExponentialRebates.json @@ -0,0 +1,55 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ExponentialRebates", + "sourceName": "contracts/staking/libraries/ExponentialRebates.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "fees", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "stake", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "alphaNumerator", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "alphaDenominator", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "lambdaNumerator", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "lambdaDenominator", + "type": "uint32" + } + ], + "name": "exponentialRebates", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x610c2d610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806349484d811461003a575b600080fd5b61004d610048366004610a66565b61005f565b60405190815260200160405180910390f35b6000806100728660030b8660030b61011c565b9050806000036100855787915050610112565b87600003610097576000915050610112565b60006100a98560030b8560030b61011c565b905060006100b8828a8c61013c565b9050600f6100c582610153565b13156100d657899350505050610112565b60006100ff6001607f1b6100fa866100f56100f087610ae2565b610169565b610882565b61089d565b905061010b818c6108d4565b9450505050505b9695505050505050565b600061013561012f846001607f1b610920565b83610988565b9392505050565b600061014b61012f8585610920565b949350505050565b60006101636001607f1b83610b14565b92915050565b60006101796101ff607c1b610ae2565b82121561018857506000919050565b8160000361019b57506001607f1b919050565b60008213156101c55760405162461bcd60e51b81526004016101bc90610b42565b60405180910390fd5b6000806101d66001607c1b85610b69565b91508190506001607f1b6101ea8280610b7d565b6101f49190610b14565b9050610208816710e1b3be415a0000610b7d565b6102129084610bad565b92506001607f1b6102238383610b7d565b61022d9190610b14565b9050610241816705a0913f6b1e0000610b7d565b61024b9084610bad565b92506001607f1b61025c8383610b7d565b6102669190610b14565b905061027a81670168244fdac78000610b7d565b6102849084610bad565b92506001607f1b6102958383610b7d565b61029f9190610b14565b90506102b281664807432bc18000610b7d565b6102bc9084610bad565b92506001607f1b6102cd8383610b7d565b6102d79190610b14565b90506102ea81660c0135dca04000610b7d565b6102f49084610bad565b92506001607f1b6103058383610b7d565b61030f9190610b14565b9050610322816601b707b1cdc000610b7d565b61032c9084610bad565b92506001607f1b61033d8383610b7d565b6103479190610b14565b9050610359816536e0f639b800610b7d565b6103639084610bad565b92506001607f1b6103748383610b7d565b61037e9190610b14565b905061039081650618fee9f800610b7d565b61039a9084610bad565b92506001607f1b6103ab8383610b7d565b6103b59190610b14565b90506103c681649c197dcc00610b7d565b6103d09084610bad565b92506001607f1b6103e18383610b7d565b6103eb9190610b14565b90506103fc81640e30dce400610b7d565b6104069084610bad565b92506001607f1b6104178383610b7d565b6104219190610b14565b90506104328164012ebd1300610b7d565b61043c9084610bad565b92506001607f1b61044d8383610b7d565b6104579190610b14565b9050610467816317499f00610b7d565b6104719084610bad565b92506001607f1b6104828383610b7d565b61048c9190610b14565b905061049c816301a9d480610b7d565b6104a69084610bad565b92506001607f1b6104b78383610b7d565b6104c19190610b14565b90506104d081621c6380610b7d565b6104da9084610bad565b92506001607f1b6104eb8383610b7d565b6104f59190610b14565b9050610504816201c638610b7d565b61050e9084610bad565b92506001607f1b61051f8383610b7d565b6105299190610b14565b905061053781611ab8610b7d565b6105419084610bad565b92506001607f1b6105528383610b7d565b61055c9190610b14565b905061056a8161017c610b7d565b6105749084610bad565b92506001607f1b6105858383610b7d565b61058f9190610b14565b905061059c816014610b7d565b6105a69084610bad565b92506001607f1b6105b78383610b7d565b6105c19190610b14565b90506105ce816001610b7d565b6105d89084610bad565b92506001607f1b826105f26721c3677c82b4000086610b14565b6105fc9190610bad565b6106069190610bad565b925061061184610ae2565b9350600160841b841615610657577243cbaf42a000812488fc5c220ad7b97bf6e99e61064a6cf1aaddd7742e56d32fb9f9974485610b7d565b6106549190610b14565b92505b600160831b84161561069c577105d27a9f51c31b7c2f8038212a057477999161068f6e0afe10820813d65dfe6a33c07f738f85610b7d565b6106999190610b14565b92505b600160821b8416156106e157701b4c902e273a58678d6d3bfdb93db96d026106d46f02582ab704279e8efd15e0265855c47a85610b7d565b6106de9190610b14565b92505b600160811b841615610726577003b1cc971a9bb5b9867477440d6d1577506107196f1152aaa3bf81cb9fdb76eae12d02957185610b7d565b6107239190610b14565b92505b600160801b84161561076b5770015bf0a8b1457695355fb8ac404e7a79e361075e6f2f16ac6c59de6f8d5d6f63c1482a7c8685610b7d565b6107689190610b14565b92505b6001607f1b8416156107af576fd3094c70f034de4b96ff7d5b6f99fcd86107a26f4da2cbf1be5827f9eb3ad1aa9866ebb385610b7d565b6107ac9190610b14565b92505b6001607e1b8416156107f3576fa45af1e1f40c333b3de1db4dd55f29a76107e66f63afbe7ab2082ba1a0ae5e4eb1b479dc85610b7d565b6107f09190610b14565b92505b6001607d1b841615610837576f910b022db7ae67ce76b441c27035c6a161082a6f70f5a893b608861e1f58934f97aea57d85610b7d565b6108349190610b14565b92505b6001607c1b84161561087b576f88415abbe9a76bead8d00cf112e4d4a861086e6f783eafef1c0a8f3978c7f81824d62ebf85610b7d565b6108789190610b14565b92505b5050919050565b60006001607f1b6108938484610920565b6101359190610b14565b6000600160ff1b82036108c25760405162461bcd60e51b81526004016101bc90610b42565b610135836108cf84610ae2565b6109f2565b6000808212156108f65760405162461bcd60e51b81526004016101bc90610b42565b60006109028484610920565b905060008113610916576000915050610163565b607f1c9392505050565b600082158061092d575081155b1561093a57506000610163565b508181028183828161094e5761094e610afe565b0514158061096b57508282828161096757610967610afe565b0514155b156101635760405162461bcd60e51b81526004016101bc90610bd5565b6000816000036109aa5760405162461bcd60e51b81526004016101bc90610bd5565b600160ff1b831480156109be575081600019145b156109db5760405162461bcd60e51b81526004016101bc90610bd5565b8183816109ea576109ea610afe565b059392505050565b818101600083128015610a055750600082125b8015610a1057508281135b8061096b5750600083138015610a265750600082135b801561096b5750828112156101635760405162461bcd60e51b81526004016101bc90610bd5565b803563ffffffff81168114610a6157600080fd5b919050565b60008060008060008060c08789031215610a7f57600080fd5b8635955060208701359450610a9660408801610a4d565b9350610aa460608801610a4d565b9250610ab260808801610a4d565b9150610ac060a08801610a4d565b90509295509295509295565b634e487b7160e01b600052601160045260246000fd5b6000600160ff1b8201610af757610af7610acc565b5060000390565b634e487b7160e01b600052601260045260246000fd5b600082610b2357610b23610afe565b600160ff1b821460001984141615610b3d57610b3d610acc565b500590565b6020808252600d908201526c6f75742d6f662d626f756e647360981b604082015260600190565b600082610b7857610b78610afe565b500790565b80820260008212600160ff1b84141615610b9957610b99610acc565b818105831482151761016357610163610acc565b8082018281126000831280158216821582161715610bcd57610bcd610acc565b505092915050565b6020808252600890820152676f766572666c6f7760c01b60408201526060019056fea26469706673582212201cac81319f1bc19d15bc3a02519b03e3559a9cf147525a96caa8cb800f74da2864736f6c634300081b0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806349484d811461003a575b600080fd5b61004d610048366004610a66565b61005f565b60405190815260200160405180910390f35b6000806100728660030b8660030b61011c565b9050806000036100855787915050610112565b87600003610097576000915050610112565b60006100a98560030b8560030b61011c565b905060006100b8828a8c61013c565b9050600f6100c582610153565b13156100d657899350505050610112565b60006100ff6001607f1b6100fa866100f56100f087610ae2565b610169565b610882565b61089d565b905061010b818c6108d4565b9450505050505b9695505050505050565b600061013561012f846001607f1b610920565b83610988565b9392505050565b600061014b61012f8585610920565b949350505050565b60006101636001607f1b83610b14565b92915050565b60006101796101ff607c1b610ae2565b82121561018857506000919050565b8160000361019b57506001607f1b919050565b60008213156101c55760405162461bcd60e51b81526004016101bc90610b42565b60405180910390fd5b6000806101d66001607c1b85610b69565b91508190506001607f1b6101ea8280610b7d565b6101f49190610b14565b9050610208816710e1b3be415a0000610b7d565b6102129084610bad565b92506001607f1b6102238383610b7d565b61022d9190610b14565b9050610241816705a0913f6b1e0000610b7d565b61024b9084610bad565b92506001607f1b61025c8383610b7d565b6102669190610b14565b905061027a81670168244fdac78000610b7d565b6102849084610bad565b92506001607f1b6102958383610b7d565b61029f9190610b14565b90506102b281664807432bc18000610b7d565b6102bc9084610bad565b92506001607f1b6102cd8383610b7d565b6102d79190610b14565b90506102ea81660c0135dca04000610b7d565b6102f49084610bad565b92506001607f1b6103058383610b7d565b61030f9190610b14565b9050610322816601b707b1cdc000610b7d565b61032c9084610bad565b92506001607f1b61033d8383610b7d565b6103479190610b14565b9050610359816536e0f639b800610b7d565b6103639084610bad565b92506001607f1b6103748383610b7d565b61037e9190610b14565b905061039081650618fee9f800610b7d565b61039a9084610bad565b92506001607f1b6103ab8383610b7d565b6103b59190610b14565b90506103c681649c197dcc00610b7d565b6103d09084610bad565b92506001607f1b6103e18383610b7d565b6103eb9190610b14565b90506103fc81640e30dce400610b7d565b6104069084610bad565b92506001607f1b6104178383610b7d565b6104219190610b14565b90506104328164012ebd1300610b7d565b61043c9084610bad565b92506001607f1b61044d8383610b7d565b6104579190610b14565b9050610467816317499f00610b7d565b6104719084610bad565b92506001607f1b6104828383610b7d565b61048c9190610b14565b905061049c816301a9d480610b7d565b6104a69084610bad565b92506001607f1b6104b78383610b7d565b6104c19190610b14565b90506104d081621c6380610b7d565b6104da9084610bad565b92506001607f1b6104eb8383610b7d565b6104f59190610b14565b9050610504816201c638610b7d565b61050e9084610bad565b92506001607f1b61051f8383610b7d565b6105299190610b14565b905061053781611ab8610b7d565b6105419084610bad565b92506001607f1b6105528383610b7d565b61055c9190610b14565b905061056a8161017c610b7d565b6105749084610bad565b92506001607f1b6105858383610b7d565b61058f9190610b14565b905061059c816014610b7d565b6105a69084610bad565b92506001607f1b6105b78383610b7d565b6105c19190610b14565b90506105ce816001610b7d565b6105d89084610bad565b92506001607f1b826105f26721c3677c82b4000086610b14565b6105fc9190610bad565b6106069190610bad565b925061061184610ae2565b9350600160841b841615610657577243cbaf42a000812488fc5c220ad7b97bf6e99e61064a6cf1aaddd7742e56d32fb9f9974485610b7d565b6106549190610b14565b92505b600160831b84161561069c577105d27a9f51c31b7c2f8038212a057477999161068f6e0afe10820813d65dfe6a33c07f738f85610b7d565b6106999190610b14565b92505b600160821b8416156106e157701b4c902e273a58678d6d3bfdb93db96d026106d46f02582ab704279e8efd15e0265855c47a85610b7d565b6106de9190610b14565b92505b600160811b841615610726577003b1cc971a9bb5b9867477440d6d1577506107196f1152aaa3bf81cb9fdb76eae12d02957185610b7d565b6107239190610b14565b92505b600160801b84161561076b5770015bf0a8b1457695355fb8ac404e7a79e361075e6f2f16ac6c59de6f8d5d6f63c1482a7c8685610b7d565b6107689190610b14565b92505b6001607f1b8416156107af576fd3094c70f034de4b96ff7d5b6f99fcd86107a26f4da2cbf1be5827f9eb3ad1aa9866ebb385610b7d565b6107ac9190610b14565b92505b6001607e1b8416156107f3576fa45af1e1f40c333b3de1db4dd55f29a76107e66f63afbe7ab2082ba1a0ae5e4eb1b479dc85610b7d565b6107f09190610b14565b92505b6001607d1b841615610837576f910b022db7ae67ce76b441c27035c6a161082a6f70f5a893b608861e1f58934f97aea57d85610b7d565b6108349190610b14565b92505b6001607c1b84161561087b576f88415abbe9a76bead8d00cf112e4d4a861086e6f783eafef1c0a8f3978c7f81824d62ebf85610b7d565b6108789190610b14565b92505b5050919050565b60006001607f1b6108938484610920565b6101359190610b14565b6000600160ff1b82036108c25760405162461bcd60e51b81526004016101bc90610b42565b610135836108cf84610ae2565b6109f2565b6000808212156108f65760405162461bcd60e51b81526004016101bc90610b42565b60006109028484610920565b905060008113610916576000915050610163565b607f1c9392505050565b600082158061092d575081155b1561093a57506000610163565b508181028183828161094e5761094e610afe565b0514158061096b57508282828161096757610967610afe565b0514155b156101635760405162461bcd60e51b81526004016101bc90610bd5565b6000816000036109aa5760405162461bcd60e51b81526004016101bc90610bd5565b600160ff1b831480156109be575081600019145b156109db5760405162461bcd60e51b81526004016101bc90610bd5565b8183816109ea576109ea610afe565b059392505050565b818101600083128015610a055750600082125b8015610a1057508281135b8061096b5750600083138015610a265750600082135b801561096b5750828112156101635760405162461bcd60e51b81526004016101bc90610bd5565b803563ffffffff81168114610a6157600080fd5b919050565b60008060008060008060c08789031215610a7f57600080fd5b8635955060208701359450610a9660408801610a4d565b9350610aa460608801610a4d565b9250610ab260808801610a4d565b9150610ac060a08801610a4d565b90509295509295509295565b634e487b7160e01b600052601160045260246000fd5b6000600160ff1b8201610af757610af7610acc565b5060000390565b634e487b7160e01b600052601260045260246000fd5b600082610b2357610b23610afe565b600160ff1b821460001984141615610b3d57610b3d610acc565b500590565b6020808252600d908201526c6f75742d6f662d626f756e647360981b604082015260600190565b600082610b7857610b78610afe565b500790565b80820260008212600160ff1b84141615610b9957610b99610acc565b818105831482151761016357610163610acc565b8082018281126000831280158216821582161715610bcd57610bcd610acc565b505092915050565b6020808252600890820152676f766572666c6f7760c01b60408201526060019056fea26469706673582212201cac81319f1bc19d15bc3a02519b03e3559a9cf147525a96caa8cb800f74da2864736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#HorizonStakingExtension.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#HorizonStakingExtension.json new file mode 100644 index 000000000..7cd249086 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/HorizonStakingExtension#HorizonStakingExtension.json @@ -0,0 +1,1263 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "HorizonStakingExtension", + "sourceName": "contracts/staking/HorizonStakingExtension.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "address", + "name": "subgraphDataServiceAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyController", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyGovernor", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "PPMMathInvalidPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "poi", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "isPublic", + "type": "bool" + } + ], + "name": "AllocationClosed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "counterpart", + "type": "address" + } + ], + "name": "CounterpartStakingAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "assetHolder", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "protocolTax", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "curationFees", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "queryFees", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "queryRebates", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "delegationRewards", + "type": "uint256" + } + ], + "name": "RebateCollected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "StakeDelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeDeposited", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TransferredDelegationReturnedToDelegator", + "type": "event" + }, + { + "inputs": [], + "name": "__DEPRECATED_getThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "poi", + "type": "bytes32" + } + ], + "name": "closeAllocation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "getAllocation", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "createdAtEpoch", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "closedAtEpoch", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "collectedFees", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "__DEPRECATED_effectiveAllocation", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerAllocatedToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "distributedRebates", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingExtension.Allocation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "getAllocationData", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "getAllocationState", + "outputs": [ + { + "internalType": "enum IHorizonStakingExtension.AllocationState", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegatedTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "delegator", + "type": "address" + } + ], + "name": "getDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.Delegation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + } + ], + "name": "getDelegationFeeCut", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegationPool", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.DelegationPool", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getIdleStake", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "indexer", + "type": "address" + } + ], + "name": "getIndexerStakedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getMaxThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProviderTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProvision", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "createdAt", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "maxVerifierCutPending", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriodPending", + "type": "uint64" + } + ], + "internalType": "struct IHorizonStakingTypes.Provision", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getServiceProvider", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokensStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensProvisioned", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.ServiceProvider", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getSubgraphAllocatedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "getThawRequest", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "next", + "type": "bytes32" + } + ], + "internalType": "struct IHorizonStakingTypes.ThawRequest", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawRequestList", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32", + "name": "head", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "tail", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "count", + "type": "uint256" + } + ], + "internalType": "struct LinkedList.List", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "delegationRatio", + "type": "uint32" + } + ], + "name": "getTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "indexer", + "type": "address" + } + ], + "name": "hasStake", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "isActiveAllocation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "isAllocation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAllowedLockedVerifier", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isDelegationSlashingEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "isOperator", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onTokenTransfer", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "counterpart", + "type": "address" + } + ], + "name": "setCounterpartStakingAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x6101e060405234801561001157600080fd5b5060405161396738038061396783398101604081905261003091610411565b818181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610347565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610347565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610347565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610347565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610347565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610347565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610347565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610347565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610347565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b03166101c052506104b4915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038291815260200190565b602060405180830381865afa15801561039f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c39190610444565b9050826001600160a01b0382166103ee5760405163218f5add60e11b81526004016100749190610466565b5092915050565b80516001600160a01b038116811461040c57600080fd5b919050565b6000806040838503121561042457600080fd5b61042d836103f5565b915061043b602084016103f5565b90509250929050565b60006020828403121561045657600080fd5b61045f826103f5565b9392505050565b602081526000825180602084015260005b818110156104945760208186018101516040868401015201610477565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516133d761059060003960008181611c3601528181611e3601526123f00152600061205b015260005050600061178501526000818161213d0152818161280501526129080152600081816112c70152611b6f015260008181610bbf01528181610cbc01528181610ed601526116dc015260005050600050506000505060008181611044015281816111fa01528181612023015281816121b20152818161239a015281816124c2015261263201526133d76000f3fe6080604052600436106101f25760003560e01c806398c657dc1161010d578063b6363cf2116100a0578063e2e1e8e91161006f578063e2e1e8e914610a0b578063e73e14bf14610a38578063f1d60d6614610a70578063fb744cc014610a90578063fc54fb2714610ab057600080fd5b8063b6363cf2146108dd578063b7ca724114610927578063c0641994146109c1578063ccebcabb146109dc57600080fd5b8063a4c0ed36116100dc578063a4c0ed3614610837578063a784d49814610857578063ac9650d814610877578063ae4fe67a146108a457600080fd5b806398c657dc1461072d5780639ce7abe51461075a578063a212daf81461077a578063a2594d821461081757600080fd5b8063561285e411610185578063872d048911610154578063872d04891461064c5780638cc01c861461066c5780638d3c100a146106ed5780639054e3431461070d57600080fd5b8063561285e4146105a95780636a3ca383146105fc5780637573ef4f1461062c5780637a7664601461031157600080fd5b806325d9897e116101c157806325d9897e1461036957806339514ad21461047957806344c32a61146104ab57806355c85269146104cb57600080fd5b806308ce5f68146102495780630e0229231461027c5780631787e69f146103115780631ae720451461034757600080fd5b366102445760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b600080fd5b34801561025557600080fd5b50610269610264366004612bec565b610ac8565b6040519081526020015b60405180910390f35b34801561028857600080fd5b5061029c610297366004612c25565b610add565b604051610273919060006101208201905060018060a01b0383511682526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010083015161010083015292915050565b34801561031d57600080fd5b5061026961032c366004612c25565b6001600160a01b03166000908152600e602052604090205490565b34801561035357600080fd5b50610367610362366004612c25565b610bbd565b005b34801561037557600080fd5b5061046c610384366004612bec565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516102739190612c42565b34801561048557600080fd5b50601a546001600160401b03165b6040516001600160401b039091168152602001610273565b3480156104b757600080fd5b506103676104c6366004612cd2565b610cba565b3480156104d757600080fd5b506105776104e6366004612c25565b6001600160a01b039081166000908152600f602090815260408083208151610120810183528154909516808652600182015493860184905260028201549286018390526003820154606087015260048201546080870152600582015460a0870152600682015460c0870152600782015460e08701819052600890920154610100909601959095529394919390929091565b604080516001600160a01b0390961686526020860194909452928401919091526060830152608082015260a001610273565b3480156105b557600080fd5b506105c96105c4366004612bec565b610d68565b60405161027391908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561060857600080fd5b5061061c610617366004612c25565b610df6565b6040519015158152602001610273565b34801561063857600080fd5b50610269610647366004612cfe565b610e1b565b34801561065857600080fd5b50610269610667366004612d4d565b610e7f565b34801561067857600080fd5b506106d2610687366004612c25565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b60408051825181526020928301519281019290925201610273565b3480156106f957600080fd5b50610367610708366004612d96565b610ed4565b34801561071957600080fd5b50610269610728366004612dbb565b6113a0565b34801561073957600080fd5b5061074d610748366004612c25565b611488565b6040516102739190612e11565b34801561076657600080fd5b50610367610775366004612e81565b611493565b34801561078657600080fd5b506105c9610795366004612dbb565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561082357600080fd5b50610367610832366004612c25565b6115be565b34801561084357600080fd5b50610367610852366004612ed5565b6116da565b34801561086357600080fd5b50610269610872366004612c25565b6118e7565b34801561088357600080fd5b50610897610892366004612f30565b6118f2565b6040516102739190612fc9565b3480156108b057600080fd5b5061061c6108bf366004612c25565b6001600160a01b031660009081526022602052604090205460ff1690565b3480156108e957600080fd5b5061061c6108f8366004612bec565b6001600160a01b0380821660009081526015602090815260408083209386168352929052205460ff1692915050565b34801561093357600080fd5b50610996610942366004613049565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b0316908201529181015190820152606001610273565b3480156109cd57600080fd5b50600d5463ffffffff16610493565b3480156109e857600080fd5b506109fc6109f7366004612dbb565b6119d9565b60405190518152602001610273565b348015610a1757600080fd5b50610269610a26366004613049565b60009081526010602052604090205490565b348015610a4457600080fd5b5061061c610a53366004612c25565b6001600160a01b03166000908152600e6020526040902054151590565b348015610a7c57600080fd5b5061061c610a8b366004612c25565b611a2b565b348015610a9c57600080fd5b50610269610aab366004612bec565b611a50565b348015610abc57600080fd5b5060205460ff1661061c565b6000610ad48383611a5c565b90505b92915050565b610b3860405180610120016040528060006001600160a01b0316815260200160008019168152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b039081166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e08301526008015461010082015290565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3f9190613062565b6001600160a01b0316336001600160a01b031614610c7057604051635d9044cd60e01b815260040160405180910390fd5b601880546001600160a01b0319166001600160a01b0383169081179091556040517f690e9b982dc9aefaa1cfed186a2d2045a638013d658104102c9437235bee4b6090600090a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3c919061307f565b15610d5a57604051632b37d9d160e21b815260040160405180910390fd5b610d648282611a94565b5050565b610d936040518060800160405280600081526020016000815260200160008152602001600081525090565b610dbe6040518060800160405280600081526020016000815260200160008152602001600081525090565b6000610dca8585611e32565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b60006001610e0383611eb6565b6002811115610e1457610e14612dfb565b1492915050565b6001600160a01b038084166000908152601c60209081526040808320938616835292905290812081836002811115610e5557610e55612dfb565b6002811115610e6657610e66612dfb565b81526020019081526020016000205490505b9392505050565b600080610e8c8585611a5c565b90506000610e9a8686611f0f565b90506000610eae63ffffffff8616846130b7565b90506000610ebc8383611f3a565b9050610ec881856130ce565b98975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f56919061307f565b15610f7457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038116610fb35760405162461bcd60e51b815260206004820152600660248201526521616c6c6f6360d01b604482015260640161023b565b6000610fbe82611eb6565b90506000816002811115610fd457610fd4612dfb565b0361100c5760405162461bcd60e51b81526020600482015260086024820152670858dbdb1b1958dd60c21b604482015260640161023b565b8260000361101957505050565b6001600160a01b0382166000908152600f6020526040812060018101549091859080808061107333867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169190611f51565b600d5461108e908690600160401b900463ffffffff1661200e565b935061109a84866130e1565b600d549095506110bb9087908790640100000000900463ffffffff16612047565b92506110c783866130e1565b94508487600501546110d991906130ce565b6005880155600287015460009015806110ff5750601954600160a01b900463ffffffff16155b6111ca5760058801546002890154600d546019546040516349484d8160e01b81526004810194909452602484019290925263ffffffff600160a01b80830482166044860152600160c01b928390048216606486015283048116608485015291041660a482015273__$8eb3cac1482a31d7a7f2cbe7dc8bdcd821$__906349484d819060c401602060405180830381865af41580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c591906130f4565b6111cd565b60005b90506111dd81896008015461225a565b92506111e98387611f3a565b92506112296111f884886130e1565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690612274565b82156112915782886008015461123f91906130ce565b60088901558754611259906001600160a01b0316846122bc565b915061126582846130e1565b88546001600160a01b03908116600081815260176020526040902054929550611291928692161561234e565b5086546001600160a01b038a8116918891167ff5ded07502b6feba4c13b19a0c6646efd4b4119f439bcbd49076e4f0ed1eec4b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611323573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134791906130f4565b604080516001600160a01b039093168352602083019190915281018f9052606081018990526080810188905260a081018a905260c0810187905260e081018690526101000160405180910390a450505050505050505050565b6001600160a01b038084166000908152601e60209081526040808320868516845282528083209385168352929052908120600381015482036113e6576000915050610e78565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b801561147c576000818152601d602052604090206001810154426001600160401b039091161161146b5760028301546001840154825461145091906130b7565b61145a919061310d565b61146490856130ce565b9350611471565b5061147c565b600201549050611410565b50909695505050505050565b6000610ad782611eb6565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f89190613062565b6001600160a01b0316336001600160a01b0316146115585760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611586908690869060040161312f565b600060405180830381600087803b1580156115a057600080fd5b505af11580156115b4573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156115ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116239190613062565b6001600160a01b0316336001600160a01b0316146116835760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116be57600080fd5b505af11580156116d2573d6000803e3d6000fd5b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611738573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175c919061307f565b1561177a57604051632b37d9d160e21b815260040160405180910390fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e15760405162461bcd60e51b815260206004820152600c60248201526b4f4e4c595f4741544557415960a01b604482015260640161023b565b6018546001600160a01b0385811691161461183e5760405162461bcd60e51b815260206004820152601e60248201527f4f4e4c595f4c315f5354414b494e475f5448524f5547485f4252494447450000604482015260640161023b565b60008061184d838501856131a4565b909250905060ff8216611882576000818060200190518101906118709190613255565b905061187c86826123c4565b506116d2565b60001960ff8316016118b0576000818060200190518101906118a491906132a2565b905061187c86826123d0565b60405162461bcd60e51b815260206004820152600c60248201526b494e56414c49445f434f444560a01b604482015260640161023b565b6000610ad782612740565b604080516000815260208101909152606090826001600160401b0381111561191c5761191c61315e565b60405190808252806020026020018201604052801561194f57816020015b606081526020019060019003908161193a5790505b50915060005b838110156119d1576119ac3086868481811061197357611973613302565b90506020028101906119859190613318565b856040516020016119989392919061335e565b60405160208183030381529060405261278b565b8382815181106119be576119be613302565b6020908102919091010152600101611955565b505092915050565b6040805160208101909152600081526040805160208101909152600081526000611a038686611e32565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b600080611a3783611eb6565b6002811115611a4857611a48612dfb565b141592915050565b6000610ad48383611f0f565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610ad491906130e1565b6000611a9f83611eb6565b90506001816002811115611ab557611ab5612dfb565b14611aec5760405162461bcd60e51b81526020600482015260076024820152662161637469766560c81b604482015260640161023b565b6001600160a01b038381166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e0830152600801546101008201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bef91906130f4565b608082018190526060820151600091611c079161225a565b9050600082600001516001600160a01b0316336001600160a01b03161480611c78575082516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600090815260156020908152604080832093909416825291909152205460ff165b600d54909150600160801b900463ffffffff1682111580611c9b57506040830151155b15611cd55780611cd55760405162461bcd60e51b8152602060048201526005602482015264042c2eae8d60db1b604482015260640161023b565b60808301516001600160a01b0387166000908152600f6020526040908190206004019190915583015115611db957808015611d0f57508415155b15611d2757611d22868460000151612801565b611d36565b611d3483602001516128e7565b505b60408084015184516001600160a01b03166000908152600e6020529190912060010154611d6391906130e1565b83516001600160a01b03166000908152600e602090815260408083206001019390935582860151818701518352601090915291902054611da391906130e1565b6020808501516000908152601090915260409020555b60208084015184516080808701516040808901518151928352958201959095523394810194909452606084018990528415908401526001600160a01b03808a16939116907ff6725dd105a6fc88bb79a6e4627f128577186c567a17c94818d201c2a4ce14039060a00160405180910390a4505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611e8b57506001600160a01b0382166000908152601460205260409020610ad7565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610ad7565b6001600160a01b038082166000908152600f6020526040812080549192909116611ee35750600092915050565b600381015415801590611ef857506004810154155b15611f065750600192915050565b50600292915050565b600080611f1c8484611e32565b905080600501548160020154611f3291906130e1565b949350505050565b600081831115611f4a5781610ad4565b5090919050565b8015612009576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af1158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd1919061307f565b6120095760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161023b565b505050565b60008061201b8484612975565b9050610ad4817f000000000000000000000000000000000000000000000000000000000000000061121a565b60008260000361205957506000610e78565b7f00000000000000000000000000000000000000000000000000000000000000006000831580159061209357506001600160a01b03821615155b90508080156121065750604051634c4ea0ed60e01b8152600481018790526001600160a01b03831690634c4ea0ed90602401602060405180830381865afa1580156120e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612106919061307f565b1561224e5760006121178686612975565b90508015612244576040516307470bfb60e21b8152600481018890526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631d1c2fec906024016020604051808303816000875af1158015612186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121aa91906130f4565b506121e283827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906129c7565b60405163102ae65160e31b815260048101889052602481018290526001600160a01b03841690638157328890604401600060405180830381600087803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050505b9250610e78915050565b50600095945050505050565b600081831161226a576000610ad4565b610ad482846130e1565b8015610d6457604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156116be57600080fd5b6001600160a01b03821660009081526014602052604081206002810154829190158015906122fb57508054600160401b900463ffffffff16620f424010155b156123465780546000906123219063ffffffff600160401b9091048116908790612a0216565b905061232d81866130e1565b925082826002015461233f91906130ce565b6002830155505b509392505050565b8260000361235b57505050565b801561236b576120098284612a69565b6001600160a01b03808316600090815260176020526040902054166123be81156123955781612397565b835b857f00000000000000000000000000000000000000000000000000000000000000006121d2565b50505050565b80516120098184612a69565b80516001600160a01b039081166000908152601b602090815260408083207f0000000000000000000000000000000000000000000000000000000000000000909416835292905290812060030154600160601b90046001600160401b031690036124695760405162461bcd60e51b815260206004820152600a60248201526910b83937bb34b9b4b7b760b11b604482015260640161023b565b80516001600160a01b03908116600090815260146020908152604080832082860151909416835260048401909152902060028201541580156124bb575060038201541515806124bb5750600682015415155b156125b5577f0000000000000000000000000000000000000000000000000000000000000000602084015160405163a9059cbb60e01b81526001600160a01b0391821660048201526024810187905291169063a9059cbb906044016020604051808303816000875af1158015612535573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612559919061307f565b5082602001516001600160a01b031683600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de866040516125a791815260200190565b60405180910390a350505050565b60008260020154600014806125d1575082600501548360020154145b61260757826005015483600201546125e991906130e1565b60038401546125f890876130b7565b612602919061310d565b612609565b845b905080158061261f5750670de0b6b3a764000085105b156126ae576126548460200151866121d27f000000000000000000000000000000000000000000000000000000000000000090565b83602001516001600160a01b031684600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de876040516126a191815260200190565b60405180910390a3612739565b8483600201546126be91906130ce565b600284015560038301546126d39082906130ce565b600384015581546126e59082906130ce565b82556020808501518551604080518981529384018590526001600160a01b039283169391909216917fcd0366dce5247d874ffc60a762aa7abbb82c1695bbb171609c1b8861e279eb73910160405180910390a35b5050505050565b6001600160a01b0381166000908152600e6020526040812060028101546001820154600483015492549192909161277791906130e1565b61278191906130e1565b610ad791906130e1565b6060600080846001600160a01b0316846040516127a89190613385565b600060405180830381855af49150503d80600081146127e3576040519150601f19603f3d011682016040523d82523d6000602084013e6127e8565b606091505b50915091506127f8858383612ae8565b95945050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000604051636dba849360e11b81526001600160a01b038581166004830152919091169063db750926906024016020604051808303816000875af115801561286e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289291906130f4565b9050806000036128a157505050565b60006128ad8383612b44565b905060006128bb82846130e1565b6001600160a01b038086166000908152601760205260409020549192506127399183918791161561234e565b6040516377561f0760e11b8152600481018290526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063eeac3e0e906024016020604051808303816000875af1158015612951573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906130f4565b600061298482620f4240101590565b82906129a657604051633dc311df60e01b815260040161023b91815260200190565b506129bd6129b783620f42406130e1565b84612a02565b610ad490846130e1565b80156120095760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb90604401611f8e565b6000612a1183620f4240101590565b80612a245750612a2482620f4240101590565b83839091612a4e5760405163768bf0eb60e11b81526004810192909252602482015260440161023b565b50620f42409050612a5f83856130b7565b610ad4919061310d565b6001600160a01b0382166000908152600e6020526040902054612a8d9082906130ce565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc290612adc9084815260200190565b60405180910390a25050565b606082612afd57612af882612bab565b610e78565b8151158015612b1457506001600160a01b0384163b155b15612b3d57604051639996b31560e01b81526001600160a01b038516600482015260240161023b565b5080610e78565b6001600160a01b0382166000908152601460205260408120600281015482919015801590612b8457508054640100000000900463ffffffff16620f424010155b156123465780546000906123219063ffffffff6401000000009091048116908790612a0216565b805115612bbb5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b0381168114612bd457600080fd5b60008060408385031215612bff57600080fd5b8235612c0a81612bd7565b91506020830135612c1a81612bd7565b809150509250929050565b600060208284031215612c3757600080fd5b8135610ad481612bd7565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151612cb060c084018263ffffffff169052565b5060e0830151612ccb60e08401826001600160401b03169052565b5092915050565b60008060408385031215612ce557600080fd5b8235612cf081612bd7565b946020939093013593505050565b600080600060608486031215612d1357600080fd5b8335612d1e81612bd7565b92506020840135612d2e81612bd7565b9150604084013560038110612d4257600080fd5b809150509250925092565b600080600060608486031215612d6257600080fd5b8335612d6d81612bd7565b92506020840135612d7d81612bd7565b9150604084013563ffffffff81168114612d4257600080fd5b60008060408385031215612da957600080fd5b823591506020830135612c1a81612bd7565b600080600060608486031215612dd057600080fd5b8335612ddb81612bd7565b92506020840135612deb81612bd7565b91506040840135612d4281612bd7565b634e487b7160e01b600052602160045260246000fd5b6020810160038310612e3357634e487b7160e01b600052602160045260246000fd5b91905290565b60008083601f840112612e4b57600080fd5b5081356001600160401b03811115612e6257600080fd5b602083019150836020828501011115612e7a57600080fd5b9250929050565b600080600060408486031215612e9657600080fd5b8335612ea181612bd7565b925060208401356001600160401b03811115612ebc57600080fd5b612ec886828701612e39565b9497909650939450505050565b60008060008060608587031215612eeb57600080fd5b8435612ef681612bd7565b93506020850135925060408501356001600160401b03811115612f1857600080fd5b612f2487828801612e39565b95989497509550505050565b60008060208385031215612f4357600080fd5b82356001600160401b03811115612f5957600080fd5b8301601f81018513612f6a57600080fd5b80356001600160401b03811115612f8057600080fd5b8560208260051b8401011115612f9557600080fd5b6020919091019590945092505050565b60005b83811015612fc0578181015183820152602001612fa8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561303d57603f198786030184528151805180875261301a816020890160208501612fa5565b601f01601f19169590950160209081019550938401939190910190600101612ff1565b50929695505050505050565b60006020828403121561305b57600080fd5b5035919050565b60006020828403121561307457600080fd5b8151610ad481612bd7565b60006020828403121561309157600080fd5b81518015158114610ad457600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610ad757610ad76130a1565b80820180821115610ad757610ad76130a1565b81810381811115610ad757610ad76130a1565b60006020828403121561310657600080fd5b5051919050565b60008261312a57634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561319c5761319c61315e565b604052919050565b600080604083850312156131b757600080fd5b823560ff811681146131c857600080fd5b915060208301356001600160401b038111156131e357600080fd5b8301601f810185136131f457600080fd5b80356001600160401b0381111561320d5761320d61315e565b613220601f8201601f1916602001613174565b81815286602083850101111561323557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312801561326857600080fd5b50604051602081016001600160401b038111828210171561328b5761328b61315e565b604052825161329981612bd7565b81529392505050565b600060408284031280156132b557600080fd5b50604080519081016001600160401b03811182821017156132d8576132d861315e565b60405282516132e681612bd7565b815260208301516132f681612bd7565b60208201529392505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261332f57600080fd5b8301803591506001600160401b0382111561334957600080fd5b602001915036819003821315612e7a57600080fd5b82848237600083820160008152835161337b818360208801612fa5565b0195945050505050565b60008251613397818460208701612fa5565b919091019291505056fea264697066735822122038ad83d20c219353421029f1ad8c4f7667d5f0e86af1579c64603bb56827d86064736f6c634300081b0033", + "deployedBytecode": "0x6080604052600436106101f25760003560e01c806398c657dc1161010d578063b6363cf2116100a0578063e2e1e8e91161006f578063e2e1e8e914610a0b578063e73e14bf14610a38578063f1d60d6614610a70578063fb744cc014610a90578063fc54fb2714610ab057600080fd5b8063b6363cf2146108dd578063b7ca724114610927578063c0641994146109c1578063ccebcabb146109dc57600080fd5b8063a4c0ed36116100dc578063a4c0ed3614610837578063a784d49814610857578063ac9650d814610877578063ae4fe67a146108a457600080fd5b806398c657dc1461072d5780639ce7abe51461075a578063a212daf81461077a578063a2594d821461081757600080fd5b8063561285e411610185578063872d048911610154578063872d04891461064c5780638cc01c861461066c5780638d3c100a146106ed5780639054e3431461070d57600080fd5b8063561285e4146105a95780636a3ca383146105fc5780637573ef4f1461062c5780637a7664601461031157600080fd5b806325d9897e116101c157806325d9897e1461036957806339514ad21461047957806344c32a61146104ab57806355c85269146104cb57600080fd5b806308ce5f68146102495780630e0229231461027c5780631787e69f146103115780631ae720451461034757600080fd5b366102445760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b600080fd5b34801561025557600080fd5b50610269610264366004612bec565b610ac8565b6040519081526020015b60405180910390f35b34801561028857600080fd5b5061029c610297366004612c25565b610add565b604051610273919060006101208201905060018060a01b0383511682526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010083015161010083015292915050565b34801561031d57600080fd5b5061026961032c366004612c25565b6001600160a01b03166000908152600e602052604090205490565b34801561035357600080fd5b50610367610362366004612c25565b610bbd565b005b34801561037557600080fd5b5061046c610384366004612bec565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516102739190612c42565b34801561048557600080fd5b50601a546001600160401b03165b6040516001600160401b039091168152602001610273565b3480156104b757600080fd5b506103676104c6366004612cd2565b610cba565b3480156104d757600080fd5b506105776104e6366004612c25565b6001600160a01b039081166000908152600f602090815260408083208151610120810183528154909516808652600182015493860184905260028201549286018390526003820154606087015260048201546080870152600582015460a0870152600682015460c0870152600782015460e08701819052600890920154610100909601959095529394919390929091565b604080516001600160a01b0390961686526020860194909452928401919091526060830152608082015260a001610273565b3480156105b557600080fd5b506105c96105c4366004612bec565b610d68565b60405161027391908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561060857600080fd5b5061061c610617366004612c25565b610df6565b6040519015158152602001610273565b34801561063857600080fd5b50610269610647366004612cfe565b610e1b565b34801561065857600080fd5b50610269610667366004612d4d565b610e7f565b34801561067857600080fd5b506106d2610687366004612c25565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b60408051825181526020928301519281019290925201610273565b3480156106f957600080fd5b50610367610708366004612d96565b610ed4565b34801561071957600080fd5b50610269610728366004612dbb565b6113a0565b34801561073957600080fd5b5061074d610748366004612c25565b611488565b6040516102739190612e11565b34801561076657600080fd5b50610367610775366004612e81565b611493565b34801561078657600080fd5b506105c9610795366004612dbb565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561082357600080fd5b50610367610832366004612c25565b6115be565b34801561084357600080fd5b50610367610852366004612ed5565b6116da565b34801561086357600080fd5b50610269610872366004612c25565b6118e7565b34801561088357600080fd5b50610897610892366004612f30565b6118f2565b6040516102739190612fc9565b3480156108b057600080fd5b5061061c6108bf366004612c25565b6001600160a01b031660009081526022602052604090205460ff1690565b3480156108e957600080fd5b5061061c6108f8366004612bec565b6001600160a01b0380821660009081526015602090815260408083209386168352929052205460ff1692915050565b34801561093357600080fd5b50610996610942366004613049565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b0316908201529181015190820152606001610273565b3480156109cd57600080fd5b50600d5463ffffffff16610493565b3480156109e857600080fd5b506109fc6109f7366004612dbb565b6119d9565b60405190518152602001610273565b348015610a1757600080fd5b50610269610a26366004613049565b60009081526010602052604090205490565b348015610a4457600080fd5b5061061c610a53366004612c25565b6001600160a01b03166000908152600e6020526040902054151590565b348015610a7c57600080fd5b5061061c610a8b366004612c25565b611a2b565b348015610a9c57600080fd5b50610269610aab366004612bec565b611a50565b348015610abc57600080fd5b5060205460ff1661061c565b6000610ad48383611a5c565b90505b92915050565b610b3860405180610120016040528060006001600160a01b0316815260200160008019168152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b039081166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e08301526008015461010082015290565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3f9190613062565b6001600160a01b0316336001600160a01b031614610c7057604051635d9044cd60e01b815260040160405180910390fd5b601880546001600160a01b0319166001600160a01b0383169081179091556040517f690e9b982dc9aefaa1cfed186a2d2045a638013d658104102c9437235bee4b6090600090a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3c919061307f565b15610d5a57604051632b37d9d160e21b815260040160405180910390fd5b610d648282611a94565b5050565b610d936040518060800160405280600081526020016000815260200160008152602001600081525090565b610dbe6040518060800160405280600081526020016000815260200160008152602001600081525090565b6000610dca8585611e32565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b60006001610e0383611eb6565b6002811115610e1457610e14612dfb565b1492915050565b6001600160a01b038084166000908152601c60209081526040808320938616835292905290812081836002811115610e5557610e55612dfb565b6002811115610e6657610e66612dfb565b81526020019081526020016000205490505b9392505050565b600080610e8c8585611a5c565b90506000610e9a8686611f0f565b90506000610eae63ffffffff8616846130b7565b90506000610ebc8383611f3a565b9050610ec881856130ce565b98975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f56919061307f565b15610f7457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038116610fb35760405162461bcd60e51b815260206004820152600660248201526521616c6c6f6360d01b604482015260640161023b565b6000610fbe82611eb6565b90506000816002811115610fd457610fd4612dfb565b0361100c5760405162461bcd60e51b81526020600482015260086024820152670858dbdb1b1958dd60c21b604482015260640161023b565b8260000361101957505050565b6001600160a01b0382166000908152600f6020526040812060018101549091859080808061107333867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169190611f51565b600d5461108e908690600160401b900463ffffffff1661200e565b935061109a84866130e1565b600d549095506110bb9087908790640100000000900463ffffffff16612047565b92506110c783866130e1565b94508487600501546110d991906130ce565b6005880155600287015460009015806110ff5750601954600160a01b900463ffffffff16155b6111ca5760058801546002890154600d546019546040516349484d8160e01b81526004810194909452602484019290925263ffffffff600160a01b80830482166044860152600160c01b928390048216606486015283048116608485015291041660a482015273__$8eb3cac1482a31d7a7f2cbe7dc8bdcd821$__906349484d819060c401602060405180830381865af41580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c591906130f4565b6111cd565b60005b90506111dd81896008015461225a565b92506111e98387611f3a565b92506112296111f884886130e1565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690612274565b82156112915782886008015461123f91906130ce565b60088901558754611259906001600160a01b0316846122bc565b915061126582846130e1565b88546001600160a01b03908116600081815260176020526040902054929550611291928692161561234e565b5086546001600160a01b038a8116918891167ff5ded07502b6feba4c13b19a0c6646efd4b4119f439bcbd49076e4f0ed1eec4b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611323573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134791906130f4565b604080516001600160a01b039093168352602083019190915281018f9052606081018990526080810188905260a081018a905260c0810187905260e081018690526101000160405180910390a450505050505050505050565b6001600160a01b038084166000908152601e60209081526040808320868516845282528083209385168352929052908120600381015482036113e6576000915050610e78565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b801561147c576000818152601d602052604090206001810154426001600160401b039091161161146b5760028301546001840154825461145091906130b7565b61145a919061310d565b61146490856130ce565b9350611471565b5061147c565b600201549050611410565b50909695505050505050565b6000610ad782611eb6565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f89190613062565b6001600160a01b0316336001600160a01b0316146115585760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611586908690869060040161312f565b600060405180830381600087803b1580156115a057600080fd5b505af11580156115b4573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156115ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116239190613062565b6001600160a01b0316336001600160a01b0316146116835760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116be57600080fd5b505af11580156116d2573d6000803e3d6000fd5b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611738573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175c919061307f565b1561177a57604051632b37d9d160e21b815260040160405180910390fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e15760405162461bcd60e51b815260206004820152600c60248201526b4f4e4c595f4741544557415960a01b604482015260640161023b565b6018546001600160a01b0385811691161461183e5760405162461bcd60e51b815260206004820152601e60248201527f4f4e4c595f4c315f5354414b494e475f5448524f5547485f4252494447450000604482015260640161023b565b60008061184d838501856131a4565b909250905060ff8216611882576000818060200190518101906118709190613255565b905061187c86826123c4565b506116d2565b60001960ff8316016118b0576000818060200190518101906118a491906132a2565b905061187c86826123d0565b60405162461bcd60e51b815260206004820152600c60248201526b494e56414c49445f434f444560a01b604482015260640161023b565b6000610ad782612740565b604080516000815260208101909152606090826001600160401b0381111561191c5761191c61315e565b60405190808252806020026020018201604052801561194f57816020015b606081526020019060019003908161193a5790505b50915060005b838110156119d1576119ac3086868481811061197357611973613302565b90506020028101906119859190613318565b856040516020016119989392919061335e565b60405160208183030381529060405261278b565b8382815181106119be576119be613302565b6020908102919091010152600101611955565b505092915050565b6040805160208101909152600081526040805160208101909152600081526000611a038686611e32565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b600080611a3783611eb6565b6002811115611a4857611a48612dfb565b141592915050565b6000610ad48383611f0f565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610ad491906130e1565b6000611a9f83611eb6565b90506001816002811115611ab557611ab5612dfb565b14611aec5760405162461bcd60e51b81526020600482015260076024820152662161637469766560c81b604482015260640161023b565b6001600160a01b038381166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e0830152600801546101008201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bef91906130f4565b608082018190526060820151600091611c079161225a565b9050600082600001516001600160a01b0316336001600160a01b03161480611c78575082516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600090815260156020908152604080832093909416825291909152205460ff165b600d54909150600160801b900463ffffffff1682111580611c9b57506040830151155b15611cd55780611cd55760405162461bcd60e51b8152602060048201526005602482015264042c2eae8d60db1b604482015260640161023b565b60808301516001600160a01b0387166000908152600f6020526040908190206004019190915583015115611db957808015611d0f57508415155b15611d2757611d22868460000151612801565b611d36565b611d3483602001516128e7565b505b60408084015184516001600160a01b03166000908152600e6020529190912060010154611d6391906130e1565b83516001600160a01b03166000908152600e602090815260408083206001019390935582860151818701518352601090915291902054611da391906130e1565b6020808501516000908152601090915260409020555b60208084015184516080808701516040808901518151928352958201959095523394810194909452606084018990528415908401526001600160a01b03808a16939116907ff6725dd105a6fc88bb79a6e4627f128577186c567a17c94818d201c2a4ce14039060a00160405180910390a4505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611e8b57506001600160a01b0382166000908152601460205260409020610ad7565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610ad7565b6001600160a01b038082166000908152600f6020526040812080549192909116611ee35750600092915050565b600381015415801590611ef857506004810154155b15611f065750600192915050565b50600292915050565b600080611f1c8484611e32565b905080600501548160020154611f3291906130e1565b949350505050565b600081831115611f4a5781610ad4565b5090919050565b8015612009576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af1158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd1919061307f565b6120095760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161023b565b505050565b60008061201b8484612975565b9050610ad4817f000000000000000000000000000000000000000000000000000000000000000061121a565b60008260000361205957506000610e78565b7f00000000000000000000000000000000000000000000000000000000000000006000831580159061209357506001600160a01b03821615155b90508080156121065750604051634c4ea0ed60e01b8152600481018790526001600160a01b03831690634c4ea0ed90602401602060405180830381865afa1580156120e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612106919061307f565b1561224e5760006121178686612975565b90508015612244576040516307470bfb60e21b8152600481018890526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631d1c2fec906024016020604051808303816000875af1158015612186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121aa91906130f4565b506121e283827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906129c7565b60405163102ae65160e31b815260048101889052602481018290526001600160a01b03841690638157328890604401600060405180830381600087803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050505b9250610e78915050565b50600095945050505050565b600081831161226a576000610ad4565b610ad482846130e1565b8015610d6457604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156116be57600080fd5b6001600160a01b03821660009081526014602052604081206002810154829190158015906122fb57508054600160401b900463ffffffff16620f424010155b156123465780546000906123219063ffffffff600160401b9091048116908790612a0216565b905061232d81866130e1565b925082826002015461233f91906130ce565b6002830155505b509392505050565b8260000361235b57505050565b801561236b576120098284612a69565b6001600160a01b03808316600090815260176020526040902054166123be81156123955781612397565b835b857f00000000000000000000000000000000000000000000000000000000000000006121d2565b50505050565b80516120098184612a69565b80516001600160a01b039081166000908152601b602090815260408083207f0000000000000000000000000000000000000000000000000000000000000000909416835292905290812060030154600160601b90046001600160401b031690036124695760405162461bcd60e51b815260206004820152600a60248201526910b83937bb34b9b4b7b760b11b604482015260640161023b565b80516001600160a01b03908116600090815260146020908152604080832082860151909416835260048401909152902060028201541580156124bb575060038201541515806124bb5750600682015415155b156125b5577f0000000000000000000000000000000000000000000000000000000000000000602084015160405163a9059cbb60e01b81526001600160a01b0391821660048201526024810187905291169063a9059cbb906044016020604051808303816000875af1158015612535573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612559919061307f565b5082602001516001600160a01b031683600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de866040516125a791815260200190565b60405180910390a350505050565b60008260020154600014806125d1575082600501548360020154145b61260757826005015483600201546125e991906130e1565b60038401546125f890876130b7565b612602919061310d565b612609565b845b905080158061261f5750670de0b6b3a764000085105b156126ae576126548460200151866121d27f000000000000000000000000000000000000000000000000000000000000000090565b83602001516001600160a01b031684600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de876040516126a191815260200190565b60405180910390a3612739565b8483600201546126be91906130ce565b600284015560038301546126d39082906130ce565b600384015581546126e59082906130ce565b82556020808501518551604080518981529384018590526001600160a01b039283169391909216917fcd0366dce5247d874ffc60a762aa7abbb82c1695bbb171609c1b8861e279eb73910160405180910390a35b5050505050565b6001600160a01b0381166000908152600e6020526040812060028101546001820154600483015492549192909161277791906130e1565b61278191906130e1565b610ad791906130e1565b6060600080846001600160a01b0316846040516127a89190613385565b600060405180830381855af49150503d80600081146127e3576040519150601f19603f3d011682016040523d82523d6000602084013e6127e8565b606091505b50915091506127f8858383612ae8565b95945050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000604051636dba849360e11b81526001600160a01b038581166004830152919091169063db750926906024016020604051808303816000875af115801561286e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289291906130f4565b9050806000036128a157505050565b60006128ad8383612b44565b905060006128bb82846130e1565b6001600160a01b038086166000908152601760205260409020549192506127399183918791161561234e565b6040516377561f0760e11b8152600481018290526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063eeac3e0e906024016020604051808303816000875af1158015612951573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906130f4565b600061298482620f4240101590565b82906129a657604051633dc311df60e01b815260040161023b91815260200190565b506129bd6129b783620f42406130e1565b84612a02565b610ad490846130e1565b80156120095760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb90604401611f8e565b6000612a1183620f4240101590565b80612a245750612a2482620f4240101590565b83839091612a4e5760405163768bf0eb60e11b81526004810192909252602482015260440161023b565b50620f42409050612a5f83856130b7565b610ad4919061310d565b6001600160a01b0382166000908152600e6020526040902054612a8d9082906130ce565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc290612adc9084815260200190565b60405180910390a25050565b606082612afd57612af882612bab565b610e78565b8151158015612b1457506001600160a01b0384163b155b15612b3d57604051639996b31560e01b81526001600160a01b038516600482015260240161023b565b5080610e78565b6001600160a01b0382166000908152601460205260408120600281015482919015801590612b8457508054640100000000900463ffffffff16620f424010155b156123465780546000906123219063ffffffff6401000000009091048116908790612a0216565b805115612bbb5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b0381168114612bd457600080fd5b60008060408385031215612bff57600080fd5b8235612c0a81612bd7565b91506020830135612c1a81612bd7565b809150509250929050565b600060208284031215612c3757600080fd5b8135610ad481612bd7565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151612cb060c084018263ffffffff169052565b5060e0830151612ccb60e08401826001600160401b03169052565b5092915050565b60008060408385031215612ce557600080fd5b8235612cf081612bd7565b946020939093013593505050565b600080600060608486031215612d1357600080fd5b8335612d1e81612bd7565b92506020840135612d2e81612bd7565b9150604084013560038110612d4257600080fd5b809150509250925092565b600080600060608486031215612d6257600080fd5b8335612d6d81612bd7565b92506020840135612d7d81612bd7565b9150604084013563ffffffff81168114612d4257600080fd5b60008060408385031215612da957600080fd5b823591506020830135612c1a81612bd7565b600080600060608486031215612dd057600080fd5b8335612ddb81612bd7565b92506020840135612deb81612bd7565b91506040840135612d4281612bd7565b634e487b7160e01b600052602160045260246000fd5b6020810160038310612e3357634e487b7160e01b600052602160045260246000fd5b91905290565b60008083601f840112612e4b57600080fd5b5081356001600160401b03811115612e6257600080fd5b602083019150836020828501011115612e7a57600080fd5b9250929050565b600080600060408486031215612e9657600080fd5b8335612ea181612bd7565b925060208401356001600160401b03811115612ebc57600080fd5b612ec886828701612e39565b9497909650939450505050565b60008060008060608587031215612eeb57600080fd5b8435612ef681612bd7565b93506020850135925060408501356001600160401b03811115612f1857600080fd5b612f2487828801612e39565b95989497509550505050565b60008060208385031215612f4357600080fd5b82356001600160401b03811115612f5957600080fd5b8301601f81018513612f6a57600080fd5b80356001600160401b03811115612f8057600080fd5b8560208260051b8401011115612f9557600080fd5b6020919091019590945092505050565b60005b83811015612fc0578181015183820152602001612fa8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561303d57603f198786030184528151805180875261301a816020890160208501612fa5565b601f01601f19169590950160209081019550938401939190910190600101612ff1565b50929695505050505050565b60006020828403121561305b57600080fd5b5035919050565b60006020828403121561307457600080fd5b8151610ad481612bd7565b60006020828403121561309157600080fd5b81518015158114610ad457600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610ad757610ad76130a1565b80820180821115610ad757610ad76130a1565b81810381811115610ad757610ad76130a1565b60006020828403121561310657600080fd5b5051919050565b60008261312a57634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561319c5761319c61315e565b604052919050565b600080604083850312156131b757600080fd5b823560ff811681146131c857600080fd5b915060208301356001600160401b038111156131e357600080fd5b8301601f810185136131f457600080fd5b80356001600160401b0381111561320d5761320d61315e565b613220601f8201601f1916602001613174565b81815286602083850101111561323557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312801561326857600080fd5b50604051602081016001600160401b038111828210171561328b5761328b61315e565b604052825161329981612bd7565b81529392505050565b600060408284031280156132b557600080fd5b50604080519081016001600160401b03811182821017156132d8576132d861315e565b60405282516132e681612bd7565b815260208301516132f681612bd7565b60208201529392505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261332f57600080fd5b8301803591506001600160401b0382111561334957600080fd5b602001915036819003821315612e7a57600080fd5b82848237600083820160008152835161337b818360208801612fa5565b0195945050505050565b60008251613397818460208701612fa5565b919091019291505056fea264697066735822122038ad83d20c219353421029f1ad8c4f7667d5f0e86af1579c64603bb56827d86064736f6c634300081b0033", + "linkReferences": { + "contracts/staking/libraries/ExponentialRebates.sol": { + "ExponentialRebates": [ + { + "length": 20, + "start": 5879 + } + ] + } + }, + "deployedLinkReferences": { + "contracts/staking/libraries/ExponentialRebates.sol": { + "ExponentialRebates": [ + { + "length": 20, + "start": 4455 + } + ] + } + } +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow.json new file mode 100644 index 000000000..4f10cc208 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow.json @@ -0,0 +1,769 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "PaymentsEscrow", + "sourceName": "contracts/payments/PaymentsEscrow.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "revokeCollectorThawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawEscrowThawingPeriod", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balanceBefore", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "balanceAfter", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInconsistentCollection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minAllowance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minBalance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientBalance", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowNotThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "currentTimestamp", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "PaymentsEscrowStillThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "thawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxThawingPeriod", + "type": "uint256" + } + ], + "name": "PaymentsEscrowThawingPeriodTooLong", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "AuthorizedCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "CancelThaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "CancelThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "EscrowCollected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "RevokeCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "Thaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "ThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Withdraw", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "REVOKE_COLLECTOR_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "WITHDRAW_ESCROW_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + } + ], + "name": "approveCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "authorizedCollectors", + "outputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "cancelThawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "deposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "depositTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "escrowAccounts", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "getBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + } + ], + "name": "revokeCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "thawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b506040516120c73803806120c78339810160408190526100309161046b565b826001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b2906103a1565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e5906103a1565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e906103a1565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b6020820152610158906103a1565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b6020820152610190906103a1565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb906103a1565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b6020820152610209906103a1565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b6020820152610245906103a1565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a906103a1565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450816276a7008082111561035c57604051635c0f65a160e01b815260048101929092526024820152604401610071565b508190506276a7008082111561038e57604051635c0f65a160e01b815260048101929092526024820152604401610071565b50506101c0919091526101e05250610510565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103dc91815260200190565b602060405180830381865afa1580156103f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041d91906104a0565b9050826001600160a01b0382166104485760405163218f5add60e11b815260040161007191906104c2565b5092915050565b80516001600160a01b038116811461046657600080fd5b919050565b60008060006060848603121561048057600080fd5b6104898461044f565b602085015160409095015190969495509392505050565b6000602082840312156104b257600080fd5b6104bb8261044f565b9392505050565b602081526000825180602084015260005b818110156104f057602081860181015160408684010152016104d3565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051611ad26105f5600039600081816101e00152610abb015260008181610193015261039d01526000505060005050600050506000505060005050600081816102fa0152818161041601528181610589015281816106380152818161076e0152818161094901528181610b2d01528181610d71015261131b01526000505060008181610fa6015261104e015260005050600081816108da01528181610eea01528181610f77015281816110c401526114130152611ad26000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json new file mode 100644 index 000000000..4f10cc208 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json @@ -0,0 +1,769 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "PaymentsEscrow", + "sourceName": "contracts/payments/PaymentsEscrow.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "revokeCollectorThawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawEscrowThawingPeriod", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balanceBefore", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "balanceAfter", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInconsistentCollection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minAllowance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minBalance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientBalance", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowNotThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "currentTimestamp", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "PaymentsEscrowStillThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "thawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxThawingPeriod", + "type": "uint256" + } + ], + "name": "PaymentsEscrowThawingPeriodTooLong", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "AuthorizedCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "CancelThaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "CancelThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "EscrowCollected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "RevokeCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "Thaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "ThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Withdraw", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "REVOKE_COLLECTOR_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "WITHDRAW_ESCROW_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + } + ], + "name": "approveCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "authorizedCollectors", + "outputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "cancelThawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "deposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "depositTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "escrowAccounts", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "getBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + } + ], + "name": "revokeCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "thawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b506040516120c73803806120c78339810160408190526100309161046b565b826001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b2906103a1565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e5906103a1565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e906103a1565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b6020820152610158906103a1565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b6020820152610190906103a1565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb906103a1565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b6020820152610209906103a1565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b6020820152610245906103a1565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a906103a1565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450816276a7008082111561035c57604051635c0f65a160e01b815260048101929092526024820152604401610071565b508190506276a7008082111561038e57604051635c0f65a160e01b815260048101929092526024820152604401610071565b50506101c0919091526101e05250610510565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103dc91815260200190565b602060405180830381865afa1580156103f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041d91906104a0565b9050826001600160a01b0382166104485760405163218f5add60e11b815260040161007191906104c2565b5092915050565b80516001600160a01b038116811461046657600080fd5b919050565b60008060006060848603121561048057600080fd5b6104898461044f565b602085015160409095015190969495509392505050565b6000602082840312156104b257600080fd5b6104bb8261044f565b9392505050565b602081526000825180602084015260005b818110156104f057602081860181015160408684010152016104d3565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051611ad26105f5600039600081816101e00152610abb015260008181610193015261039d01526000505060005050600050506000505060005050600081816102fa0152818161041601528181610589015281816106380152818161076e0152818161094901528181610b2d01528181610d71015261131b01526000505060008181610fa6015261104e015260005050600081816108da01528181610eea01528181610f77015281816110c401526114130152611ad26000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#GraphProxy.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager.json new file mode 100644 index 000000000..87ac4c282 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager.json @@ -0,0 +1,635 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "RewardsManager", + "sourceName": "contracts/rewards/RewardsManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "RewardsAssigned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "RewardsDenied", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "sinceBlock", + "type": "uint256" + } + ], + "name": "RewardsDenylistUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldSubgraphService", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [], + "name": "accRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "accRewardsPerSignalLastBlockUpdated", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "name": "calcRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "denylist", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsForSubgraph", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsPerAllocatedToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNewRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "getRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isDenied", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "issuancePerBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumSubgraphSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphAllocationUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphSignalUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "_deny", + "type": "bool" + } + ], + "name": "setDenied", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32[]", + "name": "_subgraphDeploymentID", + "type": "bytes32[]" + }, + { + "internalType": "bool[]", + "name": "_deny", + "type": "bool[]" + } + ], + "name": "setDeniedMany", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_issuancePerBlock", + "type": "uint256" + } + ], + "name": "setIssuancePerBlock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumSubgraphSignal", + "type": "uint256" + } + ], + "name": "setMinimumSubgraphSignal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphAvailabilityOracle", + "type": "address" + } + ], + "name": "setSubgraphAvailabilityOracle", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphAvailabilityOracle", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "contract IRewardsIssuer", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "subgraphs", + "outputs": [ + { + "internalType": "uint256", + "name": "accRewardsForSubgraph", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsForSubgraphSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerSignalSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "takeRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "updateAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051611eb861017360003980610fe1525080610fb8525080610f8f528061194f525080610f6652806116d2525080610f3d525080610f14525080610eeb52806115165250611eb86000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager_Instance.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager_Instance.json new file mode 100644 index 000000000..87ac4c282 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/RewardsManager#RewardsManager_Instance.json @@ -0,0 +1,635 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "RewardsManager", + "sourceName": "contracts/rewards/RewardsManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "RewardsAssigned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "RewardsDenied", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "sinceBlock", + "type": "uint256" + } + ], + "name": "RewardsDenylistUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldSubgraphService", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [], + "name": "accRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "accRewardsPerSignalLastBlockUpdated", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "name": "calcRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "denylist", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsForSubgraph", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsPerAllocatedToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNewRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "getRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isDenied", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "issuancePerBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumSubgraphSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphAllocationUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphSignalUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "_deny", + "type": "bool" + } + ], + "name": "setDenied", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32[]", + "name": "_subgraphDeploymentID", + "type": "bytes32[]" + }, + { + "internalType": "bool[]", + "name": "_deny", + "type": "bool[]" + } + ], + "name": "setDeniedMany", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_issuancePerBlock", + "type": "uint256" + } + ], + "name": "setIssuancePerBlock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumSubgraphSignal", + "type": "uint256" + } + ], + "name": "setMinimumSubgraphSignal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphAvailabilityOracle", + "type": "address" + } + ], + "name": "setSubgraphAvailabilityOracle", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphAvailabilityOracle", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "contract IRewardsIssuer", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "subgraphs", + "outputs": [ + { + "internalType": "uint256", + "name": "accRewardsForSubgraph", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsForSubgraphSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerSignalSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "takeRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "updateAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051611eb861017360003980610fe1525080610fb8525080610f8f528061194f525080610f6652806116d2525080610f3d525080610f14525080610eeb52806115165250611eb86000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/artifacts/TAPCollector#TAPCollector.json b/packages/horizon/ignition/deployments/chain-11155111/artifacts/TAPCollector#TAPCollector.json new file mode 100644 index 000000000..94f0189f7 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/artifacts/TAPCollector#TAPCollector.json @@ -0,0 +1,450 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TAPCollector", + "sourceName": "contracts/payments/collectors/TAPCollector.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "eip712Name", + "type": "string" + }, + { + "internalType": "string", + "name": "eip712Version", + "type": "string" + }, + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ECDSAInvalidSignature", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + } + ], + "name": "ECDSAInvalidSignatureLength", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "ECDSAInvalidSignatureS", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidShortString", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "str", + "type": "string" + } + ], + "name": "StringTooLong", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + } + ], + "name": "TAPCollectorCallerNotDataService", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensCollected", + "type": "uint256" + } + ], + "name": "TAPCollectorInconsistentRAVTokens", + "type": "error" + }, + { + "anonymous": false, + "inputs": [], + "name": "EIP712DomainChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensReceiver", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "PaymentCollected", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "collect", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "eip712Domain", + "outputs": [ + { + "internalType": "bytes1", + "name": "fields", + "type": "bytes1" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "version", + "type": "string" + }, + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "verifyingContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "salt", + "type": "bytes32" + }, + { + "internalType": "uint256[]", + "name": "extensions", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint64", + "name": "timestampNs", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "valueAggregate", + "type": "uint128" + }, + { + "internalType": "bytes", + "name": "metadata", + "type": "bytes" + } + ], + "internalType": "struct ITAPCollector.ReceiptAggregateVoucher", + "name": "rav", + "type": "tuple" + } + ], + "name": "encodeRAV", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint64", + "name": "timestampNs", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "valueAggregate", + "type": "uint128" + }, + { + "internalType": "bytes", + "name": "metadata", + "type": "bytes" + } + ], + "internalType": "struct ITAPCollector.ReceiptAggregateVoucher", + "name": "rav", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct ITAPCollector.SignedRAV", + "name": "signedRAV", + "type": "tuple" + } + ], + "name": "recoverRAVSigner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "address", + "name": "payer", + "type": "address" + } + ], + "name": "tokensCollected", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6102a060405234801561001157600080fd5b506040516119ae3803806119ae833981016040819052610030916105d9565b80838361003e8260006103db565b6101205261004d8160016103db565b61014052815160208084019190912060e052815190820120610100524660a0526100da60e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526001600160a01b03811661012c5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101e05260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526101649061040e565b6001600160a01b0316610160526040805180820190915260078152665374616b696e6760c81b60208201526101989061040e565b6001600160a01b03166101805260408051808201909152600d81526c47726170685061796d656e747360981b60208201526101d29061040e565b6001600160a01b03166101a05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261020d9061040e565b6001600160a01b03166101c05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b60208201526102469061040e565b6001600160a01b03166102005260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526102819061040e565b6001600160a01b0316610220526040805180820190915260118152704772617068546f6b656e4761746577617960781b60208201526102bf9061040e565b6001600160a01b03166102405260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b60208201526102fb9061040e565b6001600160a01b03166102605260408051808201909152600881526721bab930ba34b7b760c11b60208201526103309061040e565b6001600160a01b039081166102808190526101e05161018051610160516101a0516101c0516102005161022051610240516102605160408051968c168752948b166020870152928a1685850152908916606085015288166080840152871660a083015260c0820195909552935192851694918216939116917fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a439181900360e00190a45050505061081e565b60006020835110156103f7576103f0836104bc565b9050610408565b8161040284826106db565b5060ff90505b92915050565b6000806101e0516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161044991815260200190565b602060405180830381865afa158015610466573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048a9190610799565b9050826001600160a01b0382166104b55760405163218f5add60e11b815260040161012391906107e7565b5092915050565b600080829050601f815111156104e7578260405163305a27a960e01b815260040161012391906107e7565b80516104f2826107fa565b179392505050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561052b578181015183820152602001610513565b50506000910152565b600082601f83011261054557600080fd5b81516001600160401b0381111561055e5761055e6104fa565b604051601f8201601f19908116603f011681016001600160401b038111828210171561058c5761058c6104fa565b6040528181528382016020018510156105a457600080fd5b6105b5826020830160208701610510565b949350505050565b80516001600160a01b03811681146105d457600080fd5b919050565b6000806000606084860312156105ee57600080fd5b83516001600160401b0381111561060457600080fd5b61061086828701610534565b602086015190945090506001600160401b0381111561062e57600080fd5b61063a86828701610534565b925050610649604085016105bd565b90509250925092565b600181811c9082168061066657607f821691505b60208210810361068657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156106d657806000526020600020601f840160051c810160208510156106b35750805b601f840160051c820191505b818110156106d357600081556001016106bf565b50505b505050565b81516001600160401b038111156106f4576106f46104fa565b610708816107028454610652565b8461068c565b6020601f82116001811461073c57600083156107245750848201515b600019600385901b1c1916600184901b1784556106d3565b600084815260208120601f198516915b8281101561076c578785015182556020948501946001909201910161074c565b508482101561078a5786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b6000602082840312156107ab57600080fd5b6107b4826105bd565b9392505050565b600081518084526107d3816020860160208601610510565b601f01601f19169290920160200192915050565b6020815260006107b460208301846107bb565b805160208083015191908110156106865760001960209190910360031b1b16919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516110e36108cb600039600050506000505060005050600050506000505060005050600061024f0152600050506000505060005050600061049201526000610460015260006108940152600061086c015260006107c7015260006107f10152600061081b01526110e36000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80631ef518f21461005c5780637f07d2831461008c57806384b0196e146100ad5780638821603c146100c8578063cfdb35bd146100db575b600080fd5b61006f61006a3660046109dc565b61010c565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a366004610b23565b610125565b604051908152602001610083565b6100b5610372565b6040516100839796959493929190610bc6565b61009f6100d6366004610c5e565b6103b8565b61009f6100e9366004610cb0565b600260209081526000938452604080852082529284528284209052825290205481565b600061011f61011a83610db8565b6103cb565b92915050565b60008060008380602001905181019061013e9190610e75565b815151919350915033906001600160a01b0381168214610189576040516347666ba360e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50508151516000610199846103cb565b84516020808201516060909201516001600160a01b038087166000908152600284526040808220838716835285528082209287168252919093529091205492935090916001600160801b03909116908181808211610213576040516308e467d960e31b815260048101929092526024820152604401610180565b50600090506102228284610fb1565b9050600061023082896103f2565b905081156102f3576040516343edff4160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906387dbfe829061028e908f908a908a9088908e908990600401610fda565b600060405180830381600087803b1580156102a857600080fd5b505af11580156102bc573d6000803e3d6000fd5b5050506001600160a01b0380891660009081526002602090815260408083208a851684528252808320938b16835292905220859055505b866001600160a01b0316866001600160a01b03168d600281111561031957610319610fc4565b604080516001600160a01b038a168152602081018790529081018590527ffadd34108e3c00b000a046b272ee080bb1755b91078c0ef5200c0b7da6132bd19060600160405180910390a4509a9950505050505050505050565b600060608060008060006060610386610459565b61038e61048b565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061011f6103c68361102e565b6104b8565b6000806103db83600001516104b8565b90506103eb81846020015161056f565b9392505050565b600061040183620f4240101590565b80610414575061041482620f4240101590565b8383909161043e5760405163768bf0eb60e11b815260048101929092526024820152604401610180565b50620f4240905061044f838561103a565b6103eb9190611051565b60606104867f00000000000000000000000000000000000000000000000000000000000000006000610599565b905090565b60606104867f00000000000000000000000000000000000000000000000000000000000000006001610599565b600061011f7fe502a96d6aaed328ceacc76a5f627b9823162f5a205dab5a702b40073a6778428360000151846020015185604001518660600151876080015180519060200120604051602001610554969594939291909586526001600160a01b0394851660208701529290931660408501526001600160401b031660608401526001600160801b0391909116608083015260a082015260c00190565b60405160208183030381529060405280519060200120610644565b60008060008061057f8686610671565b92509250925061058f82826106be565b5090949350505050565b606060ff83146105b3576105ac8361077b565b905061011f565b8180546105bf90611073565b80601f01602080910402602001604051908101604052809291908181526020018280546105eb90611073565b80156106385780601f1061060d57610100808354040283529160200191610638565b820191906000526020600020905b81548152906001019060200180831161061b57829003601f168201915b5050505050905061011f565b600061011f6106516107ba565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600083516041036106ab5760208401516040850151606086015160001a61069d888285856108e5565b9550955095505050506106b7565b50508151600091506002905b9250925092565b60008260038111156106d2576106d2610fc4565b036106db575050565b60018260038111156106ef576106ef610fc4565b0361070d5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561072157610721610fc4565b036107425760405163fce698f760e01b815260048101829052602401610180565b600382600381111561075657610756610fc4565b03610777576040516335e2f38360e21b815260048101829052602401610180565b5050565b60606000610788836109b4565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561081357507f000000000000000000000000000000000000000000000000000000000000000046145b1561083d57507f000000000000000000000000000000000000000000000000000000000000000090565b610486604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561092057506000915060039050826109aa565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610974573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109a0575060009250600191508290506109aa565b9250600091508190505b9450945094915050565b600060ff8216601f81111561011f57604051632cd44ac360e21b815260040160405180910390fd5b6000602082840312156109ee57600080fd5b81356001600160401b03811115610a0457600080fd5b8201604081850312156103eb57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715610a4e57610a4e610a16565b60405290565b604080519081016001600160401b0381118282101715610a4e57610a4e610a16565b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a16565b604052919050565b60006001600160401b03821115610abf57610abf610a16565b50601f01601f191660200190565b600082601f830112610ade57600080fd5b8135610af1610aec82610aa6565b610a76565b818152846020838601011115610b0657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215610b3657600080fd5b823560038110610b4557600080fd5b915060208301356001600160401b03811115610b6057600080fd5b610b6c85828601610acd565b9150509250929050565b60005b83811015610b91578181015183820152602001610b79565b50506000910152565b60008151808452610bb2816020860160208601610b76565b601f01601f19169290920160200192915050565b60ff60f81b8816815260e060208201526000610be560e0830189610b9a565b8281036040840152610bf78189610b9a565b606084018890526001600160a01b038716608085015260a0840186905283810360c08501528451808252602080870193509091019060005b81811015610c4d578351835260209384019390920191600101610c2f565b50909b9a5050505050505050505050565b600060208284031215610c7057600080fd5b81356001600160401b03811115610c8657600080fd5b820160a081850312156103eb57600080fd5b6001600160a01b0381168114610cad57600080fd5b50565b600080600060608486031215610cc557600080fd5b8335610cd081610c98565b92506020840135610ce081610c98565b91506040840135610cf081610c98565b809150509250925092565b6001600160401b0381168114610cad57600080fd5b6001600160801b0381168114610cad57600080fd5b600060a08284031215610d3757600080fd5b610d3f610a2c565b90508135610d4c81610c98565b81526020820135610d5c81610c98565b60208201526040820135610d6f81610cfb565b60408201526060820135610d8281610d10565b606082015260808201356001600160401b03811115610da057600080fd5b610dac84828501610acd565b60808301525092915050565b600060408236031215610dca57600080fd5b610dd2610a54565b82356001600160401b03811115610de857600080fd5b610df436828601610d25565b82525060208301356001600160401b03811115610e1057600080fd5b610e1c36828601610acd565b60208301525092915050565b600082601f830112610e3957600080fd5b8151610e47610aec82610aa6565b818152846020838601011115610e5c57600080fd5b610e6d826020830160208701610b76565b949350505050565b60008060408385031215610e8857600080fd5b82516001600160401b03811115610e9e57600080fd5b830160408186031215610eb057600080fd5b610eb8610a54565b81516001600160401b03811115610ece57600080fd5b820160a08188031215610ee057600080fd5b610ee8610a2c565b8151610ef381610c98565b81526020820151610f0381610c98565b60208201526040820151610f1681610cfb565b60408201526060820151610f2981610d10565b606082015260808201516001600160401b03811115610f4757600080fd5b610f5389828501610e28565b60808301525082525060208201516001600160401b03811115610f7557600080fd5b610f8187828501610e28565b602083810191909152959095015190969095509350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011f5761011f610f9b565b634e487b7160e01b600052602160045260246000fd5b60c0810160038810610ffc57634e487b7160e01b600052602160045260246000fd5b9681526001600160a01b03958616602082015293851660408501526060840192909252909216608082015260a0015290565b600061011f3683610d25565b808202811582820484141761011f5761011f610f9b565b60008261106e57634e487b7160e01b600052601260045260246000fd5b500490565b600181811c9082168061108757607f821691505b6020821081036110a757634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212204ea11b7f590e7303a0b1850b4cd59148c357bb48498bdb2606c6e97c057012e264736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c80631ef518f21461005c5780637f07d2831461008c57806384b0196e146100ad5780638821603c146100c8578063cfdb35bd146100db575b600080fd5b61006f61006a3660046109dc565b61010c565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a366004610b23565b610125565b604051908152602001610083565b6100b5610372565b6040516100839796959493929190610bc6565b61009f6100d6366004610c5e565b6103b8565b61009f6100e9366004610cb0565b600260209081526000938452604080852082529284528284209052825290205481565b600061011f61011a83610db8565b6103cb565b92915050565b60008060008380602001905181019061013e9190610e75565b815151919350915033906001600160a01b0381168214610189576040516347666ba360e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50508151516000610199846103cb565b84516020808201516060909201516001600160a01b038087166000908152600284526040808220838716835285528082209287168252919093529091205492935090916001600160801b03909116908181808211610213576040516308e467d960e31b815260048101929092526024820152604401610180565b50600090506102228284610fb1565b9050600061023082896103f2565b905081156102f3576040516343edff4160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906387dbfe829061028e908f908a908a9088908e908990600401610fda565b600060405180830381600087803b1580156102a857600080fd5b505af11580156102bc573d6000803e3d6000fd5b5050506001600160a01b0380891660009081526002602090815260408083208a851684528252808320938b16835292905220859055505b866001600160a01b0316866001600160a01b03168d600281111561031957610319610fc4565b604080516001600160a01b038a168152602081018790529081018590527ffadd34108e3c00b000a046b272ee080bb1755b91078c0ef5200c0b7da6132bd19060600160405180910390a4509a9950505050505050505050565b600060608060008060006060610386610459565b61038e61048b565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061011f6103c68361102e565b6104b8565b6000806103db83600001516104b8565b90506103eb81846020015161056f565b9392505050565b600061040183620f4240101590565b80610414575061041482620f4240101590565b8383909161043e5760405163768bf0eb60e11b815260048101929092526024820152604401610180565b50620f4240905061044f838561103a565b6103eb9190611051565b60606104867f00000000000000000000000000000000000000000000000000000000000000006000610599565b905090565b60606104867f00000000000000000000000000000000000000000000000000000000000000006001610599565b600061011f7fe502a96d6aaed328ceacc76a5f627b9823162f5a205dab5a702b40073a6778428360000151846020015185604001518660600151876080015180519060200120604051602001610554969594939291909586526001600160a01b0394851660208701529290931660408501526001600160401b031660608401526001600160801b0391909116608083015260a082015260c00190565b60405160208183030381529060405280519060200120610644565b60008060008061057f8686610671565b92509250925061058f82826106be565b5090949350505050565b606060ff83146105b3576105ac8361077b565b905061011f565b8180546105bf90611073565b80601f01602080910402602001604051908101604052809291908181526020018280546105eb90611073565b80156106385780601f1061060d57610100808354040283529160200191610638565b820191906000526020600020905b81548152906001019060200180831161061b57829003601f168201915b5050505050905061011f565b600061011f6106516107ba565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600083516041036106ab5760208401516040850151606086015160001a61069d888285856108e5565b9550955095505050506106b7565b50508151600091506002905b9250925092565b60008260038111156106d2576106d2610fc4565b036106db575050565b60018260038111156106ef576106ef610fc4565b0361070d5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561072157610721610fc4565b036107425760405163fce698f760e01b815260048101829052602401610180565b600382600381111561075657610756610fc4565b03610777576040516335e2f38360e21b815260048101829052602401610180565b5050565b60606000610788836109b4565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561081357507f000000000000000000000000000000000000000000000000000000000000000046145b1561083d57507f000000000000000000000000000000000000000000000000000000000000000090565b610486604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561092057506000915060039050826109aa565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610974573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109a0575060009250600191508290506109aa565b9250600091508190505b9450945094915050565b600060ff8216601f81111561011f57604051632cd44ac360e21b815260040160405180910390fd5b6000602082840312156109ee57600080fd5b81356001600160401b03811115610a0457600080fd5b8201604081850312156103eb57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715610a4e57610a4e610a16565b60405290565b604080519081016001600160401b0381118282101715610a4e57610a4e610a16565b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a16565b604052919050565b60006001600160401b03821115610abf57610abf610a16565b50601f01601f191660200190565b600082601f830112610ade57600080fd5b8135610af1610aec82610aa6565b610a76565b818152846020838601011115610b0657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215610b3657600080fd5b823560038110610b4557600080fd5b915060208301356001600160401b03811115610b6057600080fd5b610b6c85828601610acd565b9150509250929050565b60005b83811015610b91578181015183820152602001610b79565b50506000910152565b60008151808452610bb2816020860160208601610b76565b601f01601f19169290920160200192915050565b60ff60f81b8816815260e060208201526000610be560e0830189610b9a565b8281036040840152610bf78189610b9a565b606084018890526001600160a01b038716608085015260a0840186905283810360c08501528451808252602080870193509091019060005b81811015610c4d578351835260209384019390920191600101610c2f565b50909b9a5050505050505050505050565b600060208284031215610c7057600080fd5b81356001600160401b03811115610c8657600080fd5b820160a081850312156103eb57600080fd5b6001600160a01b0381168114610cad57600080fd5b50565b600080600060608486031215610cc557600080fd5b8335610cd081610c98565b92506020840135610ce081610c98565b91506040840135610cf081610c98565b809150509250925092565b6001600160401b0381168114610cad57600080fd5b6001600160801b0381168114610cad57600080fd5b600060a08284031215610d3757600080fd5b610d3f610a2c565b90508135610d4c81610c98565b81526020820135610d5c81610c98565b60208201526040820135610d6f81610cfb565b60408201526060820135610d8281610d10565b606082015260808201356001600160401b03811115610da057600080fd5b610dac84828501610acd565b60808301525092915050565b600060408236031215610dca57600080fd5b610dd2610a54565b82356001600160401b03811115610de857600080fd5b610df436828601610d25565b82525060208301356001600160401b03811115610e1057600080fd5b610e1c36828601610acd565b60208301525092915050565b600082601f830112610e3957600080fd5b8151610e47610aec82610aa6565b818152846020838601011115610e5c57600080fd5b610e6d826020830160208701610b76565b949350505050565b60008060408385031215610e8857600080fd5b82516001600160401b03811115610e9e57600080fd5b830160408186031215610eb057600080fd5b610eb8610a54565b81516001600160401b03811115610ece57600080fd5b820160a08188031215610ee057600080fd5b610ee8610a2c565b8151610ef381610c98565b81526020820151610f0381610c98565b60208201526040820151610f1681610cfb565b60408201526060820151610f2981610d10565b606082015260808201516001600160401b03811115610f4757600080fd5b610f5389828501610e28565b60808301525082525060208201516001600160401b03811115610f7557600080fd5b610f8187828501610e28565b602083810191909152959095015190969095509350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011f5761011f610f9b565b634e487b7160e01b600052602160045260246000fd5b60c0810160038810610ffc57634e487b7160e01b600052602160045260246000fd5b9681526001600160a01b03958616602082015293851660408501526060840192909252909216608082015260a0015290565b600061011f3683610d25565b808202811582820484141761011f5761011f610f9b565b60008261106e57634e487b7160e01b600052601260045260246000fd5b500490565b600181811c9082168061108757607f821691505b6020821081036110a757634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212204ea11b7f590e7303a0b1850b4cd59148c357bb48498bdb2606c6e97c057012e264736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-11155111/deployed_addresses.json b/packages/horizon/ignition/deployments/chain-11155111/deployed_addresses.json new file mode 100644 index 000000000..07d87c022 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/deployed_addresses.json @@ -0,0 +1,41 @@ +{ + "BridgeEscrow#BridgeEscrow": "0xD1e69Dd541597F3a976ec34416F806322C560509", + "Controller#Controller": "0x9746Fb649B0AD9BA77201e9bf4e864B852e60841", + "HorizonProxies#OZProxyDummy_GraphPayments": "0x2366Bb0Ce360465153e0fF2945A14e820E6a1A14", + "Curation#Curation": "0xB20db0C5b472A25913f668bdAeE299880F3761e5", + "Curation#GraphCurationToken": "0x85820DB0AbC0f869fF5B8C47d80baD8ce8D23e36", + "EpochManager#EpochManager": "0xaBDda0b824b1581Ad6bE147AE5ED7E42B8D90602", + "GraphProxyAdmin#GraphProxyAdmin": "0x86e0221dBe437a67120BdBB8c53847Fb4D756416", + "GraphToken#GraphToken": "0xFBdc2dEbD9d3C57c5A61c958edcaA8C3a54c6188", + "GraphTokenGateway#GraphTokenGateway": "0x2e2a734Aad8Ff4B60E88b211B0daC398eCC2098c", + "HorizonProxies#OZProxyDummy_PaymentsEscrow": "0xC1Ce222a5A5f0e4CA5beF19cF6f53714288b9FFA", + "HorizonStakingExtension#ExponentialRebates": "0xA018c2419084c2DfC9C321103c2D5a98d4Db137c", + "RewardsManager#RewardsManager": "0x1c37C0725527C76B9B48DaFcE78673bB7354B3a1", + "HorizonProxies#TransparentUpgradeableProxy_GraphPayments": "0x5C72b84F619399087Df1e4b686050A5F336126D9", + "HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow": "0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53", + "BridgeEscrow#GraphProxy": "0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F", + "Curation#GraphProxy": "0xEC2ed45a73BD2A324739691eaf425aDD66918FAb", + "EpochManager#GraphProxy": "0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA", + "GraphToken#GraphProxy": "0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205", + "GraphTokenGateway#GraphProxy": "0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51", + "RewardsManager#GraphProxy": "0xCab63af715010d12dA2128777abB2103F9a0EF8F", + "BridgeEscrow#BridgeEscrow_Instance": "0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F", + "Curation#Curation_Instance": "0xEC2ed45a73BD2A324739691eaf425aDD66918FAb", + "EpochManager#EpochManager_Instance": "0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA", + "GraphToken#GraphToken_Instance": "0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205", + "GraphTokenGateway#GraphTokenGateway_Instance": "0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51", + "HorizonProxies#ProxyAdmin_GraphPayments": "0xaBE1e45c636a27aD02f0022e0AB32BF350702Df1", + "HorizonProxies#ProxyAdmin_PaymentsEscrow": "0x9fa225C2D4Cf40c8B0100Af7dacb8bCf84D822d0", + "RewardsManager#RewardsManager_Instance": "0xCab63af715010d12dA2128777abB2103F9a0EF8F", + "GraphHorizon_Periphery#Dummy": "0x31a62E69D8A4003365A97758091685eA72333155", + "HorizonProxies#GraphProxy_HorizonStaking": "0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2", + "HorizonProxies#RegisteredDummy": "0x73bb9ee763C815ae288f5c75187cb3Be2De1DA38", + "GraphPayments#GraphPayments_Instance": "0x5C72b84F619399087Df1e4b686050A5F336126D9", + "PaymentsEscrow#PaymentsEscrow_Instance": "0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53", + "GraphPayments#GraphPayments": "0x0E0e9AC171562b6d6141f69075DEd1E3922930B7", + "HorizonStakingExtension#HorizonStakingExtension": "0xeB436D1CF0d6EabC759EB3bCd96BdBA4cD208eb3", + "PaymentsEscrow#PaymentsEscrow": "0x834f7Fd38818dF6d79265e0BBb56A06168356231", + "TAPCollector#TAPCollector": "0xfd24C169Cb89c448aaeB570507aAF77ff9277E4f", + "HorizonStaking#HorizonStaking": "0x4C6301489267EA82BeDA87d4dabc50A210aBa275", + "HorizonStaking#HorizonStaking_Instance": "0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2" +} diff --git a/packages/horizon/ignition/deployments/chain-11155111/journal.jsonl b/packages/horizon/ignition/deployments/chain-11155111/journal.jsonl new file mode 100644 index 000000000..f2c983d93 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-11155111/journal.jsonl @@ -0,0 +1,318 @@ + +{"chainId":11155111,"type":"DEPLOYMENT_INITIALIZE"} +{"artifactId":"BridgeEscrow#BridgeEscrow","constructorArgs":[],"contractName":"BridgeEscrow","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"BridgeEscrow#BridgeEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"BridgeEscrow#BridgeEscrow","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051610c376101696000398061071f5250806106f65250806106cd528061089e5250806106a452508061067b5250806106525250806106295250610c376000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"BridgeEscrow#BridgeEscrow","networkInteractionId":1,"nonce":235,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x1e244f483b0bae4940372bac6ff73138a3cbe8eb8b8ea82667f56e2e5250afd3"},"type":"TRANSACTION_SEND"} +{"artifactId":"Controller#Controller","constructorArgs":[],"contractName":"Controller","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"Controller#Controller","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Controller#Controller","networkInteraction":{"data":"0x608060405234801561001057600080fd5b506100243361003360201b6109b21760201c565b61002e6001610055565b6100e7565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff1615158115151415610075576100e4565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff910416156100a157426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a15b50565b610ba0806100f66000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80636cda3798116100a2578063e0e9929211610071578063e0e9929214610215578063e3056a3414610241578063eb5dd94f14610249578063f2fde38b14610275578063f7641a5e1461029b5761010b565b80636cda3798146101ce57806379ba5097146101e85780639181df9c146101f057806391b4ded91461020d5761010b565b806348bde20c116100de57806348bde20c146101795780634fc07d751461019f57806356371bd8146101a75780635c975abb146101c65761010b565b80630c340a241461011057806316c38b3c1461013457806324a3d622146101555780632e292fc71461015d575b600080fd5b6101186102b8565b604080516001600160a01b039092168252519081900360200190f35b6101536004803603602081101561014a57600080fd5b503515156102c7565b005b610118610331565b610165610340565b604080519115158252519081900360200190f35b6101536004803603602081101561018f57600080fd5b50356001600160a01b0316610350565b61011861040c565b610153600480360360208110156101bd57600080fd5b5035151561041b565b610165610482565b6101d6610492565b60408051918252519081900360200190f35b610153610498565b6101536004803603602081101561020657600080fd5b50356105a6565b6101d6610651565b6101536004803603604081101561022b57600080fd5b50803590602001356001600160a01b0316610657565b61011861076e565b6101536004803603604081101561025f57600080fd5b50803590602001356001600160a01b031661077d565b6101536004803603602081101561028b57600080fd5b50356001600160a01b0316610899565b610118600480360360208110156102b157600080fd5b5035610997565b6000546001600160a01b031681565b6000546001600160a01b03163314806102ea57506004546001600160a01b031633145b6103255760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e816109d4565b50565b6004546001600160a01b031681565b600154600160a01b900460ff1690565b6000546001600160a01b031633146103a8576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610403576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b61032e81610a65565b6000546001600160a01b031690565b6000546001600160a01b031633148061043e57506004546001600160a01b031633145b6104795760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e81610ab7565b600154600160a81b900460ff1690565b60025481565b6001546001600160a01b031680158015906104bb5750336001600160a01b038216145b61050c576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b600081815260056020908152604080832080546001600160a01b031916905580519283525183927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a250565b60035481565b6000546001600160a01b031633146106af576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661070a576040805162461bcd60e51b815260206004820152601c60248201527f436f6e74726163742061646472657373206d7573742062652073657400000000604482015290519081900360640190fd5b60008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a25050565b6001546001600160a01b031681565b6000546001600160a01b031633146107d5576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610829576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b6000828152600560205260408082205481516392eefe9b60e01b81526001600160a01b038581166004830152925192909116926392eefe9b9260248084019382900301818387803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031633146108f1576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610943576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000908152600560205260409020546001600160a01b031690565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff16151581151514156109f45761032e565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff91041615610a2057426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b600160149054906101000a900460ff1615158115151415610ad75761032e565b6001805460ff60a01b1916600160a01b8315158102919091179182905560ff91041615610b0357426002555b60015460408051600160a01b90920460ff1615158252517f511b770d1b1dc5cbd412a5017f55cbb2295b826385e5f46c1de2b6ebeb44ae02916020908290030190a15056fe4f6e6c7920476f7665726e6f72206f7220477561726469616e2063616e2063616c6ca2646970667358221220c742dbbf8f38fda928d26053c584788bb7d7b003131594b9e14f1381ebbdbb3064736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Controller#Controller","networkInteractionId":1,"nonce":236,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x8b933f38a21564afa1108579355a9b9425641c9a7a23948ab68b552486f14583"},"type":"TRANSACTION_SEND"} +{"artifactId":"Curation#Curation","constructorArgs":[],"contractName":"Curation","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"Curation#Curation","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#Curation","networkInteraction":{"data":"0x6101806040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea361014052613d0960e61b6101605234801561011a57600080fd5b5060805160a05160c05160e0516101005161012051610140516101605160e01c6128cc61018f60003980610c2f52508061141b52806119025250806113f25250806113c9528061180c5250806113a05280611dbf5250806113775280611ff252508061134e52508061132552506128cc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#Curation","networkInteractionId":1,"nonce":237,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xf48f23e53e8adc84dd2731b1223dbfc7a88aa1554a050dd886e4f32bf4b47252"},"type":"TRANSACTION_SEND"} +{"artifactId":"Curation#GraphCurationToken","constructorArgs":[],"contractName":"GraphCurationToken","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"Curation#GraphCurationToken","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#GraphCurationToken","networkInteraction":{"data":"0x608060405234801561001057600080fd5b506114ec806100206000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806379ba5097116100a2578063a9059cbb11610071578063a9059cbb14610352578063c4d66de81461037e578063dd62ed3e146103a4578063e3056a34146103d2578063f2fde38b146103da57610116565b806379ba5097146102ea57806379cc6790146102f257806395d89b411461031e578063a457c2d71461032657610116565b806323b872dd116100e957806323b872dd14610216578063313ce5671461024c578063395093511461026a57806340c10f191461029657806370a08231146102c457610116565b806306fdde031461011b578063095ea7b3146101985780630c340a24146101d857806318160ddd146101fc575b600080fd5b610123610400565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b038135169060200135610496565b604080519115158252519081900360200190f35b6101e06104b3565b604080516001600160a01b039092168252519081900360200190f35b6102046104c2565b60408051918252519081900360200190f35b6101c46004803603606081101561022c57600080fd5b506001600160a01b038135811691602081013590911690604001356104c8565b61025461054f565b6040805160ff9092168252519081900360200190f35b6101c46004803603604081101561028057600080fd5b506001600160a01b038135169060200135610558565b6102c2600480360360408110156102ac57600080fd5b506001600160a01b0381351690602001356105a6565b005b610204600480360360208110156102da57600080fd5b50356001600160a01b031661060c565b6102c2610627565b6102c26004803603604081101561030857600080fd5b506001600160a01b038135169060200135610737565b610123610799565b6101c46004803603604081101561033c57600080fd5b506001600160a01b0381351690602001356107fa565b6101c46004803603604081101561036857600080fd5b506001600160a01b038135169060200135610862565b6102c26004803603602081101561039457600080fd5b50356001600160a01b0316610876565b610204600480360360408110156103ba57600080fd5b506001600160a01b0381358116916020013516610972565b6101e061099d565b6102c2600480360360208110156103f057600080fd5b50356001600160a01b03166109ac565b60368054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b820191906000526020600020905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b60006104aa6104a3610aaa565b8484610aae565b50600192915050565b6065546001600160a01b031681565b60355490565b60006104d5848484610b9a565b610545846104e1610aaa565b61054085604051806060016040528060288152602001611400602891396001600160a01b038a1660009081526034602052604081209061051f610aaa565b6001600160a01b031681526020810191909152604001600020549190610cf7565b610aae565b5060019392505050565b60385460ff1690565b60006104aa610565610aaa565b846105408560346000610576610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610d8e565b6065546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610def565b5050565b6001600160a01b031660009081526033602052604090205490565b6066546001600160a01b0316801580159061064a5750336001600160a01b038216145b61069b576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b606580546001600160a01b038381166001600160a01b0319808416919091179384905560668054909116905560405191811692169082907f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f90600090a36066546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6065546001600160a01b0316331461078f576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610ee1565b60378054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b60006104aa610807610aaa565b84610540856040518060600160405280602581526020016114926025913960346000610831610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610cf7565b60006104aa61086f610aaa565b8484610b9a565b600054610100900460ff168061088f575061088f610fdd565b8061089d575060005460ff16155b6108d85760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015610903576000805460ff1961ff0019909116610100171660011790555b61090c82610fee565b61095d604051806040016040528060148152602001734772617068204375726174696f6e20536861726560601b8152506040518060400160405280600381526020016247435360e81b815250611010565b8015610608576000805461ff00191690555050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6066546001600160a01b031681565b6065546001600160a01b03163314610a04576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610a56576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b606680546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b038316610af35760405162461bcd60e51b815260040180806020018281038252602481526020018061146e6024913960400191505060405180910390fd5b6001600160a01b038216610b385760405162461bcd60e51b815260040180806020018281038252602281526020018061138a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260346020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610bdf5760405162461bcd60e51b81526004018080602001828103825260258152602001806114496025913960400191505060405180910390fd5b6001600160a01b038216610c245760405162461bcd60e51b81526004018080602001828103825260238152602001806113456023913960400191505060405180910390fd5b610c2f8383836110c1565b610c6c816040518060600160405280602681526020016113ac602691396001600160a01b0386166000908152603360205260409020549190610cf7565b6001600160a01b038085166000908152603360205260408082209390935590841681522054610c9b9082610d8e565b6001600160a01b0380841660008181526033602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d865760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d4b578181015183820152602001610d33565b50505050905090810190601f168015610d785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610e4a576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610e56600083836110c1565b603554610e639082610d8e565b6035556001600160a01b038216600090815260336020526040902054610e899082610d8e565b6001600160a01b03831660008181526033602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610f265760405162461bcd60e51b81526004018080602001828103825260218152602001806114286021913960400191505060405180910390fd5b610f32826000836110c1565b610f6f81604051806060016040528060228152602001611368602291396001600160a01b0385166000908152603360205260409020549190610cf7565b6001600160a01b038316600090815260336020526040902055603554610f9590826110c6565b6035556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6000610fe830611123565b15905090565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110295750611029610fdd565b80611037575060005460ff16155b6110725760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff1615801561109d576000805460ff1961ff0019909116610100171660011790555b6110a5611129565b6110af83836111cb565b80156110c1576000805461ff00191690555b505050565b60008282111561111d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600054610100900460ff16806111425750611142610fdd565b80611150575060005460ff16155b61118b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff161580156111b6576000805460ff1961ff0019909116610100171660011790555b80156111c8576000805461ff00191690555b50565b600054610100900460ff16806111e457506111e4610fdd565b806111f2575060005460ff16155b61122d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015611258576000805460ff1961ff0019909116610100171660011790555b825161126b9060369060208601906112a3565b50815161127f9060379060208501906112a3565b506038805460ff1916601217905580156110c1576000805461ff0019169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826112d9576000855561131f565b82601f106112f257805160ff191683800117855561131f565b8280016001018555821561131f579182015b8281111561131f578251825591602001919060010190611304565b5061132b92915061132f565b5090565b5b8082111561132b576000815560010161133056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200b687fddcd01dbad6e1d5fbd49cb041f69ed61684a12a4c26c6e37e0f5ad7c2a64736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#GraphCurationToken","networkInteractionId":1,"nonce":238,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x42bb5c8a740352fe4ed4296d836ffac44d431f8f2ef3caef87a04f6b73c3a83b"},"type":"TRANSACTION_SEND"} +{"artifactId":"EpochManager#EpochManager","constructorArgs":[],"contractName":"EpochManager","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"EpochManager#EpochManager","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"EpochManager#EpochManager","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161103461016460003980610aac525080610a83525080610a5a525080610a31525080610a085250806109df5250806109b652506110346000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"EpochManager#EpochManager","networkInteractionId":1,"nonce":239,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x9cc51e406b48c153b346fcdd834ff65d3167ce1df8dd5596a07f02e139b92f77"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphProxyAdmin#GraphProxyAdmin","constructorArgs":[],"contractName":"GraphProxyAdmin","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"GraphProxyAdmin#GraphProxyAdmin","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","networkInteraction":{"data":"0x608060405234801561001057600080fd5b506100243361002960201b610a0c1760201c565b61004b565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b610a648061005a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80637eff275e116100715780637eff275e146101b157806399a88ec4146101df578063e3056a341461020d578063eb451a0214610215578063f2fde38b14610243578063f3b7dead14610269576100a9565b806307ebde0e146100ae5780630c340a2414610139578063204e1c7a1461015d5780635bf410eb1461018357806379ba5097146101a9575b600080fd5b610137600480360360608110156100c457600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156100f857600080fd5b82018360208201111561010a57600080fd5b8035906020019184600183028401116401000000008311171561012c57600080fd5b50909250905061028f565b005b610141610388565b604080516001600160a01b039092168252519081900360200190f35b6101416004803603602081101561017357600080fd5b50356001600160a01b0316610397565b6101416004803603602081101561019957600080fd5b50356001600160a01b031661046a565b610137610525565b610137600480360360408110156101c757600080fd5b506001600160a01b0381358116916020013516610633565b610137600480360360408110156101f557600080fd5b506001600160a01b03813581169160200135166106f6565b61014161079d565b6101376004803603604081101561022b57600080fd5b506001600160a01b03813581169160200135166107ac565b6101376004803603602081101561025957600080fd5b50356001600160a01b0316610853565b6101416004803603602081101561027f57600080fd5b50356001600160a01b0316610951565b6000546001600160a01b031633146102e7576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b836001600160a01b0316639ce7abe58484846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001806020018281038252848482818152602001925080828437600081840152601f19601f820116905080830192505050945050505050600060405180830381600087803b15801561036a57600080fd5b505af115801561037e573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031681565b6000806000836001600160a01b03166040518080635c60da1b60e01b8152506004019050600060405180830381855afa9150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b50915091508161044b576040805162461bcd60e51b8152602060048201526016602482015275141c9bde1e481a5b5c1b0818d85b1b0819985a5b195960521b604482015290519081900360640190fd5b80806020019051602081101561046057600080fd5b5051949350505050565b6000806000836001600160a01b0316604051808063396f7b2360e01b8152506004019050600060405180830381855afa9150503d80600081146104c9576040519150601f19603f3d011682016040523d82523d6000602084013e6104ce565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601d60248201527f50726f78792070656e64696e67496d706c2063616c6c206661696c6564000000604482015290519081900360640190fd5b6001546001600160a01b031680158015906105485750336001600160a01b038216145b610599576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b0316331461068b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663704b6c02826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b505050505050565b6000546001600160a01b0316331461074e576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b0316633659cfe6826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6001546001600160a01b031681565b6000546001600160a01b03163314610804576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663a2594d82826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6000546001600160a01b031633146108ab576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b0381166108fd576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000806000836001600160a01b031660405180806303e1469160e61b8152506004019050600060405180830381855afa9150503d80600081146109b0576040519150601f19603f3d011682016040523d82523d6000602084013e6109b5565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601760248201527f50726f78792061646d696e2063616c6c206661696c6564000000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b039290921691909117905556fea26469706673582212208b271ee4c7625d89f662c15e90f70e142245bf56f0595043fe9af742b09d958c64736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","networkInteractionId":1,"nonce":240,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x245dbac23a75574bbf072a23c55ece60c19fc4928f874704661c7770d4aaf676"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphToken#GraphToken","constructorArgs":[],"contractName":"GraphToken","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"GraphToken#GraphToken","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken","networkInteraction":{"data":"0x6101206040527fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac564726080527fefcec85968da792893fa503eb21730083fc6c50ed5461e56163b28335b2a5f9660a0527f044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d60c0527fe33842a7acd1d5a1d28f25a931703e5605152dc48d64dc4716efdae1f565959160e0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9610100523480156100c657600080fd5b5060805160a05160c05160e0516101005161261e61010660003980611547525080611eae525080611e5e525080611e3d525080611e1c525061261e6000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken","networkInteractionId":1,"nonce":241,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x0a085a815d30e599f281fbde7a0df8a8a9ee5090481a33ffc226166bbdf6061e"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphTokenGateway#GraphTokenGateway","constructorArgs":[],"contractName":"GraphTokenGateway","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"GraphTokenGateway#GraphTokenGateway","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphTokenGateway","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161222b6101696000398061112f5250806111065250806110dd528061150a5250806110b452508061108b525080611062525080611039525061222b6000f3fe6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphTokenGateway","networkInteractionId":1,"nonce":242,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8613258860"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x4e38b4bf3a9619551af22cef109c26563a6dc71930e8a27277af36515e66e969"},"type":"TRANSACTION_SEND"} +{"artifactId":"HorizonProxies#OZProxyDummy_GraphPayments","constructorArgs":[],"contractName":"Dummy","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonProxies#OZProxyDummy_GraphPayments","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","networkInteractionId":1,"nonce":243,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8120140386"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x45a22a889928909c7dc20797225a885e24022bde79231ad84387574afae8303d"},"type":"TRANSACTION_SEND"} +{"artifactId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","constructorArgs":[],"contractName":"Dummy","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","networkInteractionId":1,"nonce":244,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8120140386"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xd25cc7260b9f404196709c9bfd8222de1ca28626fa44050d22983038e053de6e"},"type":"TRANSACTION_SEND"} +{"artifactId":"HorizonStakingExtension#ExponentialRebates","constructorArgs":[],"contractName":"ExponentialRebates","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonStakingExtension#ExponentialRebates","futureType":"LIBRARY_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStakingExtension#ExponentialRebates","networkInteraction":{"data":"0x610c2d610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806349484d811461003a575b600080fd5b61004d610048366004610a66565b61005f565b60405190815260200160405180910390f35b6000806100728660030b8660030b61011c565b9050806000036100855787915050610112565b87600003610097576000915050610112565b60006100a98560030b8560030b61011c565b905060006100b8828a8c61013c565b9050600f6100c582610153565b13156100d657899350505050610112565b60006100ff6001607f1b6100fa866100f56100f087610ae2565b610169565b610882565b61089d565b905061010b818c6108d4565b9450505050505b9695505050505050565b600061013561012f846001607f1b610920565b83610988565b9392505050565b600061014b61012f8585610920565b949350505050565b60006101636001607f1b83610b14565b92915050565b60006101796101ff607c1b610ae2565b82121561018857506000919050565b8160000361019b57506001607f1b919050565b60008213156101c55760405162461bcd60e51b81526004016101bc90610b42565b60405180910390fd5b6000806101d66001607c1b85610b69565b91508190506001607f1b6101ea8280610b7d565b6101f49190610b14565b9050610208816710e1b3be415a0000610b7d565b6102129084610bad565b92506001607f1b6102238383610b7d565b61022d9190610b14565b9050610241816705a0913f6b1e0000610b7d565b61024b9084610bad565b92506001607f1b61025c8383610b7d565b6102669190610b14565b905061027a81670168244fdac78000610b7d565b6102849084610bad565b92506001607f1b6102958383610b7d565b61029f9190610b14565b90506102b281664807432bc18000610b7d565b6102bc9084610bad565b92506001607f1b6102cd8383610b7d565b6102d79190610b14565b90506102ea81660c0135dca04000610b7d565b6102f49084610bad565b92506001607f1b6103058383610b7d565b61030f9190610b14565b9050610322816601b707b1cdc000610b7d565b61032c9084610bad565b92506001607f1b61033d8383610b7d565b6103479190610b14565b9050610359816536e0f639b800610b7d565b6103639084610bad565b92506001607f1b6103748383610b7d565b61037e9190610b14565b905061039081650618fee9f800610b7d565b61039a9084610bad565b92506001607f1b6103ab8383610b7d565b6103b59190610b14565b90506103c681649c197dcc00610b7d565b6103d09084610bad565b92506001607f1b6103e18383610b7d565b6103eb9190610b14565b90506103fc81640e30dce400610b7d565b6104069084610bad565b92506001607f1b6104178383610b7d565b6104219190610b14565b90506104328164012ebd1300610b7d565b61043c9084610bad565b92506001607f1b61044d8383610b7d565b6104579190610b14565b9050610467816317499f00610b7d565b6104719084610bad565b92506001607f1b6104828383610b7d565b61048c9190610b14565b905061049c816301a9d480610b7d565b6104a69084610bad565b92506001607f1b6104b78383610b7d565b6104c19190610b14565b90506104d081621c6380610b7d565b6104da9084610bad565b92506001607f1b6104eb8383610b7d565b6104f59190610b14565b9050610504816201c638610b7d565b61050e9084610bad565b92506001607f1b61051f8383610b7d565b6105299190610b14565b905061053781611ab8610b7d565b6105419084610bad565b92506001607f1b6105528383610b7d565b61055c9190610b14565b905061056a8161017c610b7d565b6105749084610bad565b92506001607f1b6105858383610b7d565b61058f9190610b14565b905061059c816014610b7d565b6105a69084610bad565b92506001607f1b6105b78383610b7d565b6105c19190610b14565b90506105ce816001610b7d565b6105d89084610bad565b92506001607f1b826105f26721c3677c82b4000086610b14565b6105fc9190610bad565b6106069190610bad565b925061061184610ae2565b9350600160841b841615610657577243cbaf42a000812488fc5c220ad7b97bf6e99e61064a6cf1aaddd7742e56d32fb9f9974485610b7d565b6106549190610b14565b92505b600160831b84161561069c577105d27a9f51c31b7c2f8038212a057477999161068f6e0afe10820813d65dfe6a33c07f738f85610b7d565b6106999190610b14565b92505b600160821b8416156106e157701b4c902e273a58678d6d3bfdb93db96d026106d46f02582ab704279e8efd15e0265855c47a85610b7d565b6106de9190610b14565b92505b600160811b841615610726577003b1cc971a9bb5b9867477440d6d1577506107196f1152aaa3bf81cb9fdb76eae12d02957185610b7d565b6107239190610b14565b92505b600160801b84161561076b5770015bf0a8b1457695355fb8ac404e7a79e361075e6f2f16ac6c59de6f8d5d6f63c1482a7c8685610b7d565b6107689190610b14565b92505b6001607f1b8416156107af576fd3094c70f034de4b96ff7d5b6f99fcd86107a26f4da2cbf1be5827f9eb3ad1aa9866ebb385610b7d565b6107ac9190610b14565b92505b6001607e1b8416156107f3576fa45af1e1f40c333b3de1db4dd55f29a76107e66f63afbe7ab2082ba1a0ae5e4eb1b479dc85610b7d565b6107f09190610b14565b92505b6001607d1b841615610837576f910b022db7ae67ce76b441c27035c6a161082a6f70f5a893b608861e1f58934f97aea57d85610b7d565b6108349190610b14565b92505b6001607c1b84161561087b576f88415abbe9a76bead8d00cf112e4d4a861086e6f783eafef1c0a8f3978c7f81824d62ebf85610b7d565b6108789190610b14565b92505b5050919050565b60006001607f1b6108938484610920565b6101359190610b14565b6000600160ff1b82036108c25760405162461bcd60e51b81526004016101bc90610b42565b610135836108cf84610ae2565b6109f2565b6000808212156108f65760405162461bcd60e51b81526004016101bc90610b42565b60006109028484610920565b905060008113610916576000915050610163565b607f1c9392505050565b600082158061092d575081155b1561093a57506000610163565b508181028183828161094e5761094e610afe565b0514158061096b57508282828161096757610967610afe565b0514155b156101635760405162461bcd60e51b81526004016101bc90610bd5565b6000816000036109aa5760405162461bcd60e51b81526004016101bc90610bd5565b600160ff1b831480156109be575081600019145b156109db5760405162461bcd60e51b81526004016101bc90610bd5565b8183816109ea576109ea610afe565b059392505050565b818101600083128015610a055750600082125b8015610a1057508281135b8061096b5750600083138015610a265750600082135b801561096b5750828112156101635760405162461bcd60e51b81526004016101bc90610bd5565b803563ffffffff81168114610a6157600080fd5b919050565b60008060008060008060c08789031215610a7f57600080fd5b8635955060208701359450610a9660408801610a4d565b9350610aa460608801610a4d565b9250610ab260808801610a4d565b9150610ac060a08801610a4d565b90509295509295509295565b634e487b7160e01b600052601160045260246000fd5b6000600160ff1b8201610af757610af7610acc565b5060000390565b634e487b7160e01b600052601260045260246000fd5b600082610b2357610b23610afe565b600160ff1b821460001984141615610b3d57610b3d610acc565b500590565b6020808252600d908201526c6f75742d6f662d626f756e647360981b604082015260600190565b600082610b7857610b78610afe565b500790565b80820260008212600160ff1b84141615610b9957610b99610acc565b818105831482151761016357610163610acc565b8082018281126000831280158216821582161715610bcd57610bcd610acc565b505092915050565b6020808252600890820152676f766572666c6f7760c01b60408201526060019056fea26469706673582212201cac81319f1bc19d15bc3a02519b03e3559a9cf147525a96caa8cb800f74da2864736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStakingExtension#ExponentialRebates","networkInteractionId":1,"nonce":245,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8120140386"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x648676702a8f33c1289655be95cc8131cf9a1987fccc64da8ab5b7bcfd87743e"},"type":"TRANSACTION_SEND"} +{"artifactId":"RewardsManager#RewardsManager","constructorArgs":[],"contractName":"RewardsManager","dependencies":[],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"RewardsManager#RewardsManager","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051611eb861017360003980610fe1525080610fb8525080610f8f528061194f525080610f6652806116d2525080610f3d525080610f14525080610eeb52806115165250611eb86000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager","networkInteractionId":1,"nonce":246,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"9046398448"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x9feb7887395ce34be9acdc287aa24f8bad99ddfa64dcde874322a0895769fc20"},"type":"TRANSACTION_SEND"} +{"futureId":"BridgeEscrow#BridgeEscrow","hash":"0x1e244f483b0bae4940372bac6ff73138a3cbe8eb8b8ea82667f56e2e5250afd3","networkInteractionId":1,"receipt":{"blockHash":"0x103bc987eaddc9dc5ff9838e8a9eb67527a3aef3ed085f29ff1e520c8f6af956","blockNumber":6722861,"contractAddress":"0xD1e69Dd541597F3a976ec34416F806322C560509","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"BridgeEscrow#BridgeEscrow","result":{"address":"0xD1e69Dd541597F3a976ec34416F806322C560509","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"Controller#Controller","hash":"0x8b933f38a21564afa1108579355a9b9425641c9a7a23948ab68b552486f14583","networkInteractionId":1,"receipt":{"blockHash":"0x103bc987eaddc9dc5ff9838e8a9eb67527a3aef3ed085f29ff1e520c8f6af956","blockNumber":6722861,"contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x0000000000000000000000000000000000000000000000000000000000000001","logIndex":324,"topics":["0x8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Controller#Controller","result":{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","hash":"0x45a22a889928909c7dc20797225a885e24022bde79231ad84387574afae8303d","networkInteractionId":1,"receipt":{"blockHash":"0x2c218ad7a7f3104edcb11c5fe04699b93a24e39a4f193cc981f8321d88baaacf","blockNumber":6722862,"contractAddress":"0x2366Bb0Ce360465153e0fF2945A14e820E6a1A14","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","result":{"address":"0x2366Bb0Ce360465153e0fF2945A14e820E6a1A14","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"Curation#Curation","hash":"0xf48f23e53e8adc84dd2731b1223dbfc7a88aa1554a050dd886e4f32bf4b47252","networkInteractionId":1,"receipt":{"blockHash":"0x2c218ad7a7f3104edcb11c5fe04699b93a24e39a4f193cc981f8321d88baaacf","blockNumber":6722862,"contractAddress":"0xB20db0C5b472A25913f668bdAeE299880F3761e5","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#Curation","result":{"address":"0xB20db0C5b472A25913f668bdAeE299880F3761e5","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"Curation#GraphCurationToken","hash":"0x42bb5c8a740352fe4ed4296d836ffac44d431f8f2ef3caef87a04f6b73c3a83b","networkInteractionId":1,"receipt":{"blockHash":"0x2c218ad7a7f3104edcb11c5fe04699b93a24e39a4f193cc981f8321d88baaacf","blockNumber":6722862,"contractAddress":"0x85820DB0AbC0f869fF5B8C47d80baD8ce8D23e36","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#GraphCurationToken","result":{"address":"0x85820DB0AbC0f869fF5B8C47d80baD8ce8D23e36","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"EpochManager#EpochManager","hash":"0x9cc51e406b48c153b346fcdd834ff65d3167ce1df8dd5596a07f02e139b92f77","networkInteractionId":1,"receipt":{"blockHash":"0x2c218ad7a7f3104edcb11c5fe04699b93a24e39a4f193cc981f8321d88baaacf","blockNumber":6722862,"contractAddress":"0xaBDda0b824b1581Ad6bE147AE5ED7E42B8D90602","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"EpochManager#EpochManager","result":{"address":"0xaBDda0b824b1581Ad6bE147AE5ED7E42B8D90602","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","hash":"0x245dbac23a75574bbf072a23c55ece60c19fc4928f874704661c7770d4aaf676","networkInteractionId":1,"receipt":{"blockHash":"0x2c218ad7a7f3104edcb11c5fe04699b93a24e39a4f193cc981f8321d88baaacf","blockNumber":6722862,"contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","result":{"address":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#GraphToken","hash":"0x0a085a815d30e599f281fbde7a0df8a8a9ee5090481a33ffc226166bbdf6061e","networkInteractionId":1,"receipt":{"blockHash":"0x2c218ad7a7f3104edcb11c5fe04699b93a24e39a4f193cc981f8321d88baaacf","blockNumber":6722862,"contractAddress":"0xFBdc2dEbD9d3C57c5A61c958edcaA8C3a54c6188","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken","result":{"address":"0xFBdc2dEbD9d3C57c5A61c958edcaA8C3a54c6188","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphTokenGateway#GraphTokenGateway","hash":"0x4e38b4bf3a9619551af22cef109c26563a6dc71930e8a27277af36515e66e969","networkInteractionId":1,"receipt":{"blockHash":"0x2c218ad7a7f3104edcb11c5fe04699b93a24e39a4f193cc981f8321d88baaacf","blockNumber":6722862,"contractAddress":"0x2e2a734Aad8Ff4B60E88b211B0daC398eCC2098c","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphTokenGateway","result":{"address":"0x2e2a734Aad8Ff4B60E88b211B0daC398eCC2098c","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","hash":"0xd25cc7260b9f404196709c9bfd8222de1ca28626fa44050d22983038e053de6e","networkInteractionId":1,"receipt":{"blockHash":"0x598a3cf0cfa92908a08e04fab395f4f5fa4362cb73ce8efccd5a7d65e0ebb650","blockNumber":6722863,"contractAddress":"0xC1Ce222a5A5f0e4CA5beF19cF6f53714288b9FFA","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","result":{"address":"0xC1Ce222a5A5f0e4CA5beF19cF6f53714288b9FFA","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonStakingExtension#ExponentialRebates","hash":"0x648676702a8f33c1289655be95cc8131cf9a1987fccc64da8ab5b7bcfd87743e","networkInteractionId":1,"receipt":{"blockHash":"0x598a3cf0cfa92908a08e04fab395f4f5fa4362cb73ce8efccd5a7d65e0ebb650","blockNumber":6722863,"contractAddress":"0xA018c2419084c2DfC9C321103c2D5a98d4Db137c","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStakingExtension#ExponentialRebates","result":{"address":"0xA018c2419084c2DfC9C321103c2D5a98d4Db137c","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"RewardsManager#RewardsManager","hash":"0x9feb7887395ce34be9acdc287aa24f8bad99ddfa64dcde874322a0895769fc20","networkInteractionId":1,"receipt":{"blockHash":"0x598a3cf0cfa92908a08e04fab395f4f5fa4362cb73ce8efccd5a7d65e0ebb650","blockNumber":6722863,"contractAddress":"0x1c37C0725527C76B9B48DaFcE78673bB7354B3a1","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager","result":{"address":"0x1c37C0725527C76B9B48DaFcE78673bB7354B3a1","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x95cED938F7991cd0dFcb48F0a06a40FA1aF46EBC"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setPauseGuardian","futureId":"Controller#Controller.setPauseGuardian","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Controller#Controller.setPauseGuardian","networkInteraction":{"data":"0x48bde20c00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Controller#Controller.setPauseGuardian","networkInteractionId":1,"nonce":247,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8292233818"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x82a2cb419f3ad7da61f82d6e521e6ae8f19a2458d9e1011005362412fd4570a8"},"type":"TRANSACTION_SEND"} +{"args":["0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"transferOwnership","futureId":"Controller#Controller.transferOwnership","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Controller#Controller.transferOwnership","networkInteraction":{"data":"0xf2fde38b000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Controller#Controller.transferOwnership","networkInteractionId":1,"nonce":248,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8292233818"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x2d8d93226974aafffdeacc6e6be418cd8472f6ab42c211d3ef7658e80916b3a1"},"type":"TRANSACTION_SEND"} +{"args":["0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"transferOwnership","futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","networkInteraction":{"data":"0xf2fde38b000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","networkInteractionId":1,"nonce":249,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8292233818"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x0a827a872f000619854e1d5e460db2c1411618130552970dfb12d0345253f4ec"},"type":"TRANSACTION_SEND"} +{"args":["0x559081d91f5ff43dfe51a07c216f8e6893805b35"],"artifactId":"GraphToken#GraphToken","dependencies":["GraphToken#GraphToken"],"functionName":"initialize","futureId":"GraphToken#encodeFunctionCall(GraphToken#GraphToken.initialize)","result":"0xc4d66de8000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","constructorArgs":["0x2366Bb0Ce360465153e0fF2945A14e820E6a1A14","0x559081d91f5ff43dfe51a07c216f8e6893805b35","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["HorizonProxies#OZProxyDummy_GraphPayments"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","networkInteraction":{"data":"0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61030000000000000000000000002366bb0ce360465153e0ff2945a14e820e6a1a14000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b3500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","networkInteractionId":1,"nonce":250,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8530810126"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x19ff4d52201ce3f6f1d95b72fb8899c8d43797770abbb9f4ae0abedc2db2662a"},"type":"TRANSACTION_SEND"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","constructorArgs":["0xC1Ce222a5A5f0e4CA5beF19cF6f53714288b9FFA","0x559081d91f5ff43dfe51a07c216f8e6893805b35","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["HorizonProxies#OZProxyDummy_PaymentsEscrow"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","networkInteraction":{"data":"0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103000000000000000000000000c1ce222a5a5f0e4ca5bef19cf6f53714288b9ffa000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b3500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","networkInteractionId":1,"nonce":251,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8530810126"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x42bf8596317bc2393e34ffebe49928d14bc6c34e67e299839abb86e0b134bb0a"},"type":"TRANSACTION_SEND"} +{"futureId":"Controller#Controller.setPauseGuardian","hash":"0x82a2cb419f3ad7da61f82d6e521e6ae8f19a2458d9e1011005362412fd4570a8","networkInteractionId":1,"receipt":{"blockHash":"0xf260409b3c19df19525b0420481a6647971e2a35465dc5b8a05fde789c1259a6","blockNumber":6722868,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x","logIndex":92,"topics":["0x0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Controller#Controller.setPauseGuardian","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"Controller#Controller.transferOwnership","hash":"0x2d8d93226974aafffdeacc6e6be418cd8472f6ab42c211d3ef7658e80916b3a1","networkInteractionId":1,"receipt":{"blockHash":"0xa59bf740f159ad108f273ba411d5cca144e9593b7af9bb99dc31eddde2a3c419","blockNumber":6722869,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x","logIndex":103,"topics":["0x76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Controller#Controller.transferOwnership","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","hash":"0x0a827a872f000619854e1d5e460db2c1411618130552970dfb12d0345253f4ec","networkInteractionId":1,"receipt":{"blockHash":"0xa59bf740f159ad108f273ba411d5cca144e9593b7af9bb99dc31eddde2a3c419","blockNumber":6722869,"logs":[{"address":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","data":"0x","logIndex":104,"topics":["0x76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","hash":"0x19ff4d52201ce3f6f1d95b72fb8899c8d43797770abbb9f4ae0abedc2db2662a","networkInteractionId":1,"receipt":{"blockHash":"0xa59bf740f159ad108f273ba411d5cca144e9593b7af9bb99dc31eddde2a3c419","blockNumber":6722869,"contractAddress":"0x5C72b84F619399087Df1e4b686050A5F336126D9","logs":[{"address":"0x5C72b84F619399087Df1e4b686050A5F336126D9","data":"0x","logIndex":105,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x0000000000000000000000002366bb0ce360465153e0ff2945a14e820e6a1a14"]},{"address":"0xaBE1e45c636a27aD02f0022e0AB32BF350702Df1","data":"0x","logIndex":106,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35"]},{"address":"0x5C72b84F619399087Df1e4b686050A5F336126D9","data":"0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000abe1e45c636a27ad02f0022e0ab32bf350702df1","logIndex":107,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","result":{"address":"0x5C72b84F619399087Df1e4b686050A5F336126D9","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","hash":"0x42bf8596317bc2393e34ffebe49928d14bc6c34e67e299839abb86e0b134bb0a","networkInteractionId":1,"receipt":{"blockHash":"0xa59bf740f159ad108f273ba411d5cca144e9593b7af9bb99dc31eddde2a3c419","blockNumber":6722869,"contractAddress":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","logs":[{"address":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","data":"0x","logIndex":108,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x000000000000000000000000c1ce222a5a5f0e4ca5bef19cf6f53714288b9ffa"]},{"address":"0x9fa225C2D4Cf40c8B0100Af7dacb8bCf84D822d0","data":"0x","logIndex":109,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35"]},{"address":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","data":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000009fa225c2d4cf40c8b0100af7dacb8bcf84d822d0","logIndex":110,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","result":{"address":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"BridgeEscrow#GraphProxy","constructorArgs":["0xD1e69Dd541597F3a976ec34416F806322C560509","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"contractName":"GraphProxy","dependencies":["BridgeEscrow#BridgeEscrow","GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"BridgeEscrow#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"BridgeEscrow#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000d1e69dd541597f3a976ec34416f806322c56050900000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"BridgeEscrow#GraphProxy","networkInteractionId":1,"nonce":252,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8259383240"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xaba3c4f45ab6210c8f50850dc6750ca5fb3eeb757662caf2b496954ddd41303f"},"type":"TRANSACTION_SEND"} +{"args":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841"],"artifactId":"BridgeEscrow#BridgeEscrow","dependencies":["BridgeEscrow#BridgeEscrow","Controller#Controller"],"functionName":"initialize","futureId":"BridgeEscrow#encodeFunctionCall(BridgeEscrow#BridgeEscrow.initialize)","result":"0xc4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"Curation#GraphProxy","constructorArgs":["0xB20db0C5b472A25913f668bdAeE299880F3761e5","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"contractName":"GraphProxy","dependencies":["Curation#Curation","GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"Curation#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000b20db0c5b472a25913f668bdaee299880f3761e500000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#GraphProxy","networkInteractionId":1,"nonce":253,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8259383240"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x3559487111caf96c193099190a2f8e715045161ab114e6016603602bfa965d15"},"type":"TRANSACTION_SEND"} +{"args":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","0x85820DB0AbC0f869fF5B8C47d80baD8ce8D23e36",10000,1],"artifactId":"Curation#Curation","dependencies":["Curation#Curation","Controller#Controller","Curation#GraphCurationToken"],"functionName":"initialize","futureId":"Curation#encodeFunctionCall(Curation#Curation.initialize)","result":"0x4c8c7a440000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e6084100000000000000000000000085820db0abc0f869ff5b8c47d80bad8ce8d23e3600000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000001","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"EpochManager#GraphProxy","constructorArgs":["0xaBDda0b824b1581Ad6bE147AE5ED7E42B8D90602","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"contractName":"GraphProxy","dependencies":["EpochManager#EpochManager","GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"EpochManager#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"EpochManager#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000abdda0b824b1581ad6be147ae5ed7e42b8d9060200000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"EpochManager#GraphProxy","networkInteractionId":1,"nonce":254,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8107471538"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x745091e1d096c3931da1ca2a083308a61367ca0febeb3b45d791fe4ff0466f27"},"type":"TRANSACTION_SEND"} +{"args":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841",60],"artifactId":"EpochManager#EpochManager","dependencies":["EpochManager#EpochManager","Controller#Controller"],"functionName":"initialize","futureId":"EpochManager#encodeFunctionCall(EpochManager#EpochManager.initialize)","result":"0xcd6dc6870000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841000000000000000000000000000000000000000000000000000000000000003c","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"args":["0xed734418922426bf2cc8783754bd80fc4d441a4dbe994549aee8a2f03136fcdb","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","networkInteraction":{"data":"0xe0e99292ed734418922426bf2cc8783754bd80fc4d441a4dbe994549aee8a2f03136fcdb00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","networkInteractionId":1,"nonce":255,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8107471538"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x6c7d7a87d6e93a98eac74bd1174eb67be69e264ba30130faa3ef20985c4f840e"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphToken#GraphProxy","constructorArgs":["0xFBdc2dEbD9d3C57c5A61c958edcaA8C3a54c6188","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"contractName":"GraphProxy","dependencies":["GraphToken#GraphToken","GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"GraphToken#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000fbdc2debd9d3c57c5a61c958edcaa8c3a54c618800000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphProxy","networkInteractionId":1,"nonce":256,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8107471538"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xafd66ceed871485492119031b77cefbaab04cb4d7232abf6f964ec94db1b68db"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphTokenGateway#GraphProxy","constructorArgs":["0x2e2a734Aad8Ff4B60E88b211B0daC398eCC2098c","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"contractName":"GraphProxy","dependencies":["GraphTokenGateway#GraphTokenGateway","GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"GraphTokenGateway#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c0000000000000000000000002e2a734aad8ff4b60e88b211b0dac398ecc2098c00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphProxy","networkInteractionId":1,"nonce":257,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8107471538"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xa9f5e0d14952a90994039d47f916d22788c3f7ba63906a5082d57013cd8c2a30"},"type":"TRANSACTION_SEND"} +{"args":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841"],"artifactId":"GraphTokenGateway#GraphTokenGateway","dependencies":["GraphTokenGateway#GraphTokenGateway","Controller#Controller"],"functionName":"initialize","futureId":"GraphTokenGateway#encodeFunctionCall(GraphTokenGateway#GraphTokenGateway.initialize)","result":"0xc4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","dependencies":["HorizonProxies#TransparentUpgradeableProxy_GraphPayments"],"emitterAddress":"0x5C72b84F619399087Df1e4b686050A5F336126D9","eventIndex":0,"eventName":"AdminChanged","futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments_AdminChanged","nameOrIndex":"newAdmin","result":"0xaBE1e45c636a27aD02f0022e0AB32BF350702Df1","strategy":"basic","strategyConfig":{},"txToReadFrom":"0x19ff4d52201ce3f6f1d95b72fb8899c8d43797770abbb9f4ae0abedc2db2662a","type":"READ_EVENT_ARGUMENT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","dependencies":["HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow"],"emitterAddress":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","eventIndex":0,"eventName":"AdminChanged","futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow_AdminChanged","nameOrIndex":"newAdmin","result":"0x9fa225C2D4Cf40c8B0100Af7dacb8bCf84D822d0","strategy":"basic","strategyConfig":{},"txToReadFrom":"0x42bf8596317bc2393e34ffebe49928d14bc6c34e67e299839abb86e0b134bb0a","type":"READ_EVENT_ARGUMENT_EXECUTION_STATE_INITIALIZE"} +{"args":["0x88cae14a9889b95b4cfd9472fc7dcbca2da791846a1e314bac9c1f8a234cbf9f","0x5C72b84F619399087Df1e4b686050A5F336126D9"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","HorizonProxies#TransparentUpgradeableProxy_GraphPayments"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"HorizonProxies#setContractProxy_GraphPayments","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","networkInteraction":{"data":"0xe0e9929288cae14a9889b95b4cfd9472fc7dcbca2da791846a1e314bac9c1f8a234cbf9f0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d9","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","networkInteractionId":1,"nonce":258,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"7657588232"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xf1a30501c799c04a49362aee92f8207b96e92163b923c47851fea6efc8ed03b7"},"type":"TRANSACTION_SEND"} +{"args":["0x628f67391f8b955553cabfadbf5f1b6a31d2a2d0fea175f5594af9d40b0bedc9","0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","networkInteraction":{"data":"0xe0e99292628f67391f8b955553cabfadbf5f1b6a31d2a2d0fea175f5594af9d40b0bedc90000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","networkInteractionId":1,"nonce":259,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"7657588232"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x48d7e2b18b7d7ad9ad26a6d49fc1bc22c8dad2b92d09dc38328664b19777f726"},"type":"TRANSACTION_SEND"} +{"artifactId":"RewardsManager#GraphProxy","constructorArgs":["0x1c37C0725527C76B9B48DaFcE78673bB7354B3a1","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"contractName":"GraphProxy","dependencies":["RewardsManager#RewardsManager","GraphProxyAdmin#GraphProxyAdmin"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"RewardsManager#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c0000000000000000000000001c37c0725527c76b9b48dafce78673bb7354b3a100000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#GraphProxy","networkInteractionId":1,"nonce":260,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"7657588232"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xee72027f07a720c2696d22ef0b2bdc0c82d8d1c0febc8f1e21e5a2b560712e9f"},"type":"TRANSACTION_SEND"} +{"args":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841"],"artifactId":"RewardsManager#RewardsManager","dependencies":["RewardsManager#RewardsManager","Controller#Controller"],"functionName":"initialize","futureId":"RewardsManager#encodeFunctionCall(RewardsManager#RewardsManager.initialize)","result":"0xc4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"futureId":"BridgeEscrow#GraphProxy","hash":"0xaba3c4f45ab6210c8f50850dc6750ca5fb3eeb757662caf2b496954ddd41303f","networkInteractionId":1,"receipt":{"blockHash":"0x616cd1414f425239dc786292953e73fcff86c7f23fc3cca0f6feae4c33b423c1","blockNumber":6722875,"contractAddress":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","logs":[{"address":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","data":"0x","logIndex":124,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416"]},{"address":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","data":"0x","logIndex":125,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000d1e69dd541597f3a976ec34416f806322c560509"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"BridgeEscrow#GraphProxy","result":{"address":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"Curation#GraphProxy","hash":"0x3559487111caf96c193099190a2f8e715045161ab114e6016603602bfa965d15","networkInteractionId":1,"receipt":{"blockHash":"0x616cd1414f425239dc786292953e73fcff86c7f23fc3cca0f6feae4c33b423c1","blockNumber":6722875,"contractAddress":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","logs":[{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x","logIndex":132,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416"]},{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x","logIndex":133,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000b20db0c5b472a25913f668bdaee299880f3761e5"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#GraphProxy","result":{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"EpochManager#GraphProxy","hash":"0x745091e1d096c3931da1ca2a083308a61367ca0febeb3b45d791fe4ff0466f27","networkInteractionId":1,"receipt":{"blockHash":"0x616cd1414f425239dc786292953e73fcff86c7f23fc3cca0f6feae4c33b423c1","blockNumber":6722875,"contractAddress":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","logs":[{"address":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","data":"0x","logIndex":135,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416"]},{"address":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","data":"0x","logIndex":136,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000abdda0b824b1581ad6be147ae5ed7e42b8d90602"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"EpochManager#GraphProxy","result":{"address":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","hash":"0x6c7d7a87d6e93a98eac74bd1174eb67be69e264ba30130faa3ef20985c4f840e","networkInteractionId":1,"receipt":{"blockHash":"0x616cd1414f425239dc786292953e73fcff86c7f23fc3cca0f6feae4c33b423c1","blockNumber":6722875,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","logIndex":147,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xed734418922426bf2cc8783754bd80fc4d441a4dbe994549aee8a2f03136fcdb"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#GraphProxy","hash":"0xafd66ceed871485492119031b77cefbaab04cb4d7232abf6f964ec94db1b68db","networkInteractionId":1,"receipt":{"blockHash":"0xaa3a886e36c88d7260fd67dbe42ffb2f9133fbbba4bfe5ee3f10f0e8aafd280c","blockNumber":6722876,"contractAddress":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","logs":[{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":59,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416"]},{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":60,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000fbdc2debd9d3c57c5a61c958edcaa8c3a54c6188"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphProxy","result":{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphTokenGateway#GraphProxy","hash":"0xa9f5e0d14952a90994039d47f916d22788c3f7ba63906a5082d57013cd8c2a30","networkInteractionId":1,"receipt":{"blockHash":"0xaa3a886e36c88d7260fd67dbe42ffb2f9133fbbba4bfe5ee3f10f0e8aafd280c","blockNumber":6722876,"contractAddress":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","logs":[{"address":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","data":"0x","logIndex":66,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416"]},{"address":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","data":"0x","logIndex":67,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000002e2a734aad8ff4b60e88b211b0dac398ecc2098c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphProxy","result":{"address":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","hash":"0xf1a30501c799c04a49362aee92f8207b96e92163b923c47851fea6efc8ed03b7","networkInteractionId":1,"receipt":{"blockHash":"0xaa3a886e36c88d7260fd67dbe42ffb2f9133fbbba4bfe5ee3f10f0e8aafd280c","blockNumber":6722876,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d9","logIndex":82,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x88cae14a9889b95b4cfd9472fc7dcbca2da791846a1e314bac9c1f8a234cbf9f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","hash":"0x48d7e2b18b7d7ad9ad26a6d49fc1bc22c8dad2b92d09dc38328664b19777f726","networkInteractionId":1,"receipt":{"blockHash":"0xcf942f3624e64065cdb5338f1c83974ff859ee7a89ad9122eb69ad31de7ce4fa","blockNumber":6722877,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x0000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53","logIndex":86,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x628f67391f8b955553cabfadbf5f1b6a31d2a2d0fea175f5594af9d40b0bedc9"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"RewardsManager#GraphProxy","hash":"0xee72027f07a720c2696d22ef0b2bdc0c82d8d1c0febc8f1e21e5a2b560712e9f","networkInteractionId":1,"receipt":{"blockHash":"0xcf942f3624e64065cdb5338f1c83974ff859ee7a89ad9122eb69ad31de7ce4fa","blockNumber":6722877,"contractAddress":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","logs":[{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x","logIndex":89,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416"]},{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x","logIndex":90,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000001c37c0725527c76b9b48dafce78673bb7354b3a1"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#GraphProxy","result":{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"BridgeEscrow#BridgeEscrow_Instance","contractAddress":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","contractName":"BridgeEscrow_Instance","dependencies":["BridgeEscrow#GraphProxy"],"futureId":"BridgeEscrow#BridgeEscrow_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0xD1e69Dd541597F3a976ec34416F806322C560509","0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","0xc4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","BridgeEscrow#BridgeEscrow","BridgeEscrow#GraphProxy","BridgeEscrow#encodeFunctionCall(BridgeEscrow#BridgeEscrow.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"acceptProxyAndCall","futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e000000000000000000000000d1e69dd541597f3a976ec34416f806322c560509000000000000000000000000b8ee971f6281a2ec1634b80d6f9cea713847fa2f00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e6084100000000000000000000000000000000000000000000000000000000","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":261,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6465951460"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x124fa6061847919087f7ef029b1aacbaf124047fa6840128e839acf417075aae"},"type":"TRANSACTION_SEND"} +{"artifactId":"Curation#Curation_Instance","contractAddress":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","contractName":"Curation_Instance","dependencies":["Curation#GraphProxy"],"futureId":"Curation#Curation_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0xB20db0C5b472A25913f668bdAeE299880F3761e5","0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","0x4c8c7a440000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e6084100000000000000000000000085820db0abc0f869ff5b8c47d80bad8ce8d23e3600000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000001"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","Curation#Curation","Curation#GraphProxy","Curation#encodeFunctionCall(Curation#Curation.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"acceptProxyAndCall","futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e000000000000000000000000b20db0c5b472a25913f668bdaee299880f3761e5000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000844c8c7a440000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e6084100000000000000000000000085820db0abc0f869ff5b8c47d80bad8ce8d23e360000000000000000000000000000000000000000000000000000000000002710000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":262,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6465951460"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xc397b948ab0c4dfc91733b938d9ba9316eeeee5869bdfecbd08cc07da14bc4f1"},"type":"TRANSACTION_SEND"} +{"artifactId":"EpochManager#EpochManager_Instance","contractAddress":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","contractName":"EpochManager_Instance","dependencies":["EpochManager#GraphProxy"],"futureId":"EpochManager#EpochManager_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0xaBDda0b824b1581Ad6bE147AE5ED7E42B8D90602","0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","0xcd6dc6870000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841000000000000000000000000000000000000000000000000000000000000003c"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","EpochManager#EpochManager","EpochManager#GraphProxy","EpochManager#encodeFunctionCall(EpochManager#EpochManager.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"acceptProxyAndCall","futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e000000000000000000000000abdda0b824b1581ad6be147ae5ed7e42b8d90602000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044cd6dc6870000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841000000000000000000000000000000000000000000000000000000000000003c00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":263,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6401501702"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xe061aa58d3a2b55e78f31fcf2783d4ad3d1f1808d5d15d6fb269e215bfb31ac6"},"type":"TRANSACTION_SEND"} +{"args":["0xFBdc2dEbD9d3C57c5A61c958edcaA8C3a54c6188","0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","0xc4d66de8000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","GraphToken#GraphToken","GraphToken#GraphProxy","GraphToken#encodeFunctionCall(GraphToken#GraphToken.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"acceptProxyAndCall","futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e000000000000000000000000fbdc2debd9d3c57c5a61c958edcaa8c3a54c6188000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f20500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b3500000000000000000000000000000000000000000000000000000000","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":264,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6401501702"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x571ffeec4054cefa882cd8eb66651c3acf82fd6eb8b6886540f26d22342d645a"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","contractName":"GraphToken_Instance","dependencies":["GraphToken#GraphProxy"],"futureId":"GraphToken#GraphToken_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0x2e2a734Aad8Ff4B60E88b211B0daC398eCC2098c","0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","0xc4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","GraphTokenGateway#GraphTokenGateway","GraphTokenGateway#GraphProxy","GraphTokenGateway#encodeFunctionCall(GraphTokenGateway#GraphTokenGateway.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"acceptProxyAndCall","futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e0000000000000000000000002e2a734aad8ff4b60e88b211b0dac398ecc2098c000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df5100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e6084100000000000000000000000000000000000000000000000000000000","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":265,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6401501702"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x22570f1c3113274e55b371d826ed28e5338a9b478bd6b100fab13f4b98bc8191"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphTokenGateway#GraphTokenGateway_Instance","contractAddress":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","contractName":"GraphTokenGateway_Instance","dependencies":["GraphTokenGateway#GraphProxy"],"futureId":"GraphTokenGateway#GraphTokenGateway_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#ProxyAdmin_GraphPayments","contractAddress":"0xaBE1e45c636a27aD02f0022e0AB32BF350702Df1","contractName":"ProxyAdmin","dependencies":["HorizonProxies#TransparentUpgradeableProxy_GraphPayments_AdminChanged"],"futureId":"HorizonProxies#ProxyAdmin_GraphPayments","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#ProxyAdmin_PaymentsEscrow","contractAddress":"0x9fa225C2D4Cf40c8B0100Af7dacb8bCf84D822d0","contractName":"ProxyAdmin","dependencies":["HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow_AdminChanged"],"futureId":"HorizonProxies#ProxyAdmin_PaymentsEscrow","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0x1c37C0725527C76B9B48DaFcE78673bB7354B3a1","0xCab63af715010d12dA2128777abB2103F9a0EF8F","0xc4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","RewardsManager#RewardsManager","RewardsManager#GraphProxy","RewardsManager#encodeFunctionCall(RewardsManager#RewardsManager.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"acceptProxyAndCall","futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e0000000000000000000000001c37c0725527c76b9b48dafce78673bb7354b3a1000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e6084100000000000000000000000000000000000000000000000000000000","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":266,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6401501702"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xcd06114d8a95ca26b65ea784390c3a8ba57e2ca7a5e3cf50a34a22488089bb8b"},"type":"TRANSACTION_SEND"} +{"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","contractName":"RewardsManager_Instance","dependencies":["RewardsManager#GraphProxy"],"futureId":"RewardsManager#RewardsManager_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x124fa6061847919087f7ef029b1aacbaf124047fa6840128e839acf417075aae","networkInteractionId":1,"receipt":{"blockHash":"0xfad0d04dab27357db193fa051a3cc2778870ae443464d0c6835efb32e8c74c77","blockNumber":6722882,"logs":[{"address":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","data":"0x","logIndex":137,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000d1e69dd541597f3a976ec34416f806322c560509"]},{"address":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","data":"0x","logIndex":138,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000d1e69dd541597f3a976ec34416f806322c560509","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xB8Ee971F6281a2ec1634b80d6F9CEA713847Fa2F","data":"0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","logIndex":139,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0xc397b948ab0c4dfc91733b938d9ba9316eeeee5869bdfecbd08cc07da14bc4f1","networkInteractionId":1,"receipt":{"blockHash":"0x148f5b2d08a53f325baee4f3ad775ebcdc997eaaa9483d03a5d9878597418bf2","blockNumber":6722883,"logs":[{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x","logIndex":294,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000b20db0c5b472a25913f668bdaee299880f3761e5"]},{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x","logIndex":295,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000b20db0c5b472a25913f668bdaee299880f3761e5","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","logIndex":296,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]},{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001364656661756c7452657365727665526174696f00000000000000000000000000","logIndex":297,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]},{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000156375726174696f6e54617850657263656e746167650000000000000000000000","logIndex":298,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]},{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000166d696e696d756d4375726174696f6e4465706f73697400000000000000000000","logIndex":299,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]},{"address":"0xEC2ed45a73BD2A324739691eaf425aDD66918FAb","data":"0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000136375726174696f6e546f6b656e4d617374657200000000000000000000000000","logIndex":300,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0xe061aa58d3a2b55e78f31fcf2783d4ad3d1f1808d5d15d6fb269e215bfb31ac6","networkInteractionId":1,"receipt":{"blockHash":"0x148f5b2d08a53f325baee4f3ad775ebcdc997eaaa9483d03a5d9878597418bf2","blockNumber":6722883,"logs":[{"address":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","data":"0x","logIndex":325,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000abdda0b824b1581ad6be147ae5ed7e42b8d90602"]},{"address":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","data":"0x","logIndex":326,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000abdda0b824b1581ad6be147ae5ed7e42b8d90602","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","data":"0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","logIndex":327,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]},{"address":"0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA","data":"0x000000000000000000000000000000000000000000000000000000000000003c","logIndex":328,"topics":["0x25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce2441","0x0000000000000000000000000000000000000000000000000000000000000001"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x571ffeec4054cefa882cd8eb66651c3acf82fd6eb8b6886540f26d22342d645a","networkInteractionId":1,"receipt":{"blockHash":"0x148f5b2d08a53f325baee4f3ad775ebcdc997eaaa9483d03a5d9878597418bf2","blockNumber":6722883,"logs":[{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":363,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000fbdc2debd9d3c57c5a61c958edcaa8c3a54c6188"]},{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":364,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000fbdc2debd9d3c57c5a61c958edcaa8c3a54c6188","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x0000000000000000000000000000000000000000000000000000000000000000","logIndex":365,"topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35"]},{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":366,"topics":["0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6","0x000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x22570f1c3113274e55b371d826ed28e5338a9b478bd6b100fab13f4b98bc8191","networkInteractionId":1,"receipt":{"blockHash":"0x148f5b2d08a53f325baee4f3ad775ebcdc997eaaa9483d03a5d9878597418bf2","blockNumber":6722883,"logs":[{"address":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","data":"0x","logIndex":373,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000002e2a734aad8ff4b60e88b211b0dac398ecc2098c"]},{"address":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","data":"0x","logIndex":374,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000002e2a734aad8ff4b60e88b211b0dac398ecc2098c","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","data":"0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","logIndex":375,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0xcd06114d8a95ca26b65ea784390c3a8ba57e2ca7a5e3cf50a34a22488089bb8b","networkInteractionId":1,"receipt":{"blockHash":"0x148f5b2d08a53f325baee4f3ad775ebcdc997eaaa9483d03a5d9878597418bf2","blockNumber":6722883,"logs":[{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x","logIndex":379,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000001c37c0725527c76b9b48dafce78673bb7354b3a1"]},{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x","logIndex":380,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000001c37c0725527c76b9b48dafce78673bb7354b3a1","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841","logIndex":381,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f","0xEC2ed45a73BD2A324739691eaf425aDD66918FAb"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","Curation#Curation_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_Curation","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","networkInteraction":{"data":"0xe0e99292e6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","networkInteractionId":1,"nonce":267,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5967649936"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x9f89d2bf81ab5ac286033aff88987d90d1348afd64f486a2d2f23e7e8798fbbd"},"type":"TRANSACTION_SEND"} +{"args":["0xc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f67063","0xC37fccCAc63cC5EeCE1546cE4965651991B74FEA"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","EpochManager#EpochManager_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","networkInteraction":{"data":"0xe0e99292c713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f67063000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","networkInteractionId":1,"nonce":268,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5967649936"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x04fb2e7adda06b235db1ba11dc6f4e4ccb6ef47f32d9941ba515c6c6cf1679be"},"type":"TRANSACTION_SEND"} +{"args":["0x559081d91f5ff43dfe51a07c216f8e6893805b35",{"_kind":"bigint","value":"10000000000000000000000000000"}],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","dependencies":["GraphToken#GraphToken_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"mint","futureId":"GraphToken#GraphToken_Instance.mint","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken_Instance.mint","networkInteraction":{"data":"0x40c10f19000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b350000000000000000000000000000000000000000204fce5e3e25026110000000","id":1,"to":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken_Instance.mint","networkInteractionId":1,"nonce":269,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5967649936"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xabe9021a26f23d28ec71012ac386d34fdea2ef7084efd35616121894f645c65a"},"type":"TRANSACTION_SEND"} +{"args":[],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","dependencies":["GraphToken#GraphToken_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"renounceMinter","futureId":"GraphToken#GraphToken_Instance.renounceMinter","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","networkInteraction":{"data":"0x98650275","id":1,"to":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","networkInteractionId":1,"nonce":270,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5967649936"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xdff51cf961951b65fefe3797283caca05d5f31af940cb1270f47b02cbce21ecd"},"type":"TRANSACTION_SEND"} +{"args":["0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0"],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","dependencies":["GraphToken#GraphToken_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"transferOwnership","futureId":"GraphToken#GraphToken_Instance.transferOwnership","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","networkInteraction":{"data":"0xf2fde38b000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0","id":1,"to":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","networkInteractionId":1,"nonce":271,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5967649936"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xadf29a070eb17da632bb1732743b5b1600a93420584dacf6ccea645937a35c87"},"type":"TRANSACTION_SEND"} +{"args":["0x95cED938F7991cd0dFcb48F0a06a40FA1aF46EBC"],"artifactId":"GraphTokenGateway#GraphTokenGateway_Instance","contractAddress":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","dependencies":["GraphTokenGateway#GraphTokenGateway_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setPauseGuardian","futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","networkInteraction":{"data":"0x48bde20c00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc","id":1,"to":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","networkInteractionId":1,"nonce":272,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5967649936"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x5ad72c15da902d4654d640998f7cabf0a5da9c7d59a6b3f90cf90fea180cf538"},"type":"TRANSACTION_SEND"} +{"args":[{"_kind":"bigint","value":"114155251141552511415"}],"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","dependencies":["RewardsManager#RewardsManager_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setIssuancePerBlock","futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","networkInteraction":{"data":"0x1156bdc10000000000000000000000000000000000000000000000063038ec17c1be19b7","id":1,"to":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","networkInteractionId":1,"nonce":273,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5685787546"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x86215f9b3ea77233196ae624039bd1ef3626349789845ef23f6b223267d09fb6"},"type":"TRANSACTION_SEND"} +{"args":["0xd03ea8624C8C5987235048901fB614fDcA89b117"],"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","dependencies":["RewardsManager#RewardsManager_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setSubgraphAvailabilityOracle","futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","networkInteraction":{"data":"0x0903c094000000000000000000000000d03ea8624c8c5987235048901fb614fdca89b117","id":1,"to":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","networkInteractionId":1,"nonce":274,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5685787546"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x0db978a6567fb3d8e822a379f50e5007c2a6c99b6da8fd1c82e5fabe4e83f381"},"type":"TRANSACTION_SEND"} +{"args":["0x0000000000000000000000000000000000000000"],"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","dependencies":["RewardsManager#RewardsManager_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setSubgraphService","futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","networkInteraction":{"data":"0x93a90a1e0000000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","networkInteractionId":1,"nonce":275,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5685787546"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xfd1398d59b8f2325ccc4591459416cf624b7de117009050c869cc5512c11d406"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","hash":"0x9f89d2bf81ab5ac286033aff88987d90d1348afd64f486a2d2f23e7e8798fbbd","networkInteractionId":1,"receipt":{"blockHash":"0x3dec6ec446a3e0bb8b7343115abddf21883724854f7a164a402dd6fe02da133f","blockNumber":6722888,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab","logIndex":171,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","hash":"0x04fb2e7adda06b235db1ba11dc6f4e4ccb6ef47f32d9941ba515c6c6cf1679be","networkInteractionId":1,"receipt":{"blockHash":"0x3dec6ec446a3e0bb8b7343115abddf21883724854f7a164a402dd6fe02da133f","blockNumber":6722888,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea","logIndex":172,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f67063"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#GraphToken_Instance.mint","hash":"0xabe9021a26f23d28ec71012ac386d34fdea2ef7084efd35616121894f645c65a","networkInteractionId":1,"receipt":{"blockHash":"0x3dec6ec446a3e0bb8b7343115abddf21883724854f7a164a402dd6fe02da133f","blockNumber":6722888,"logs":[{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x0000000000000000000000000000000000000000204fce5e3e25026110000000","logIndex":173,"topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken_Instance.mint","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","hash":"0xdff51cf961951b65fefe3797283caca05d5f31af940cb1270f47b02cbce21ecd","networkInteractionId":1,"receipt":{"blockHash":"0x3dec6ec446a3e0bb8b7343115abddf21883724854f7a164a402dd6fe02da133f","blockNumber":6722888,"logs":[{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":174,"topics":["0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692","0x000000000000000000000000559081d91f5ff43dfe51a07c216f8e6893805b35"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","hash":"0xadf29a070eb17da632bb1732743b5b1600a93420584dacf6ccea645937a35c87","networkInteractionId":1,"receipt":{"blockHash":"0x5c67a0115a982045355c417af43b65a3396b770cd887d7cc8f146d1c20cce8c4","blockNumber":6722889,"logs":[{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":76,"topics":["0x76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","hash":"0x5ad72c15da902d4654d640998f7cabf0a5da9c7d59a6b3f90cf90fea180cf538","networkInteractionId":1,"receipt":{"blockHash":"0x5c67a0115a982045355c417af43b65a3396b770cd887d7cc8f146d1c20cce8c4","blockNumber":6722889,"logs":[{"address":"0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51","data":"0x","logIndex":83,"topics":["0x0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","hash":"0x86215f9b3ea77233196ae624039bd1ef3626349789845ef23f6b223267d09fb6","networkInteractionId":1,"receipt":{"blockHash":"0x5c67a0115a982045355c417af43b65a3396b770cd887d7cc8f146d1c20cce8c4","blockNumber":6722889,"logs":[{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001069737375616e6365506572426c6f636b00000000000000000000000000000000","logIndex":87,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","hash":"0x0db978a6567fb3d8e822a379f50e5007c2a6c99b6da8fd1c82e5fabe4e83f381","networkInteractionId":1,"receipt":{"blockHash":"0x5c67a0115a982045355c417af43b65a3396b770cd887d7cc8f146d1c20cce8c4","blockNumber":6722889,"logs":[{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001a7375626772617068417661696c6162696c6974794f7261636c65000000000000","logIndex":95,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","hash":"0xfd1398d59b8f2325ccc4591459416cf624b7de117009050c869cc5512c11d406","networkInteractionId":1,"receipt":{"blockHash":"0xdf113cab335f161d85a31f21abbf0e3586a36b94094af6dce4af90db6f6d0633","blockNumber":6722891,"logs":[{"address":"0xCab63af715010d12dA2128777abB2103F9a0EF8F","data":"0x","logIndex":89,"topics":["0x97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000000"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0","0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","GraphTokenGateway#GraphTokenGateway_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","networkInteraction":{"data":"0xe0e99292d362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df51","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","networkInteractionId":1,"nonce":276,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6928415834"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x822f9af7a805bf25b6478d2b8ffae452adc5b17b3bdf006f711e1a3e821925ad"},"type":"TRANSACTION_SEND"} +{"args":["0x966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c53180761","0xCab63af715010d12dA2128777abB2103F9a0EF8F"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","RewardsManager#RewardsManager_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","networkInteraction":{"data":"0xe0e99292966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c53180761000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","networkInteractionId":1,"nonce":277,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"6928415834"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x0aad2a8d6af0acb52bbfdb68eaf747dfb918ebe060794dd32432d51b694e3eda"},"type":"TRANSACTION_SEND"} +{"args":["0xB0F7E9E2cEcD3E93373DC3979f8108E4C595Df51"],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","dependencies":["GraphToken#GraphToken_Instance","GraphTokenGateway#GraphTokenGateway_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"addMinter","futureId":"GraphToken#addMinterGateway","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#addMinterGateway","networkInteraction":{"data":"0x983b2d56000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df51","id":1,"to":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#addMinterGateway","networkInteractionId":1,"nonce":278,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"7784085492"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xc7ea73b0f63ce90fe81dd9a64a9b62e803d4733536bc1fb7a4a92cd9117429e1"},"type":"TRANSACTION_SEND"} +{"args":["0xCab63af715010d12dA2128777abB2103F9a0EF8F"],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","dependencies":["GraphToken#GraphToken_Instance","RewardsManager#RewardsManager_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"addMinter","futureId":"GraphToken#addMinterRewardsManager","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#addMinterRewardsManager","networkInteraction":{"data":"0x983b2d56000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f","id":1,"to":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#addMinterRewardsManager","networkInteractionId":1,"nonce":279,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"7784085492"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xf25f5506534737afc12ef13f2ce46d7bbefef65e4ae0e4051f0a545da5a66520"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","hash":"0x822f9af7a805bf25b6478d2b8ffae452adc5b17b3bdf006f711e1a3e821925ad","networkInteractionId":1,"receipt":{"blockHash":"0x311163e088954bb322ddc81e61ad733929129f310e4a01f9088f5cbefbf744ad","blockNumber":6722897,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df51","logIndex":143,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","hash":"0x0aad2a8d6af0acb52bbfdb68eaf747dfb918ebe060794dd32432d51b694e3eda","networkInteractionId":1,"receipt":{"blockHash":"0x311163e088954bb322ddc81e61ad733929129f310e4a01f9088f5cbefbf744ad","blockNumber":6722897,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f","logIndex":146,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c53180761"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#addMinterGateway","hash":"0xc7ea73b0f63ce90fe81dd9a64a9b62e803d4733536bc1fb7a4a92cd9117429e1","networkInteractionId":1,"receipt":{"blockHash":"0x311163e088954bb322ddc81e61ad733929129f310e4a01f9088f5cbefbf744ad","blockNumber":6722897,"logs":[{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":147,"topics":["0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6","0x000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df51"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#addMinterGateway","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#addMinterRewardsManager","hash":"0xf25f5506534737afc12ef13f2ce46d7bbefef65e4ae0e4051f0a545da5a66520","networkInteractionId":1,"receipt":{"blockHash":"0x417b6b008fcb87166d70b296900cb668a01ad4b4ce0ecf8bd46694eb5e7e286c","blockNumber":6722898,"logs":[{"address":"0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205","data":"0x","logIndex":79,"topics":["0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6","0x000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#addMinterRewardsManager","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247","0xeC385b1c7e34E47A71E1CB326D172Fdf2207F205"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","GraphToken#GraphToken_Instance"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","networkInteraction":{"data":"0xe0e9929245fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f205","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","networkInteractionId":1,"nonce":280,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"8636477458"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x5d3310d0fe09bef38f2cfd5b1dc229af2fa7362bc43f78db3f3ec13149df17b9"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","hash":"0x5d3310d0fe09bef38f2cfd5b1dc229af2fa7362bc43f78db3f3ec13149df17b9","networkInteractionId":1,"receipt":{"blockHash":"0x43f6f070dfc12e319cecac0d5bd740accb53e00a25d01866dc46c87d35ecd2f8","blockNumber":6722903,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f205","logIndex":118,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphHorizon_Periphery#Dummy","constructorArgs":[],"contractName":"Dummy","dependencies":["GraphHorizon_Periphery#setContractProxy_EpochManager","GraphHorizon_Periphery#setContractProxy_RewardsManager","GraphHorizon_Periphery#setContractProxy_GraphToken","GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","GraphHorizon_Periphery#setContractProxy_Curation"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"GraphHorizon_Periphery#Dummy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#Dummy","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#Dummy","networkInteractionId":1,"nonce":281,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"7026461560"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x746c4897096ec80bb89d5bc684cd2a45293680779f1150fac7856ba71e8e5d25"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#Dummy","hash":"0x746c4897096ec80bb89d5bc684cd2a45293680779f1150fac7856ba71e8e5d25","networkInteractionId":1,"receipt":{"blockHash":"0xc19d57434203d1b45be2ee82dfd7360ae6ff772cb824d9bab62d60d139bec49e","blockNumber":6722908,"contractAddress":"0x31a62E69D8A4003365A97758091685eA72333155","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#Dummy","result":{"address":"0x31a62E69D8A4003365A97758091685eA72333155","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonProxies#GraphProxy_HorizonStaking","constructorArgs":["0x0000000000000000000000000000000000000000","0x86e0221dBe437a67120BdBB8c53847Fb4D756416"],"contractName":"GraphProxy","dependencies":["GraphProxyAdmin#GraphProxyAdmin","GraphHorizon_Periphery#Dummy"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonProxies#GraphProxy_HorizonStaking","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","networkInteractionId":1,"nonce":282,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5646202602"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xde123168b7a62525b1bd57dfb48ff1d3665c85c624875cf36b488153359ab35f"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","hash":"0xde123168b7a62525b1bd57dfb48ff1d3665c85c624875cf36b488153359ab35f","networkInteractionId":1,"receipt":{"blockHash":"0x678427d0801a7b00fa93b3e19f2b9c7971dabcb924bc7e7cf67a173913ad458a","blockNumber":6722913,"contractAddress":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","logs":[{"address":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","data":"0x","logIndex":110,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416"]},{"address":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","data":"0x","logIndex":111,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000000"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","result":{"address":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d167034","0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2"],"artifactId":"Controller#Controller","contractAddress":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","dependencies":["Controller#Controller","HorizonProxies#GraphProxy_HorizonStaking"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"setContractProxy","futureId":"HorizonProxies#setContractProxy_HorizonStaking","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","networkInteraction":{"data":"0xe0e992921df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d167034000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","id":1,"to":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","networkInteractionId":1,"nonce":283,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5297354030"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x49fb9949b5addf8193f55cd13c12a58721048dd388a0e9d0336d4fce275c239e"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","hash":"0x49fb9949b5addf8193f55cd13c12a58721048dd388a0e9d0336d4fce275c239e","networkInteractionId":1,"receipt":{"blockHash":"0xa5e3de6ec030830e11a3da3a3671194b2d541242bbee53d3f0db523b2ae7bc99","blockNumber":6722918,"logs":[{"address":"0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","data":"0x000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","logIndex":235,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d167034"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonProxies#RegisteredDummy","constructorArgs":[],"contractName":"Dummy","dependencies":["HorizonProxies#setContractProxy_HorizonStaking","HorizonProxies#setContractProxy_GraphPayments","HorizonProxies#setContractProxy_PaymentsEscrow"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonProxies#RegisteredDummy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#RegisteredDummy","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#RegisteredDummy","networkInteractionId":1,"nonce":284,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5396337696"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x0a1ef5a97280f780202692bf5fad5400a9b384cfcc559031f98529d1dd4688a2"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#RegisteredDummy","hash":"0x0a1ef5a97280f780202692bf5fad5400a9b384cfcc559031f98529d1dd4688a2","networkInteractionId":1,"receipt":{"blockHash":"0xdd4d44c64f6a0757998a4a81dfd077575d7cd8fe311513b4fd07bcea1e16414c","blockNumber":6722923,"contractAddress":"0x73bb9ee763C815ae288f5c75187cb3Be2De1DA38","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#RegisteredDummy","result":{"address":"0x73bb9ee763C815ae288f5c75187cb3Be2De1DA38","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphPayments#GraphPayments","constructorArgs":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841",10000],"contractName":"GraphPayments","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"GraphPayments#GraphPayments","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphPayments#GraphPayments","networkInteraction":{"data":"0x6101e060405234801561001157600080fd5b5060405161132f38038061132f833981016040819052610030916104ee565b816001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b290610372565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e590610372565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e90610372565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015890610372565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019090610372565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb90610372565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020990610372565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024590610372565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a90610372565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a45061033a81620f4240101590565b819061035c5760405163d3097bcb60e01b815260040161007191815260200190565b506101c081905261036b610420565b505061058a565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103ad91815260200190565b602060405180830381865afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee919061051a565b9050826001600160a01b0382166104195760405163218f5add60e11b8152600401610071919061053c565b5092915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156104705760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146104cf5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b80516001600160a01b03811681146104e957600080fd5b919050565b6000806040838503121561050157600080fd5b61050a836104d2565b9150602083015190509250929050565b60006020828403121561052c57600080fd5b610535826104d2565b9392505050565b602081526000825180602084015260005b8181101561056a576020818601810151604086840101520161054d565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c051610d086106276000396000818160560152610104015260005050600050506000505060005050600050506000505060005050600050506000818161012e015281816102c1015261035401526000818160d5015281816102220152818161025a0152818161029201526103f50152610d086000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b00330000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e608410000000000000000000000000000000000000000000000000000000000002710","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphPayments#GraphPayments","networkInteractionId":1,"nonce":285,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4889646478"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xfc719b86c2b331de4379e5cb9becd1543e98fdec066458bc4c99de313e15c47c"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphPayments#GraphPayments_Instance","contractAddress":"0x5C72b84F619399087Df1e4b686050A5F336126D9","contractName":"GraphPayments","dependencies":["HorizonProxies#TransparentUpgradeableProxy_GraphPayments"],"futureId":"GraphPayments#GraphPayments_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonStakingExtension#HorizonStakingExtension","constructorArgs":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","0x0000000000000000000000000000000000000000"],"contractName":"HorizonStakingExtension","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy","HorizonStakingExtension#ExponentialRebates"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonStakingExtension#HorizonStakingExtension","futureType":"CONTRACT_DEPLOYMENT","libraries":{"ExponentialRebates":"0xA018c2419084c2DfC9C321103c2D5a98d4Db137c"},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","networkInteraction":{"data":"0x6101e060405234801561001157600080fd5b5060405161396738038061396783398101604081905261003091610411565b818181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610347565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610347565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610347565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610347565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610347565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610347565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610347565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610347565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610347565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b03166101c052506104b4915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038291815260200190565b602060405180830381865afa15801561039f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c39190610444565b9050826001600160a01b0382166103ee5760405163218f5add60e11b81526004016100749190610466565b5092915050565b80516001600160a01b038116811461040c57600080fd5b919050565b6000806040838503121561042457600080fd5b61042d836103f5565b915061043b602084016103f5565b90509250929050565b60006020828403121561045657600080fd5b61045f826103f5565b9392505050565b602081526000825180602084015260005b818110156104945760208186018101516040868401015201610477565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516133d761059060003960008181611c3601528181611e3601526123f00152600061205b015260005050600061178501526000818161213d0152818161280501526129080152600081816112c70152611b6f015260008181610bbf01528181610cbc01528181610ed601526116dc015260005050600050506000505060008181611044015281816111fa01528181612023015281816121b20152818161239a015281816124c2015261263201526133d76000f3fe6080604052600436106101f25760003560e01c806398c657dc1161010d578063b6363cf2116100a0578063e2e1e8e91161006f578063e2e1e8e914610a0b578063e73e14bf14610a38578063f1d60d6614610a70578063fb744cc014610a90578063fc54fb2714610ab057600080fd5b8063b6363cf2146108dd578063b7ca724114610927578063c0641994146109c1578063ccebcabb146109dc57600080fd5b8063a4c0ed36116100dc578063a4c0ed3614610837578063a784d49814610857578063ac9650d814610877578063ae4fe67a146108a457600080fd5b806398c657dc1461072d5780639ce7abe51461075a578063a212daf81461077a578063a2594d821461081757600080fd5b8063561285e411610185578063872d048911610154578063872d04891461064c5780638cc01c861461066c5780638d3c100a146106ed5780639054e3431461070d57600080fd5b8063561285e4146105a95780636a3ca383146105fc5780637573ef4f1461062c5780637a7664601461031157600080fd5b806325d9897e116101c157806325d9897e1461036957806339514ad21461047957806344c32a61146104ab57806355c85269146104cb57600080fd5b806308ce5f68146102495780630e0229231461027c5780631787e69f146103115780631ae720451461034757600080fd5b366102445760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b600080fd5b34801561025557600080fd5b50610269610264366004612bec565b610ac8565b6040519081526020015b60405180910390f35b34801561028857600080fd5b5061029c610297366004612c25565b610add565b604051610273919060006101208201905060018060a01b0383511682526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010083015161010083015292915050565b34801561031d57600080fd5b5061026961032c366004612c25565b6001600160a01b03166000908152600e602052604090205490565b34801561035357600080fd5b50610367610362366004612c25565b610bbd565b005b34801561037557600080fd5b5061046c610384366004612bec565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516102739190612c42565b34801561048557600080fd5b50601a546001600160401b03165b6040516001600160401b039091168152602001610273565b3480156104b757600080fd5b506103676104c6366004612cd2565b610cba565b3480156104d757600080fd5b506105776104e6366004612c25565b6001600160a01b039081166000908152600f602090815260408083208151610120810183528154909516808652600182015493860184905260028201549286018390526003820154606087015260048201546080870152600582015460a0870152600682015460c0870152600782015460e08701819052600890920154610100909601959095529394919390929091565b604080516001600160a01b0390961686526020860194909452928401919091526060830152608082015260a001610273565b3480156105b557600080fd5b506105c96105c4366004612bec565b610d68565b60405161027391908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561060857600080fd5b5061061c610617366004612c25565b610df6565b6040519015158152602001610273565b34801561063857600080fd5b50610269610647366004612cfe565b610e1b565b34801561065857600080fd5b50610269610667366004612d4d565b610e7f565b34801561067857600080fd5b506106d2610687366004612c25565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b60408051825181526020928301519281019290925201610273565b3480156106f957600080fd5b50610367610708366004612d96565b610ed4565b34801561071957600080fd5b50610269610728366004612dbb565b6113a0565b34801561073957600080fd5b5061074d610748366004612c25565b611488565b6040516102739190612e11565b34801561076657600080fd5b50610367610775366004612e81565b611493565b34801561078657600080fd5b506105c9610795366004612dbb565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561082357600080fd5b50610367610832366004612c25565b6115be565b34801561084357600080fd5b50610367610852366004612ed5565b6116da565b34801561086357600080fd5b50610269610872366004612c25565b6118e7565b34801561088357600080fd5b50610897610892366004612f30565b6118f2565b6040516102739190612fc9565b3480156108b057600080fd5b5061061c6108bf366004612c25565b6001600160a01b031660009081526022602052604090205460ff1690565b3480156108e957600080fd5b5061061c6108f8366004612bec565b6001600160a01b0380821660009081526015602090815260408083209386168352929052205460ff1692915050565b34801561093357600080fd5b50610996610942366004613049565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b0316908201529181015190820152606001610273565b3480156109cd57600080fd5b50600d5463ffffffff16610493565b3480156109e857600080fd5b506109fc6109f7366004612dbb565b6119d9565b60405190518152602001610273565b348015610a1757600080fd5b50610269610a26366004613049565b60009081526010602052604090205490565b348015610a4457600080fd5b5061061c610a53366004612c25565b6001600160a01b03166000908152600e6020526040902054151590565b348015610a7c57600080fd5b5061061c610a8b366004612c25565b611a2b565b348015610a9c57600080fd5b50610269610aab366004612bec565b611a50565b348015610abc57600080fd5b5060205460ff1661061c565b6000610ad48383611a5c565b90505b92915050565b610b3860405180610120016040528060006001600160a01b0316815260200160008019168152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b039081166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e08301526008015461010082015290565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3f9190613062565b6001600160a01b0316336001600160a01b031614610c7057604051635d9044cd60e01b815260040160405180910390fd5b601880546001600160a01b0319166001600160a01b0383169081179091556040517f690e9b982dc9aefaa1cfed186a2d2045a638013d658104102c9437235bee4b6090600090a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3c919061307f565b15610d5a57604051632b37d9d160e21b815260040160405180910390fd5b610d648282611a94565b5050565b610d936040518060800160405280600081526020016000815260200160008152602001600081525090565b610dbe6040518060800160405280600081526020016000815260200160008152602001600081525090565b6000610dca8585611e32565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b60006001610e0383611eb6565b6002811115610e1457610e14612dfb565b1492915050565b6001600160a01b038084166000908152601c60209081526040808320938616835292905290812081836002811115610e5557610e55612dfb565b6002811115610e6657610e66612dfb565b81526020019081526020016000205490505b9392505050565b600080610e8c8585611a5c565b90506000610e9a8686611f0f565b90506000610eae63ffffffff8616846130b7565b90506000610ebc8383611f3a565b9050610ec881856130ce565b98975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f56919061307f565b15610f7457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038116610fb35760405162461bcd60e51b815260206004820152600660248201526521616c6c6f6360d01b604482015260640161023b565b6000610fbe82611eb6565b90506000816002811115610fd457610fd4612dfb565b0361100c5760405162461bcd60e51b81526020600482015260086024820152670858dbdb1b1958dd60c21b604482015260640161023b565b8260000361101957505050565b6001600160a01b0382166000908152600f6020526040812060018101549091859080808061107333867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169190611f51565b600d5461108e908690600160401b900463ffffffff1661200e565b935061109a84866130e1565b600d549095506110bb9087908790640100000000900463ffffffff16612047565b92506110c783866130e1565b94508487600501546110d991906130ce565b6005880155600287015460009015806110ff5750601954600160a01b900463ffffffff16155b6111ca5760058801546002890154600d546019546040516349484d8160e01b81526004810194909452602484019290925263ffffffff600160a01b80830482166044860152600160c01b928390048216606486015283048116608485015291041660a482015273A018c2419084c2DfC9C321103c2D5a98d4Db137c906349484d819060c401602060405180830381865af41580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c591906130f4565b6111cd565b60005b90506111dd81896008015461225a565b92506111e98387611f3a565b92506112296111f884886130e1565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690612274565b82156112915782886008015461123f91906130ce565b60088901558754611259906001600160a01b0316846122bc565b915061126582846130e1565b88546001600160a01b03908116600081815260176020526040902054929550611291928692161561234e565b5086546001600160a01b038a8116918891167ff5ded07502b6feba4c13b19a0c6646efd4b4119f439bcbd49076e4f0ed1eec4b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611323573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134791906130f4565b604080516001600160a01b039093168352602083019190915281018f9052606081018990526080810188905260a081018a905260c0810187905260e081018690526101000160405180910390a450505050505050505050565b6001600160a01b038084166000908152601e60209081526040808320868516845282528083209385168352929052908120600381015482036113e6576000915050610e78565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b801561147c576000818152601d602052604090206001810154426001600160401b039091161161146b5760028301546001840154825461145091906130b7565b61145a919061310d565b61146490856130ce565b9350611471565b5061147c565b600201549050611410565b50909695505050505050565b6000610ad782611eb6565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f89190613062565b6001600160a01b0316336001600160a01b0316146115585760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611586908690869060040161312f565b600060405180830381600087803b1580156115a057600080fd5b505af11580156115b4573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156115ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116239190613062565b6001600160a01b0316336001600160a01b0316146116835760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116be57600080fd5b505af11580156116d2573d6000803e3d6000fd5b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611738573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175c919061307f565b1561177a57604051632b37d9d160e21b815260040160405180910390fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e15760405162461bcd60e51b815260206004820152600c60248201526b4f4e4c595f4741544557415960a01b604482015260640161023b565b6018546001600160a01b0385811691161461183e5760405162461bcd60e51b815260206004820152601e60248201527f4f4e4c595f4c315f5354414b494e475f5448524f5547485f4252494447450000604482015260640161023b565b60008061184d838501856131a4565b909250905060ff8216611882576000818060200190518101906118709190613255565b905061187c86826123c4565b506116d2565b60001960ff8316016118b0576000818060200190518101906118a491906132a2565b905061187c86826123d0565b60405162461bcd60e51b815260206004820152600c60248201526b494e56414c49445f434f444560a01b604482015260640161023b565b6000610ad782612740565b604080516000815260208101909152606090826001600160401b0381111561191c5761191c61315e565b60405190808252806020026020018201604052801561194f57816020015b606081526020019060019003908161193a5790505b50915060005b838110156119d1576119ac3086868481811061197357611973613302565b90506020028101906119859190613318565b856040516020016119989392919061335e565b60405160208183030381529060405261278b565b8382815181106119be576119be613302565b6020908102919091010152600101611955565b505092915050565b6040805160208101909152600081526040805160208101909152600081526000611a038686611e32565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b600080611a3783611eb6565b6002811115611a4857611a48612dfb565b141592915050565b6000610ad48383611f0f565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610ad491906130e1565b6000611a9f83611eb6565b90506001816002811115611ab557611ab5612dfb565b14611aec5760405162461bcd60e51b81526020600482015260076024820152662161637469766560c81b604482015260640161023b565b6001600160a01b038381166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e0830152600801546101008201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bef91906130f4565b608082018190526060820151600091611c079161225a565b9050600082600001516001600160a01b0316336001600160a01b03161480611c78575082516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600090815260156020908152604080832093909416825291909152205460ff165b600d54909150600160801b900463ffffffff1682111580611c9b57506040830151155b15611cd55780611cd55760405162461bcd60e51b8152602060048201526005602482015264042c2eae8d60db1b604482015260640161023b565b60808301516001600160a01b0387166000908152600f6020526040908190206004019190915583015115611db957808015611d0f57508415155b15611d2757611d22868460000151612801565b611d36565b611d3483602001516128e7565b505b60408084015184516001600160a01b03166000908152600e6020529190912060010154611d6391906130e1565b83516001600160a01b03166000908152600e602090815260408083206001019390935582860151818701518352601090915291902054611da391906130e1565b6020808501516000908152601090915260409020555b60208084015184516080808701516040808901518151928352958201959095523394810194909452606084018990528415908401526001600160a01b03808a16939116907ff6725dd105a6fc88bb79a6e4627f128577186c567a17c94818d201c2a4ce14039060a00160405180910390a4505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611e8b57506001600160a01b0382166000908152601460205260409020610ad7565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610ad7565b6001600160a01b038082166000908152600f6020526040812080549192909116611ee35750600092915050565b600381015415801590611ef857506004810154155b15611f065750600192915050565b50600292915050565b600080611f1c8484611e32565b905080600501548160020154611f3291906130e1565b949350505050565b600081831115611f4a5781610ad4565b5090919050565b8015612009576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af1158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd1919061307f565b6120095760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161023b565b505050565b60008061201b8484612975565b9050610ad4817f000000000000000000000000000000000000000000000000000000000000000061121a565b60008260000361205957506000610e78565b7f00000000000000000000000000000000000000000000000000000000000000006000831580159061209357506001600160a01b03821615155b90508080156121065750604051634c4ea0ed60e01b8152600481018790526001600160a01b03831690634c4ea0ed90602401602060405180830381865afa1580156120e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612106919061307f565b1561224e5760006121178686612975565b90508015612244576040516307470bfb60e21b8152600481018890526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631d1c2fec906024016020604051808303816000875af1158015612186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121aa91906130f4565b506121e283827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906129c7565b60405163102ae65160e31b815260048101889052602481018290526001600160a01b03841690638157328890604401600060405180830381600087803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050505b9250610e78915050565b50600095945050505050565b600081831161226a576000610ad4565b610ad482846130e1565b8015610d6457604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156116be57600080fd5b6001600160a01b03821660009081526014602052604081206002810154829190158015906122fb57508054600160401b900463ffffffff16620f424010155b156123465780546000906123219063ffffffff600160401b9091048116908790612a0216565b905061232d81866130e1565b925082826002015461233f91906130ce565b6002830155505b509392505050565b8260000361235b57505050565b801561236b576120098284612a69565b6001600160a01b03808316600090815260176020526040902054166123be81156123955781612397565b835b857f00000000000000000000000000000000000000000000000000000000000000006121d2565b50505050565b80516120098184612a69565b80516001600160a01b039081166000908152601b602090815260408083207f0000000000000000000000000000000000000000000000000000000000000000909416835292905290812060030154600160601b90046001600160401b031690036124695760405162461bcd60e51b815260206004820152600a60248201526910b83937bb34b9b4b7b760b11b604482015260640161023b565b80516001600160a01b03908116600090815260146020908152604080832082860151909416835260048401909152902060028201541580156124bb575060038201541515806124bb5750600682015415155b156125b5577f0000000000000000000000000000000000000000000000000000000000000000602084015160405163a9059cbb60e01b81526001600160a01b0391821660048201526024810187905291169063a9059cbb906044016020604051808303816000875af1158015612535573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612559919061307f565b5082602001516001600160a01b031683600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de866040516125a791815260200190565b60405180910390a350505050565b60008260020154600014806125d1575082600501548360020154145b61260757826005015483600201546125e991906130e1565b60038401546125f890876130b7565b612602919061310d565b612609565b845b905080158061261f5750670de0b6b3a764000085105b156126ae576126548460200151866121d27f000000000000000000000000000000000000000000000000000000000000000090565b83602001516001600160a01b031684600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de876040516126a191815260200190565b60405180910390a3612739565b8483600201546126be91906130ce565b600284015560038301546126d39082906130ce565b600384015581546126e59082906130ce565b82556020808501518551604080518981529384018590526001600160a01b039283169391909216917fcd0366dce5247d874ffc60a762aa7abbb82c1695bbb171609c1b8861e279eb73910160405180910390a35b5050505050565b6001600160a01b0381166000908152600e6020526040812060028101546001820154600483015492549192909161277791906130e1565b61278191906130e1565b610ad791906130e1565b6060600080846001600160a01b0316846040516127a89190613385565b600060405180830381855af49150503d80600081146127e3576040519150601f19603f3d011682016040523d82523d6000602084013e6127e8565b606091505b50915091506127f8858383612ae8565b95945050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000604051636dba849360e11b81526001600160a01b038581166004830152919091169063db750926906024016020604051808303816000875af115801561286e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289291906130f4565b9050806000036128a157505050565b60006128ad8383612b44565b905060006128bb82846130e1565b6001600160a01b038086166000908152601760205260409020549192506127399183918791161561234e565b6040516377561f0760e11b8152600481018290526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063eeac3e0e906024016020604051808303816000875af1158015612951573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906130f4565b600061298482620f4240101590565b82906129a657604051633dc311df60e01b815260040161023b91815260200190565b506129bd6129b783620f42406130e1565b84612a02565b610ad490846130e1565b80156120095760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb90604401611f8e565b6000612a1183620f4240101590565b80612a245750612a2482620f4240101590565b83839091612a4e5760405163768bf0eb60e11b81526004810192909252602482015260440161023b565b50620f42409050612a5f83856130b7565b610ad4919061310d565b6001600160a01b0382166000908152600e6020526040902054612a8d9082906130ce565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc290612adc9084815260200190565b60405180910390a25050565b606082612afd57612af882612bab565b610e78565b8151158015612b1457506001600160a01b0384163b155b15612b3d57604051639996b31560e01b81526001600160a01b038516600482015260240161023b565b5080610e78565b6001600160a01b0382166000908152601460205260408120600281015482919015801590612b8457508054640100000000900463ffffffff16620f424010155b156123465780546000906123219063ffffffff6401000000009091048116908790612a0216565b805115612bbb5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b0381168114612bd457600080fd5b60008060408385031215612bff57600080fd5b8235612c0a81612bd7565b91506020830135612c1a81612bd7565b809150509250929050565b600060208284031215612c3757600080fd5b8135610ad481612bd7565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151612cb060c084018263ffffffff169052565b5060e0830151612ccb60e08401826001600160401b03169052565b5092915050565b60008060408385031215612ce557600080fd5b8235612cf081612bd7565b946020939093013593505050565b600080600060608486031215612d1357600080fd5b8335612d1e81612bd7565b92506020840135612d2e81612bd7565b9150604084013560038110612d4257600080fd5b809150509250925092565b600080600060608486031215612d6257600080fd5b8335612d6d81612bd7565b92506020840135612d7d81612bd7565b9150604084013563ffffffff81168114612d4257600080fd5b60008060408385031215612da957600080fd5b823591506020830135612c1a81612bd7565b600080600060608486031215612dd057600080fd5b8335612ddb81612bd7565b92506020840135612deb81612bd7565b91506040840135612d4281612bd7565b634e487b7160e01b600052602160045260246000fd5b6020810160038310612e3357634e487b7160e01b600052602160045260246000fd5b91905290565b60008083601f840112612e4b57600080fd5b5081356001600160401b03811115612e6257600080fd5b602083019150836020828501011115612e7a57600080fd5b9250929050565b600080600060408486031215612e9657600080fd5b8335612ea181612bd7565b925060208401356001600160401b03811115612ebc57600080fd5b612ec886828701612e39565b9497909650939450505050565b60008060008060608587031215612eeb57600080fd5b8435612ef681612bd7565b93506020850135925060408501356001600160401b03811115612f1857600080fd5b612f2487828801612e39565b95989497509550505050565b60008060208385031215612f4357600080fd5b82356001600160401b03811115612f5957600080fd5b8301601f81018513612f6a57600080fd5b80356001600160401b03811115612f8057600080fd5b8560208260051b8401011115612f9557600080fd5b6020919091019590945092505050565b60005b83811015612fc0578181015183820152602001612fa8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561303d57603f198786030184528151805180875261301a816020890160208501612fa5565b601f01601f19169590950160209081019550938401939190910190600101612ff1565b50929695505050505050565b60006020828403121561305b57600080fd5b5035919050565b60006020828403121561307457600080fd5b8151610ad481612bd7565b60006020828403121561309157600080fd5b81518015158114610ad457600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610ad757610ad76130a1565b80820180821115610ad757610ad76130a1565b81810381811115610ad757610ad76130a1565b60006020828403121561310657600080fd5b5051919050565b60008261312a57634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561319c5761319c61315e565b604052919050565b600080604083850312156131b757600080fd5b823560ff811681146131c857600080fd5b915060208301356001600160401b038111156131e357600080fd5b8301601f810185136131f457600080fd5b80356001600160401b0381111561320d5761320d61315e565b613220601f8201601f1916602001613174565b81815286602083850101111561323557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312801561326857600080fd5b50604051602081016001600160401b038111828210171561328b5761328b61315e565b604052825161329981612bd7565b81529392505050565b600060408284031280156132b557600080fd5b50604080519081016001600160401b03811182821017156132d8576132d861315e565b60405282516132e681612bd7565b815260208301516132f681612bd7565b60208201529392505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261332f57600080fd5b8301803591506001600160401b0382111561334957600080fd5b602001915036819003821315612e7a57600080fd5b82848237600083820160008152835161337b818360208801612fa5565b0195945050505050565b60008251613397818460208701612fa5565b919091019291505056fea264697066735822122038ad83d20c219353421029f1ad8c4f7667d5f0e86af1579c64603bb56827d86064736f6c634300081b00330000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e608410000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","networkInteractionId":1,"nonce":286,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4889646478"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x18975e149bf31183f4fc8afd92f745278a749a23ff0f45a78e3cb70f4382ab36"},"type":"TRANSACTION_SEND"} +{"artifactId":"PaymentsEscrow#PaymentsEscrow","constructorArgs":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841",10000,10000],"contractName":"PaymentsEscrow","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"PaymentsEscrow#PaymentsEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"PaymentsEscrow#PaymentsEscrow","networkInteraction":{"data":"0x61020060405234801561001157600080fd5b506040516120c73803806120c78339810160408190526100309161046b565b826001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b2906103a1565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e5906103a1565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e906103a1565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b6020820152610158906103a1565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b6020820152610190906103a1565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb906103a1565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b6020820152610209906103a1565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b6020820152610245906103a1565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a906103a1565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450816276a7008082111561035c57604051635c0f65a160e01b815260048101929092526024820152604401610071565b508190506276a7008082111561038e57604051635c0f65a160e01b815260048101929092526024820152604401610071565b50506101c0919091526101e05250610510565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103dc91815260200190565b602060405180830381865afa1580156103f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041d91906104a0565b9050826001600160a01b0382166104485760405163218f5add60e11b815260040161007191906104c2565b5092915050565b80516001600160a01b038116811461046657600080fd5b919050565b60008060006060848603121561048057600080fd5b6104898461044f565b602085015160409095015190969495509392505050565b6000602082840312156104b257600080fd5b6104bb8261044f565b9392505050565b602081526000825180602084015260005b818110156104f057602081860181015160408684010152016104d3565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051611ad26105f5600039600081816101e00152610abb015260008181610193015261039d01526000505060005050600050506000505060005050600081816102fa0152818161041601528181610589015281816106380152818161076e0152818161094901528181610b2d01528181610d71015261131b01526000505060008181610fa6015261104e015260005050600081816108da01528181610eea01528181610f77015281816110c401526114130152611ad26000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b00330000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e6084100000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000002710","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"PaymentsEscrow#PaymentsEscrow","networkInteractionId":1,"nonce":287,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4889646478"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0xcf1c5d16df8a1c2f970bf187c099a274b0c874fd4df369a1083f2cde2a1f916a"},"type":"TRANSACTION_SEND"} +{"artifactId":"PaymentsEscrow#PaymentsEscrow_Instance","contractAddress":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","contractName":"PaymentsEscrow","dependencies":["HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow"],"futureId":"PaymentsEscrow#PaymentsEscrow_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"TAPCollector#TAPCollector","constructorArgs":["TAPCollector","1","0x9746Fb649B0AD9BA77201e9bf4e864B852e60841"],"contractName":"TAPCollector","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"TAPCollector#TAPCollector","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"TAPCollector#TAPCollector","networkInteraction":{"data":"0x6102a060405234801561001157600080fd5b506040516119ae3803806119ae833981016040819052610030916105d9565b80838361003e8260006103db565b6101205261004d8160016103db565b61014052815160208084019190912060e052815190820120610100524660a0526100da60e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526001600160a01b03811661012c5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101e05260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526101649061040e565b6001600160a01b0316610160526040805180820190915260078152665374616b696e6760c81b60208201526101989061040e565b6001600160a01b03166101805260408051808201909152600d81526c47726170685061796d656e747360981b60208201526101d29061040e565b6001600160a01b03166101a05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261020d9061040e565b6001600160a01b03166101c05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b60208201526102469061040e565b6001600160a01b03166102005260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526102819061040e565b6001600160a01b0316610220526040805180820190915260118152704772617068546f6b656e4761746577617960781b60208201526102bf9061040e565b6001600160a01b03166102405260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b60208201526102fb9061040e565b6001600160a01b03166102605260408051808201909152600881526721bab930ba34b7b760c11b60208201526103309061040e565b6001600160a01b039081166102808190526101e05161018051610160516101a0516101c0516102005161022051610240516102605160408051968c168752948b166020870152928a1685850152908916606085015288166080840152871660a083015260c0820195909552935192851694918216939116917fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a439181900360e00190a45050505061081e565b60006020835110156103f7576103f0836104bc565b9050610408565b8161040284826106db565b5060ff90505b92915050565b6000806101e0516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161044991815260200190565b602060405180830381865afa158015610466573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048a9190610799565b9050826001600160a01b0382166104b55760405163218f5add60e11b815260040161012391906107e7565b5092915050565b600080829050601f815111156104e7578260405163305a27a960e01b815260040161012391906107e7565b80516104f2826107fa565b179392505050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561052b578181015183820152602001610513565b50506000910152565b600082601f83011261054557600080fd5b81516001600160401b0381111561055e5761055e6104fa565b604051601f8201601f19908116603f011681016001600160401b038111828210171561058c5761058c6104fa565b6040528181528382016020018510156105a457600080fd5b6105b5826020830160208701610510565b949350505050565b80516001600160a01b03811681146105d457600080fd5b919050565b6000806000606084860312156105ee57600080fd5b83516001600160401b0381111561060457600080fd5b61061086828701610534565b602086015190945090506001600160401b0381111561062e57600080fd5b61063a86828701610534565b925050610649604085016105bd565b90509250925092565b600181811c9082168061066657607f821691505b60208210810361068657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156106d657806000526020600020601f840160051c810160208510156106b35750805b601f840160051c820191505b818110156106d357600081556001016106bf565b50505b505050565b81516001600160401b038111156106f4576106f46104fa565b610708816107028454610652565b8461068c565b6020601f82116001811461073c57600083156107245750848201515b600019600385901b1c1916600184901b1784556106d3565b600084815260208120601f198516915b8281101561076c578785015182556020948501946001909201910161074c565b508482101561078a5786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b6000602082840312156107ab57600080fd5b6107b4826105bd565b9392505050565b600081518084526107d3816020860160208601610510565b601f01601f19169290920160200192915050565b6020815260006107b460208301846107bb565b805160208083015191908110156106865760001960209190910360031b1b16919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516110e36108cb600039600050506000505060005050600050506000505060005050600061024f0152600050506000505060005050600061049201526000610460015260006108940152600061086c015260006107c7015260006107f10152600061081b01526110e36000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80631ef518f21461005c5780637f07d2831461008c57806384b0196e146100ad5780638821603c146100c8578063cfdb35bd146100db575b600080fd5b61006f61006a3660046109dc565b61010c565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a366004610b23565b610125565b604051908152602001610083565b6100b5610372565b6040516100839796959493929190610bc6565b61009f6100d6366004610c5e565b6103b8565b61009f6100e9366004610cb0565b600260209081526000938452604080852082529284528284209052825290205481565b600061011f61011a83610db8565b6103cb565b92915050565b60008060008380602001905181019061013e9190610e75565b815151919350915033906001600160a01b0381168214610189576040516347666ba360e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50508151516000610199846103cb565b84516020808201516060909201516001600160a01b038087166000908152600284526040808220838716835285528082209287168252919093529091205492935090916001600160801b03909116908181808211610213576040516308e467d960e31b815260048101929092526024820152604401610180565b50600090506102228284610fb1565b9050600061023082896103f2565b905081156102f3576040516343edff4160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906387dbfe829061028e908f908a908a9088908e908990600401610fda565b600060405180830381600087803b1580156102a857600080fd5b505af11580156102bc573d6000803e3d6000fd5b5050506001600160a01b0380891660009081526002602090815260408083208a851684528252808320938b16835292905220859055505b866001600160a01b0316866001600160a01b03168d600281111561031957610319610fc4565b604080516001600160a01b038a168152602081018790529081018590527ffadd34108e3c00b000a046b272ee080bb1755b91078c0ef5200c0b7da6132bd19060600160405180910390a4509a9950505050505050505050565b600060608060008060006060610386610459565b61038e61048b565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061011f6103c68361102e565b6104b8565b6000806103db83600001516104b8565b90506103eb81846020015161056f565b9392505050565b600061040183620f4240101590565b80610414575061041482620f4240101590565b8383909161043e5760405163768bf0eb60e11b815260048101929092526024820152604401610180565b50620f4240905061044f838561103a565b6103eb9190611051565b60606104867f00000000000000000000000000000000000000000000000000000000000000006000610599565b905090565b60606104867f00000000000000000000000000000000000000000000000000000000000000006001610599565b600061011f7fe502a96d6aaed328ceacc76a5f627b9823162f5a205dab5a702b40073a6778428360000151846020015185604001518660600151876080015180519060200120604051602001610554969594939291909586526001600160a01b0394851660208701529290931660408501526001600160401b031660608401526001600160801b0391909116608083015260a082015260c00190565b60405160208183030381529060405280519060200120610644565b60008060008061057f8686610671565b92509250925061058f82826106be565b5090949350505050565b606060ff83146105b3576105ac8361077b565b905061011f565b8180546105bf90611073565b80601f01602080910402602001604051908101604052809291908181526020018280546105eb90611073565b80156106385780601f1061060d57610100808354040283529160200191610638565b820191906000526020600020905b81548152906001019060200180831161061b57829003601f168201915b5050505050905061011f565b600061011f6106516107ba565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600083516041036106ab5760208401516040850151606086015160001a61069d888285856108e5565b9550955095505050506106b7565b50508151600091506002905b9250925092565b60008260038111156106d2576106d2610fc4565b036106db575050565b60018260038111156106ef576106ef610fc4565b0361070d5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561072157610721610fc4565b036107425760405163fce698f760e01b815260048101829052602401610180565b600382600381111561075657610756610fc4565b03610777576040516335e2f38360e21b815260048101829052602401610180565b5050565b60606000610788836109b4565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561081357507f000000000000000000000000000000000000000000000000000000000000000046145b1561083d57507f000000000000000000000000000000000000000000000000000000000000000090565b610486604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561092057506000915060039050826109aa565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610974573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109a0575060009250600191508290506109aa565b9250600091508190505b9450945094915050565b600060ff8216601f81111561011f57604051632cd44ac360e21b815260040160405180910390fd5b6000602082840312156109ee57600080fd5b81356001600160401b03811115610a0457600080fd5b8201604081850312156103eb57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715610a4e57610a4e610a16565b60405290565b604080519081016001600160401b0381118282101715610a4e57610a4e610a16565b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a16565b604052919050565b60006001600160401b03821115610abf57610abf610a16565b50601f01601f191660200190565b600082601f830112610ade57600080fd5b8135610af1610aec82610aa6565b610a76565b818152846020838601011115610b0657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215610b3657600080fd5b823560038110610b4557600080fd5b915060208301356001600160401b03811115610b6057600080fd5b610b6c85828601610acd565b9150509250929050565b60005b83811015610b91578181015183820152602001610b79565b50506000910152565b60008151808452610bb2816020860160208601610b76565b601f01601f19169290920160200192915050565b60ff60f81b8816815260e060208201526000610be560e0830189610b9a565b8281036040840152610bf78189610b9a565b606084018890526001600160a01b038716608085015260a0840186905283810360c08501528451808252602080870193509091019060005b81811015610c4d578351835260209384019390920191600101610c2f565b50909b9a5050505050505050505050565b600060208284031215610c7057600080fd5b81356001600160401b03811115610c8657600080fd5b820160a081850312156103eb57600080fd5b6001600160a01b0381168114610cad57600080fd5b50565b600080600060608486031215610cc557600080fd5b8335610cd081610c98565b92506020840135610ce081610c98565b91506040840135610cf081610c98565b809150509250925092565b6001600160401b0381168114610cad57600080fd5b6001600160801b0381168114610cad57600080fd5b600060a08284031215610d3757600080fd5b610d3f610a2c565b90508135610d4c81610c98565b81526020820135610d5c81610c98565b60208201526040820135610d6f81610cfb565b60408201526060820135610d8281610d10565b606082015260808201356001600160401b03811115610da057600080fd5b610dac84828501610acd565b60808301525092915050565b600060408236031215610dca57600080fd5b610dd2610a54565b82356001600160401b03811115610de857600080fd5b610df436828601610d25565b82525060208301356001600160401b03811115610e1057600080fd5b610e1c36828601610acd565b60208301525092915050565b600082601f830112610e3957600080fd5b8151610e47610aec82610aa6565b818152846020838601011115610e5c57600080fd5b610e6d826020830160208701610b76565b949350505050565b60008060408385031215610e8857600080fd5b82516001600160401b03811115610e9e57600080fd5b830160408186031215610eb057600080fd5b610eb8610a54565b81516001600160401b03811115610ece57600080fd5b820160a08188031215610ee057600080fd5b610ee8610a2c565b8151610ef381610c98565b81526020820151610f0381610c98565b60208201526040820151610f1681610cfb565b60408201526060820151610f2981610d10565b606082015260808201516001600160401b03811115610f4757600080fd5b610f5389828501610e28565b60808301525082525060208201516001600160401b03811115610f7557600080fd5b610f8187828501610e28565b602083810191909152959095015190969095509350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011f5761011f610f9b565b634e487b7160e01b600052602160045260246000fd5b60c0810160038810610ffc57634e487b7160e01b600052602160045260246000fd5b9681526001600160a01b03958616602082015293851660408501526060840192909252909216608082015260a0015290565b600061011f3683610d25565b808202811582820484141761011f5761011f610f9b565b60008261106e57634e487b7160e01b600052601260045260246000fd5b500490565b600181811c9082168061108757607f821691505b6020821081036110a757634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212204ea11b7f590e7303a0b1850b4cd59148c357bb48498bdb2606c6e97c057012e264736f6c634300081b0033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841000000000000000000000000000000000000000000000000000000000000000c544150436f6c6c6563746f72000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013100000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"TAPCollector#TAPCollector","networkInteractionId":1,"nonce":288,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4780551768"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x07ca2606b6b23a6d6a2c7bf5c8c23c0f38a8bed5e0855dc2b6a958927f33525e"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphPayments#GraphPayments","hash":"0xfc719b86c2b331de4379e5cb9becd1543e98fdec066458bc4c99de313e15c47c","networkInteractionId":1,"receipt":{"blockHash":"0x207188bd9996c6ec335ecbe34b12197408769971066826372a2ca124fe099a4a","blockNumber":6722929,"contractAddress":"0x0E0e9AC171562b6d6141f69075DEd1E3922930B7","logs":[{"address":"0x0E0e9AC171562b6d6141f69075DEd1E3922930B7","data":"0x0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d90000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df5100000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab","logIndex":169,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f205","0x000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"]},{"address":"0x0E0e9AC171562b6d6141f69075DEd1E3922930B7","data":"0x000000000000000000000000000000000000000000000000ffffffffffffffff","logIndex":170,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphPayments#GraphPayments","result":{"address":"0x0E0e9AC171562b6d6141f69075DEd1E3922930B7","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","hash":"0x18975e149bf31183f4fc8afd92f745278a749a23ff0f45a78e3cb70f4382ab36","networkInteractionId":1,"receipt":{"blockHash":"0x207188bd9996c6ec335ecbe34b12197408769971066826372a2ca124fe099a4a","blockNumber":6722929,"contractAddress":"0xeB436D1CF0d6EabC759EB3bCd96BdBA4cD208eb3","logs":[{"address":"0xeB436D1CF0d6EabC759EB3bCd96BdBA4cD208eb3","data":"0x0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d90000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df5100000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab","logIndex":173,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f205","0x000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","result":{"address":"0xeB436D1CF0d6EabC759EB3bCd96BdBA4cD208eb3","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"PaymentsEscrow#PaymentsEscrow","hash":"0xcf1c5d16df8a1c2f970bf187c099a274b0c874fd4df369a1083f2cde2a1f916a","networkInteractionId":1,"receipt":{"blockHash":"0x207188bd9996c6ec335ecbe34b12197408769971066826372a2ca124fe099a4a","blockNumber":6722929,"contractAddress":"0x834f7Fd38818dF6d79265e0BBb56A06168356231","logs":[{"address":"0x834f7Fd38818dF6d79265e0BBb56A06168356231","data":"0x0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d90000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df5100000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab","logIndex":188,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f205","0x000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"PaymentsEscrow#PaymentsEscrow","result":{"address":"0x834f7Fd38818dF6d79265e0BBb56A06168356231","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"TAPCollector#TAPCollector","hash":"0x07ca2606b6b23a6d6a2c7bf5c8c23c0f38a8bed5e0855dc2b6a958927f33525e","networkInteractionId":1,"receipt":{"blockHash":"0x207188bd9996c6ec335ecbe34b12197408769971066826372a2ca124fe099a4a","blockNumber":6722929,"contractAddress":"0xfd24C169Cb89c448aaeB570507aAF77ff9277E4f","logs":[{"address":"0xfd24C169Cb89c448aaeB570507aAF77ff9277E4f","data":"0x0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d90000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df5100000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab","logIndex":201,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f205","0x000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"TAPCollector#TAPCollector","result":{"address":"0xfd24C169Cb89c448aaeB570507aAF77ff9277E4f","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":[],"artifactId":"GraphPayments#GraphPayments","dependencies":["GraphPayments#GraphPayments"],"functionName":"initialize","futureId":"GraphPayments#encodeFunctionCall(GraphPayments#GraphPayments.initialize)","result":"0x8129fc1c","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonStaking#HorizonStaking","constructorArgs":["0x9746Fb649B0AD9BA77201e9bf4e864B852e60841","0xeB436D1CF0d6EabC759EB3bCd96BdBA4cD208eb3","0x0000000000000000000000000000000000000000"],"contractName":"HorizonStaking","dependencies":["Controller#Controller","HorizonStakingExtension#HorizonStakingExtension","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","futureId":"HorizonStaking#HorizonStaking","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStaking#HorizonStaking","networkInteraction":{"data":"0x61020060405234801561001157600080fd5b50604051615b2c380380615b2c8339810160408190526100309161041b565b828181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610351565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610351565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610351565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610351565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610351565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610351565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610351565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610351565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610351565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b039081166101c052929092166101e052506104ce915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038c91815260200190565b602060405180830381865afa1580156103a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103cd919061045e565b9050826001600160a01b0382166103f85760405163218f5add60e11b81526004016100749190610480565b5092915050565b80516001600160a01b038116811461041657600080fd5b919050565b60008060006060848603121561043057600080fd5b610439846103ff565b9250610447602085016103ff565b9150610455604085016103ff565b90509250925092565b60006020828403121561047057600080fd5b610479826103ff565b9392505050565b602081526000825180602084015260005b818110156104ae5760208186018101516040868401015201610491565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516155836105a960003960006102fb015260008181610dbf015281816115b60152818161166801528181612f5401528181613e120152614172015260005050600050506000505060005050600050506000612f0d015260005050600050506000505060008181610d89015281816117cd015281816125b2015281816128c80152818161295f01528181612ac00152818161380b015281816139cb01528181613d88015261401e01526155836000f3fe6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b00330000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841000000000000000000000000eb436d1cf0d6eabc759eb3bcd96bdba4cd208eb30000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStaking#HorizonStaking","networkInteractionId":1,"nonce":289,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"5078891980"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"82158962"}},"hash":"0x7d9698bd962a3dfddfebcd40600d3d1758b2d4a87ac31b85eee67578df1a46cd"},"type":"TRANSACTION_SEND"} +{"args":[],"artifactId":"PaymentsEscrow#PaymentsEscrow","dependencies":["PaymentsEscrow#PaymentsEscrow"],"functionName":"initialize","futureId":"PaymentsEscrow#encodeFunctionCall(PaymentsEscrow#PaymentsEscrow.initialize)","result":"0x8129fc1c","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"futureId":"HorizonStaking#HorizonStaking","hash":"0x7d9698bd962a3dfddfebcd40600d3d1758b2d4a87ac31b85eee67578df1a46cd","networkInteractionId":1,"receipt":{"blockHash":"0xdd671f6e06f87a90cf31aa333dcff7fcc8ad47c08cf8834468f671df35013288","blockNumber":6722935,"contractAddress":"0x4C6301489267EA82BeDA87d4dabc50A210aBa275","logs":[{"address":"0x4C6301489267EA82BeDA87d4dabc50A210aBa275","data":"0x0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d90000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53000000000000000000000000c37fcccac63cc5eece1546ce4965651991b74fea000000000000000000000000cab63af715010d12da2128777abb2103f9a0ef8f000000000000000000000000b0f7e9e2cecd3e93373dc3979f8108e4c595df5100000000000000000000000086e0221dbe437a67120bdbb8c53847fb4d756416000000000000000000000000ec2ed45a73bd2a324739691eaf425add66918fab","logIndex":70,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x000000000000000000000000ec385b1c7e34e47a71e1cb326d172fdf2207f205","0x000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","0x0000000000000000000000009746fb649b0ad9ba77201e9bf4e864b852e60841"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStaking#HorizonStaking","result":{"address":"0x4C6301489267EA82BeDA87d4dabc50A210aBa275","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x5C72b84F619399087Df1e4b686050A5F336126D9","0x0E0e9AC171562b6d6141f69075DEd1E3922930B7","0x8129fc1c"],"artifactId":"HorizonProxies#ProxyAdmin_GraphPayments","contractAddress":"0xaBE1e45c636a27aD02f0022e0AB32BF350702Df1","dependencies":["HorizonProxies#ProxyAdmin_GraphPayments","HorizonProxies#TransparentUpgradeableProxy_GraphPayments","GraphPayments#GraphPayments","GraphPayments#encodeFunctionCall(GraphPayments#GraphPayments.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"upgradeAndCall","futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","networkInteraction":{"data":"0x9623609d0000000000000000000000005c72b84f619399087df1e4b686050a5f336126d90000000000000000000000000e0e9ac171562b6d6141f69075ded1e3922930b7000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000","id":1,"to":"0xaBE1e45c636a27aD02f0022e0AB32BF350702Df1","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","networkInteractionId":1,"nonce":290,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4585008632"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"80053516"}},"hash":"0x277defd9bf19db0c341d8d7f061abd935d15782f55ef3743718ec97a0617eecc"},"type":"TRANSACTION_SEND"} +{"args":["0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","0x4C6301489267EA82BeDA87d4dabc50A210aBa275"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","HorizonProxies#GraphProxy_HorizonStaking","HorizonStaking#HorizonStaking"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"upgrade","futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","networkInteraction":{"data":"0x99a88ec4000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a20000000000000000000000004c6301489267ea82beda87d4dabc50a210aba275","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","networkInteractionId":1,"nonce":291,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4585008632"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"80053516"}},"hash":"0x2034b2e1eb795f3130b28bd62266fe4229d03458639a7b185b830fb5d2723cc9"},"type":"TRANSACTION_SEND"} +{"args":["0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","0x834f7Fd38818dF6d79265e0BBb56A06168356231","0x8129fc1c"],"artifactId":"HorizonProxies#ProxyAdmin_PaymentsEscrow","contractAddress":"0x9fa225C2D4Cf40c8B0100Af7dacb8bCf84D822d0","dependencies":["HorizonProxies#ProxyAdmin_PaymentsEscrow","HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","PaymentsEscrow#PaymentsEscrow","PaymentsEscrow#encodeFunctionCall(PaymentsEscrow#PaymentsEscrow.initialize)"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"upgradeAndCall","futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","networkInteraction":{"data":"0x9623609d0000000000000000000000009e0730ef2971aa5a9fea13be01a7cbfdbf4b4c53000000000000000000000000834f7fd38818df6d79265e0bbb56a06168356231000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x9fa225C2D4Cf40c8B0100Af7dacb8bCf84D822d0","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","networkInteractionId":1,"nonce":292,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4587553518"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"80053516"}},"hash":"0x56a3ff9780ee42e491e8c3399c9e4730d2b921984799f8702471e67e91bc5b1e"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","hash":"0x277defd9bf19db0c341d8d7f061abd935d15782f55ef3743718ec97a0617eecc","networkInteractionId":1,"receipt":{"blockHash":"0x17722ef41c8b56c97813609053b9018a53dbcc126fe2b363affba47957099523","blockNumber":6722940,"logs":[{"address":"0x5C72b84F619399087Df1e4b686050A5F336126D9","data":"0x","logIndex":90,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x0000000000000000000000000e0e9ac171562b6d6141f69075ded1e3922930b7"]},{"address":"0x5C72b84F619399087Df1e4b686050A5F336126D9","data":"0x0000000000000000000000000000000000000000000000000000000000000001","logIndex":91,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","hash":"0x2034b2e1eb795f3130b28bd62266fe4229d03458639a7b185b830fb5d2723cc9","networkInteractionId":1,"receipt":{"blockHash":"0xbc6a7f66d0e38e5410db6f0654fea5a7ed8e9633d78f2a12e33e40a76eaa533c","blockNumber":6722941,"logs":[{"address":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","data":"0x","logIndex":88,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000004c6301489267ea82beda87d4dabc50a210aba275"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","hash":"0x56a3ff9780ee42e491e8c3399c9e4730d2b921984799f8702471e67e91bc5b1e","networkInteractionId":1,"receipt":{"blockHash":"0xbc6a7f66d0e38e5410db6f0654fea5a7ed8e9633d78f2a12e33e40a76eaa533c","blockNumber":6722941,"logs":[{"address":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","data":"0x","logIndex":89,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x000000000000000000000000834f7fd38818df6d79265e0bbb56a06168356231"]},{"address":"0x9E0730ef2971AA5a9FEA13be01a7cbFDbf4b4c53","data":"0x0000000000000000000000000000000000000000000000000000000000000001","logIndex":90,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x4C6301489267EA82BeDA87d4dabc50A210aBa275","0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","dependencies":["GraphProxyAdmin#GraphProxyAdmin","HorizonStaking#HorizonStaking","HorizonProxies#GraphProxy_HorizonStaking","HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade"],"from":"0x559081d91f5ff43dfe51a07c216f8e6893805b35","functionName":"acceptProxy","futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","networkInteraction":{"data":"0xeb451a020000000000000000000000004c6301489267ea82beda87d4dabc50a210aba275000000000000000000000000563e880ec5a760fd6bd0deb2a035dffc71dbb8a2","id":1,"to":"0x86e0221dBe437a67120BdBB8c53847Fb4D756416","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","networkInteractionId":1,"nonce":293,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"4389578713"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"71782375"}},"hash":"0x1e5c4a43e253faa884a1d9f0f3094df39c64d47073a9cf49bd21f0408c4d93d0"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","hash":"0x1e5c4a43e253faa884a1d9f0f3094df39c64d47073a9cf49bd21f0408c4d93d0","networkInteractionId":1,"receipt":{"blockHash":"0x6b48d4468568bb9f70df0ec66968790f3c8df8a8d975c3b8ca3473112538d36e","blockNumber":6722946,"logs":[{"address":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","data":"0x","logIndex":183,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000004c6301489267ea82beda87d4dabc50a210aba275"]},{"address":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","data":"0x","logIndex":184,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000004c6301489267ea82beda87d4dabc50a210aba275","0x0000000000000000000000000000000000000000000000000000000000000000"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonStaking#HorizonStaking_Instance","contractAddress":"0x563E880Ec5A760FD6BD0dEB2a035dFfc71DBB8a2","contractName":"HorizonStaking","dependencies":["HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","HorizonProxies#GraphProxy_HorizonStaking"],"futureId":"HorizonStaking#HorizonStaking_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow.json new file mode 100644 index 000000000..3e87653d9 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow.json @@ -0,0 +1,159 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "BridgeEscrow", + "sourceName": "contracts/gateway/BridgeEscrow.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "approveAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "revokeAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051610c376101696000398061071f5250806106f65250806106cd528061089e5250806106a452508061067b5250806106525250806106295250610c376000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow_Instance.json new file mode 100644 index 000000000..3e87653d9 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#BridgeEscrow_Instance.json @@ -0,0 +1,159 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "BridgeEscrow", + "sourceName": "contracts/gateway/BridgeEscrow.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "approveAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_spender", + "type": "address" + } + ], + "name": "revokeAll", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051610c376101696000398061071f5250806106f65250806106cd528061089e5250806106a452508061067b5250806106525250806106295250610c376000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#GraphProxy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/BridgeEscrow#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/Controller#Controller.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/Controller#Controller.json new file mode 100644 index 000000000..c74445ff4 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/Controller#Controller.json @@ -0,0 +1,349 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Controller", + "sourceName": "contracts/governance/Controller.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPauseGuardian", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "pauseGuardian", + "type": "address" + } + ], + "name": "NewPauseGuardian", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PartialPauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "id", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "SetContractProxy", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + } + ], + "name": "getContractProxy", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPausePartialTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPauseTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "partialPaused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_contractAddress", + "type": "address" + } + ], + "name": "setContractProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_toPause", + "type": "bool" + } + ], + "name": "setPartialPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newPauseGuardian", + "type": "address" + } + ], + "name": "setPauseGuardian", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_toPause", + "type": "bool" + } + ], + "name": "setPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + } + ], + "name": "unsetContractProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_id", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "updateController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506100243361003360201b6109b21760201c565b61002e6001610055565b6100e7565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff1615158115151415610075576100e4565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff910416156100a157426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a15b50565b610ba0806100f66000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80636cda3798116100a2578063e0e9929211610071578063e0e9929214610215578063e3056a3414610241578063eb5dd94f14610249578063f2fde38b14610275578063f7641a5e1461029b5761010b565b80636cda3798146101ce57806379ba5097146101e85780639181df9c146101f057806391b4ded91461020d5761010b565b806348bde20c116100de57806348bde20c146101795780634fc07d751461019f57806356371bd8146101a75780635c975abb146101c65761010b565b80630c340a241461011057806316c38b3c1461013457806324a3d622146101555780632e292fc71461015d575b600080fd5b6101186102b8565b604080516001600160a01b039092168252519081900360200190f35b6101536004803603602081101561014a57600080fd5b503515156102c7565b005b610118610331565b610165610340565b604080519115158252519081900360200190f35b6101536004803603602081101561018f57600080fd5b50356001600160a01b0316610350565b61011861040c565b610153600480360360208110156101bd57600080fd5b5035151561041b565b610165610482565b6101d6610492565b60408051918252519081900360200190f35b610153610498565b6101536004803603602081101561020657600080fd5b50356105a6565b6101d6610651565b6101536004803603604081101561022b57600080fd5b50803590602001356001600160a01b0316610657565b61011861076e565b6101536004803603604081101561025f57600080fd5b50803590602001356001600160a01b031661077d565b6101536004803603602081101561028b57600080fd5b50356001600160a01b0316610899565b610118600480360360208110156102b157600080fd5b5035610997565b6000546001600160a01b031681565b6000546001600160a01b03163314806102ea57506004546001600160a01b031633145b6103255760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e816109d4565b50565b6004546001600160a01b031681565b600154600160a01b900460ff1690565b6000546001600160a01b031633146103a8576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610403576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b61032e81610a65565b6000546001600160a01b031690565b6000546001600160a01b031633148061043e57506004546001600160a01b031633145b6104795760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e81610ab7565b600154600160a81b900460ff1690565b60025481565b6001546001600160a01b031680158015906104bb5750336001600160a01b038216145b61050c576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b600081815260056020908152604080832080546001600160a01b031916905580519283525183927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a250565b60035481565b6000546001600160a01b031633146106af576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661070a576040805162461bcd60e51b815260206004820152601c60248201527f436f6e74726163742061646472657373206d7573742062652073657400000000604482015290519081900360640190fd5b60008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a25050565b6001546001600160a01b031681565b6000546001600160a01b031633146107d5576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610829576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b6000828152600560205260408082205481516392eefe9b60e01b81526001600160a01b038581166004830152925192909116926392eefe9b9260248084019382900301818387803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031633146108f1576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610943576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000908152600560205260409020546001600160a01b031690565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff16151581151514156109f45761032e565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff91041615610a2057426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b600160149054906101000a900460ff1615158115151415610ad75761032e565b6001805460ff60a01b1916600160a01b8315158102919091179182905560ff91041615610b0357426002555b60015460408051600160a01b90920460ff1615158252517f511b770d1b1dc5cbd412a5017f55cbb2295b826385e5f46c1de2b6ebeb44ae02916020908290030190a15056fe4f6e6c7920476f7665726e6f72206f7220477561726469616e2063616e2063616c6ca2646970667358221220c742dbbf8f38fda928d26053c584788bb7d7b003131594b9e14f1381ebbdbb3064736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c80636cda3798116100a2578063e0e9929211610071578063e0e9929214610215578063e3056a3414610241578063eb5dd94f14610249578063f2fde38b14610275578063f7641a5e1461029b5761010b565b80636cda3798146101ce57806379ba5097146101e85780639181df9c146101f057806391b4ded91461020d5761010b565b806348bde20c116100de57806348bde20c146101795780634fc07d751461019f57806356371bd8146101a75780635c975abb146101c65761010b565b80630c340a241461011057806316c38b3c1461013457806324a3d622146101555780632e292fc71461015d575b600080fd5b6101186102b8565b604080516001600160a01b039092168252519081900360200190f35b6101536004803603602081101561014a57600080fd5b503515156102c7565b005b610118610331565b610165610340565b604080519115158252519081900360200190f35b6101536004803603602081101561018f57600080fd5b50356001600160a01b0316610350565b61011861040c565b610153600480360360208110156101bd57600080fd5b5035151561041b565b610165610482565b6101d6610492565b60408051918252519081900360200190f35b610153610498565b6101536004803603602081101561020657600080fd5b50356105a6565b6101d6610651565b6101536004803603604081101561022b57600080fd5b50803590602001356001600160a01b0316610657565b61011861076e565b6101536004803603604081101561025f57600080fd5b50803590602001356001600160a01b031661077d565b6101536004803603602081101561028b57600080fd5b50356001600160a01b0316610899565b610118600480360360208110156102b157600080fd5b5035610997565b6000546001600160a01b031681565b6000546001600160a01b03163314806102ea57506004546001600160a01b031633145b6103255760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e816109d4565b50565b6004546001600160a01b031681565b600154600160a01b900460ff1690565b6000546001600160a01b031633146103a8576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610403576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b61032e81610a65565b6000546001600160a01b031690565b6000546001600160a01b031633148061043e57506004546001600160a01b031633145b6104795760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e81610ab7565b600154600160a81b900460ff1690565b60025481565b6001546001600160a01b031680158015906104bb5750336001600160a01b038216145b61050c576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b600081815260056020908152604080832080546001600160a01b031916905580519283525183927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a250565b60035481565b6000546001600160a01b031633146106af576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661070a576040805162461bcd60e51b815260206004820152601c60248201527f436f6e74726163742061646472657373206d7573742062652073657400000000604482015290519081900360640190fd5b60008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a25050565b6001546001600160a01b031681565b6000546001600160a01b031633146107d5576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610829576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b6000828152600560205260408082205481516392eefe9b60e01b81526001600160a01b038581166004830152925192909116926392eefe9b9260248084019382900301818387803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031633146108f1576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610943576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000908152600560205260409020546001600160a01b031690565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff16151581151514156109f45761032e565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff91041615610a2057426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b600160149054906101000a900460ff1615158115151415610ad75761032e565b6001805460ff60a01b1916600160a01b8315158102919091179182905560ff91041615610b0357426002555b60015460408051600160a01b90920460ff1615158252517f511b770d1b1dc5cbd412a5017f55cbb2295b826385e5f46c1de2b6ebeb44ae02916020908290030190a15056fe4f6e6c7920476f7665726e6f72206f7220477561726469616e2063616e2063616c6ca2646970667358221220c742dbbf8f38fda928d26053c584788bb7d7b003131594b9e14f1381ebbdbb3064736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation.json new file mode 100644 index 000000000..f9d96cee6 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation.json @@ -0,0 +1,707 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2Curation", + "sourceName": "contracts/l2/curation/L2Curation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + } + ], + "name": "Burned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Collected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "curationTax", + "type": "uint256" + } + ], + "name": "Signalled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "bondingCurve", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_tokensOutMin", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTaxPercentage", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTokenMaster", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "defaultReserveRatio", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curator", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCuratorSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_curationTaxPercentage", + "type": "uint32" + }, + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isCurated", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumCurationDeposit", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_signalOutMin", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "mintTaxFree", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "pools", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "reserveRatio", + "type": "uint32" + }, + { + "internalType": "contract IGraphCurationToken", + "name": "gcs", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_percentage", + "type": "uint32" + } + ], + "name": "setCurationTaxPercentage", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + } + ], + "name": "setCurationTokenMaster", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "name": "setDefaultReserveRatio", + "outputs": [], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "setMinimumCurationDeposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + } + ], + "name": "signalToTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalToTokensNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6101806040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea361014052613d0960e61b6101605234801561011a57600080fd5b5060805160a05160c05160e0516101005161012051610140516101605160e01c6128cc61018f60003980610c2f52508061141b52806119025250806113f25250806113c9528061180c5250806113a05280611dbf5250806113775280611ff252508061134e52508061132552506128cc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation_Instance.json new file mode 100644 index 000000000..f9d96cee6 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#Curation_Instance.json @@ -0,0 +1,707 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2Curation", + "sourceName": "contracts/l2/curation/L2Curation.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + } + ], + "name": "Burned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Collected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "curator", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "signal", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "curationTax", + "type": "uint256" + } + ], + "name": "Signalled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "bondingCurve", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_tokensOutMin", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTaxPercentage", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "curationTokenMaster", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "defaultReserveRatio", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCurationPoolTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curator", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getCuratorSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_curationTaxPercentage", + "type": "uint32" + }, + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isCurated", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumCurationDeposit", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_signalOutMin", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "mintTaxFree", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "pools", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "reserveRatio", + "type": "uint32" + }, + { + "internalType": "contract IGraphCurationToken", + "name": "gcs", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_percentage", + "type": "uint32" + } + ], + "name": "setCurationTaxPercentage", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_curationTokenMaster", + "type": "address" + } + ], + "name": "setCurationTokenMaster", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "name": "setDefaultReserveRatio", + "outputs": [], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumCurationDeposit", + "type": "uint256" + } + ], + "name": "setMinimumCurationDeposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_signalIn", + "type": "uint256" + } + ], + "name": "signalToTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_tokensIn", + "type": "uint256" + } + ], + "name": "tokensToSignalToTokensNoTax", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6101806040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea361014052613d0960e61b6101605234801561011a57600080fd5b5060805160a05160c05160e0516101005161012051610140516101605160e01c6128cc61018f60003980610c2f52508061141b52806119025250806113f25250806113c9528061180c5250806113a05280611dbf5250806113775280611ff252508061134e52508061132552506128cc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphCurationToken.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphCurationToken.json new file mode 100644 index 000000000..b7220dcc7 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphCurationToken.json @@ -0,0 +1,414 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphCurationToken", + "sourceName": "contracts/curation/GraphCurationToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506114ec806100206000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806379ba5097116100a2578063a9059cbb11610071578063a9059cbb14610352578063c4d66de81461037e578063dd62ed3e146103a4578063e3056a34146103d2578063f2fde38b146103da57610116565b806379ba5097146102ea57806379cc6790146102f257806395d89b411461031e578063a457c2d71461032657610116565b806323b872dd116100e957806323b872dd14610216578063313ce5671461024c578063395093511461026a57806340c10f191461029657806370a08231146102c457610116565b806306fdde031461011b578063095ea7b3146101985780630c340a24146101d857806318160ddd146101fc575b600080fd5b610123610400565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b038135169060200135610496565b604080519115158252519081900360200190f35b6101e06104b3565b604080516001600160a01b039092168252519081900360200190f35b6102046104c2565b60408051918252519081900360200190f35b6101c46004803603606081101561022c57600080fd5b506001600160a01b038135811691602081013590911690604001356104c8565b61025461054f565b6040805160ff9092168252519081900360200190f35b6101c46004803603604081101561028057600080fd5b506001600160a01b038135169060200135610558565b6102c2600480360360408110156102ac57600080fd5b506001600160a01b0381351690602001356105a6565b005b610204600480360360208110156102da57600080fd5b50356001600160a01b031661060c565b6102c2610627565b6102c26004803603604081101561030857600080fd5b506001600160a01b038135169060200135610737565b610123610799565b6101c46004803603604081101561033c57600080fd5b506001600160a01b0381351690602001356107fa565b6101c46004803603604081101561036857600080fd5b506001600160a01b038135169060200135610862565b6102c26004803603602081101561039457600080fd5b50356001600160a01b0316610876565b610204600480360360408110156103ba57600080fd5b506001600160a01b0381358116916020013516610972565b6101e061099d565b6102c2600480360360208110156103f057600080fd5b50356001600160a01b03166109ac565b60368054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b820191906000526020600020905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b60006104aa6104a3610aaa565b8484610aae565b50600192915050565b6065546001600160a01b031681565b60355490565b60006104d5848484610b9a565b610545846104e1610aaa565b61054085604051806060016040528060288152602001611400602891396001600160a01b038a1660009081526034602052604081209061051f610aaa565b6001600160a01b031681526020810191909152604001600020549190610cf7565b610aae565b5060019392505050565b60385460ff1690565b60006104aa610565610aaa565b846105408560346000610576610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610d8e565b6065546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610def565b5050565b6001600160a01b031660009081526033602052604090205490565b6066546001600160a01b0316801580159061064a5750336001600160a01b038216145b61069b576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b606580546001600160a01b038381166001600160a01b0319808416919091179384905560668054909116905560405191811692169082907f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f90600090a36066546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6065546001600160a01b0316331461078f576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610ee1565b60378054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b60006104aa610807610aaa565b84610540856040518060600160405280602581526020016114926025913960346000610831610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610cf7565b60006104aa61086f610aaa565b8484610b9a565b600054610100900460ff168061088f575061088f610fdd565b8061089d575060005460ff16155b6108d85760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015610903576000805460ff1961ff0019909116610100171660011790555b61090c82610fee565b61095d604051806040016040528060148152602001734772617068204375726174696f6e20536861726560601b8152506040518060400160405280600381526020016247435360e81b815250611010565b8015610608576000805461ff00191690555050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6066546001600160a01b031681565b6065546001600160a01b03163314610a04576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610a56576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b606680546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b038316610af35760405162461bcd60e51b815260040180806020018281038252602481526020018061146e6024913960400191505060405180910390fd5b6001600160a01b038216610b385760405162461bcd60e51b815260040180806020018281038252602281526020018061138a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260346020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610bdf5760405162461bcd60e51b81526004018080602001828103825260258152602001806114496025913960400191505060405180910390fd5b6001600160a01b038216610c245760405162461bcd60e51b81526004018080602001828103825260238152602001806113456023913960400191505060405180910390fd5b610c2f8383836110c1565b610c6c816040518060600160405280602681526020016113ac602691396001600160a01b0386166000908152603360205260409020549190610cf7565b6001600160a01b038085166000908152603360205260408082209390935590841681522054610c9b9082610d8e565b6001600160a01b0380841660008181526033602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d865760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d4b578181015183820152602001610d33565b50505050905090810190601f168015610d785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610e4a576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610e56600083836110c1565b603554610e639082610d8e565b6035556001600160a01b038216600090815260336020526040902054610e899082610d8e565b6001600160a01b03831660008181526033602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610f265760405162461bcd60e51b81526004018080602001828103825260218152602001806114286021913960400191505060405180910390fd5b610f32826000836110c1565b610f6f81604051806060016040528060228152602001611368602291396001600160a01b0385166000908152603360205260409020549190610cf7565b6001600160a01b038316600090815260336020526040902055603554610f9590826110c6565b6035556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6000610fe830611123565b15905090565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110295750611029610fdd565b80611037575060005460ff16155b6110725760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff1615801561109d576000805460ff1961ff0019909116610100171660011790555b6110a5611129565b6110af83836111cb565b80156110c1576000805461ff00191690555b505050565b60008282111561111d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600054610100900460ff16806111425750611142610fdd565b80611150575060005460ff16155b61118b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff161580156111b6576000805460ff1961ff0019909116610100171660011790555b80156111c8576000805461ff00191690555b50565b600054610100900460ff16806111e457506111e4610fdd565b806111f2575060005460ff16155b61122d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015611258576000805460ff1961ff0019909116610100171660011790555b825161126b9060369060208601906112a3565b50815161127f9060379060208501906112a3565b506038805460ff1916601217905580156110c1576000805461ff0019169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826112d9576000855561131f565b82601f106112f257805160ff191683800117855561131f565b8280016001018555821561131f579182015b8281111561131f578251825591602001919060010190611304565b5061132b92915061132f565b5090565b5b8082111561132b576000815560010161133056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200b687fddcd01dbad6e1d5fbd49cb041f69ed61684a12a4c26c6e37e0f5ad7c2a64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101165760003560e01c806379ba5097116100a2578063a9059cbb11610071578063a9059cbb14610352578063c4d66de81461037e578063dd62ed3e146103a4578063e3056a34146103d2578063f2fde38b146103da57610116565b806379ba5097146102ea57806379cc6790146102f257806395d89b411461031e578063a457c2d71461032657610116565b806323b872dd116100e957806323b872dd14610216578063313ce5671461024c578063395093511461026a57806340c10f191461029657806370a08231146102c457610116565b806306fdde031461011b578063095ea7b3146101985780630c340a24146101d857806318160ddd146101fc575b600080fd5b610123610400565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b038135169060200135610496565b604080519115158252519081900360200190f35b6101e06104b3565b604080516001600160a01b039092168252519081900360200190f35b6102046104c2565b60408051918252519081900360200190f35b6101c46004803603606081101561022c57600080fd5b506001600160a01b038135811691602081013590911690604001356104c8565b61025461054f565b6040805160ff9092168252519081900360200190f35b6101c46004803603604081101561028057600080fd5b506001600160a01b038135169060200135610558565b6102c2600480360360408110156102ac57600080fd5b506001600160a01b0381351690602001356105a6565b005b610204600480360360208110156102da57600080fd5b50356001600160a01b031661060c565b6102c2610627565b6102c26004803603604081101561030857600080fd5b506001600160a01b038135169060200135610737565b610123610799565b6101c46004803603604081101561033c57600080fd5b506001600160a01b0381351690602001356107fa565b6101c46004803603604081101561036857600080fd5b506001600160a01b038135169060200135610862565b6102c26004803603602081101561039457600080fd5b50356001600160a01b0316610876565b610204600480360360408110156103ba57600080fd5b506001600160a01b0381358116916020013516610972565b6101e061099d565b6102c2600480360360208110156103f057600080fd5b50356001600160a01b03166109ac565b60368054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b820191906000526020600020905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b60006104aa6104a3610aaa565b8484610aae565b50600192915050565b6065546001600160a01b031681565b60355490565b60006104d5848484610b9a565b610545846104e1610aaa565b61054085604051806060016040528060288152602001611400602891396001600160a01b038a1660009081526034602052604081209061051f610aaa565b6001600160a01b031681526020810191909152604001600020549190610cf7565b610aae565b5060019392505050565b60385460ff1690565b60006104aa610565610aaa565b846105408560346000610576610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610d8e565b6065546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610def565b5050565b6001600160a01b031660009081526033602052604090205490565b6066546001600160a01b0316801580159061064a5750336001600160a01b038216145b61069b576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b606580546001600160a01b038381166001600160a01b0319808416919091179384905560668054909116905560405191811692169082907f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f90600090a36066546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6065546001600160a01b0316331461078f576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610ee1565b60378054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b60006104aa610807610aaa565b84610540856040518060600160405280602581526020016114926025913960346000610831610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610cf7565b60006104aa61086f610aaa565b8484610b9a565b600054610100900460ff168061088f575061088f610fdd565b8061089d575060005460ff16155b6108d85760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015610903576000805460ff1961ff0019909116610100171660011790555b61090c82610fee565b61095d604051806040016040528060148152602001734772617068204375726174696f6e20536861726560601b8152506040518060400160405280600381526020016247435360e81b815250611010565b8015610608576000805461ff00191690555050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6066546001600160a01b031681565b6065546001600160a01b03163314610a04576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610a56576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b606680546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b038316610af35760405162461bcd60e51b815260040180806020018281038252602481526020018061146e6024913960400191505060405180910390fd5b6001600160a01b038216610b385760405162461bcd60e51b815260040180806020018281038252602281526020018061138a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260346020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610bdf5760405162461bcd60e51b81526004018080602001828103825260258152602001806114496025913960400191505060405180910390fd5b6001600160a01b038216610c245760405162461bcd60e51b81526004018080602001828103825260238152602001806113456023913960400191505060405180910390fd5b610c2f8383836110c1565b610c6c816040518060600160405280602681526020016113ac602691396001600160a01b0386166000908152603360205260409020549190610cf7565b6001600160a01b038085166000908152603360205260408082209390935590841681522054610c9b9082610d8e565b6001600160a01b0380841660008181526033602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d865760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d4b578181015183820152602001610d33565b50505050905090810190601f168015610d785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610e4a576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610e56600083836110c1565b603554610e639082610d8e565b6035556001600160a01b038216600090815260336020526040902054610e899082610d8e565b6001600160a01b03831660008181526033602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610f265760405162461bcd60e51b81526004018080602001828103825260218152602001806114286021913960400191505060405180910390fd5b610f32826000836110c1565b610f6f81604051806060016040528060228152602001611368602291396001600160a01b0385166000908152603360205260409020549190610cf7565b6001600160a01b038316600090815260336020526040902055603554610f9590826110c6565b6035556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6000610fe830611123565b15905090565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110295750611029610fdd565b80611037575060005460ff16155b6110725760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff1615801561109d576000805460ff1961ff0019909116610100171660011790555b6110a5611129565b6110af83836111cb565b80156110c1576000805461ff00191690555b505050565b60008282111561111d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600054610100900460ff16806111425750611142610fdd565b80611150575060005460ff16155b61118b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff161580156111b6576000805460ff1961ff0019909116610100171660011790555b80156111c8576000805461ff00191690555b50565b600054610100900460ff16806111e457506111e4610fdd565b806111f2575060005460ff16155b61122d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015611258576000805460ff1961ff0019909116610100171660011790555b825161126b9060369060208601906112a3565b50815161127f9060379060208501906112a3565b506038805460ff1916601217905580156110c1576000805461ff0019169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826112d9576000855561131f565b82601f106112f257805160ff191683800117855561131f565b8280016001018555821561131f579182015b8281111561131f578251825591602001919060010190611304565b5061132b92915061132f565b5090565b5b8082111561132b576000815560010161133056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200b687fddcd01dbad6e1d5fbd49cb041f69ed61684a12a4c26c6e37e0f5ad7c2a64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphProxy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/Curation#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager.json new file mode 100644 index 000000000..cd09f36f8 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager.json @@ -0,0 +1,364 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "EpochManager", + "sourceName": "contracts/epochs/EpochManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epochLength", + "type": "uint256" + } + ], + "name": "EpochLengthUpdate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "caller", + "type": "address" + } + ], + "name": "EpochRun", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_block", + "type": "uint256" + } + ], + "name": "blockHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "blockNum", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlockSinceStart", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epoch", + "type": "uint256" + } + ], + "name": "epochsSince", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochsSinceUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isCurrentEpochRun", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastRunEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "runEpoch", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "setEpochLength", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161103461016460003980610aac525080610a83525080610a5a525080610a31525080610a085250806109df5250806109b652506110346000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager_Instance.json new file mode 100644 index 000000000..cd09f36f8 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#EpochManager_Instance.json @@ -0,0 +1,364 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "EpochManager", + "sourceName": "contracts/epochs/EpochManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epochLength", + "type": "uint256" + } + ], + "name": "EpochLengthUpdate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "address", + "name": "caller", + "type": "address" + } + ], + "name": "EpochRun", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_block", + "type": "uint256" + } + ], + "name": "blockHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "blockNum", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "currentEpochBlockSinceStart", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochLength", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epoch", + "type": "uint256" + } + ], + "name": "epochsSince", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "epochsSinceUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isCurrentEpochRun", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastLengthUpdateEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastRunEpoch", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "runEpoch", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_epochLength", + "type": "uint256" + } + ], + "name": "setEpochLength", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161103461016460003980610aac525080610a83525080610a5a525080610a31525080610a085250806109df5250806109b652506110346000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#GraphProxy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/EpochManager#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphHorizon_Periphery#Dummy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphHorizon_Periphery#Dummy.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphHorizon_Periphery#Dummy.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments.json new file mode 100644 index 000000000..d9b94acde --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments.json @@ -0,0 +1,308 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphPayments", + "sourceName": "contracts/payments/GraphPayments.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "GraphPaymentsInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "name": "GraphPaymentsInvalidProtocolPaymentCut", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensReceiver", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDelegationPool", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensProtocol", + "type": "uint256" + } + ], + "name": "PaymentCollected", + "type": "event" + }, + { + "inputs": [], + "name": "PROTOCOL_PAYMENT_CUT", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101e060405234801561001157600080fd5b5060405161132f38038061132f833981016040819052610030916104ee565b816001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b290610372565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e590610372565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e90610372565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015890610372565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019090610372565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb90610372565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020990610372565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024590610372565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a90610372565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a45061033a81620f4240101590565b819061035c5760405163d3097bcb60e01b815260040161007191815260200190565b506101c081905261036b610420565b505061058a565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103ad91815260200190565b602060405180830381865afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee919061051a565b9050826001600160a01b0382166104195760405163218f5add60e11b8152600401610071919061053c565b5092915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156104705760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146104cf5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b80516001600160a01b03811681146104e957600080fd5b919050565b6000806040838503121561050157600080fd5b61050a836104d2565b9150602083015190509250929050565b60006020828403121561052c57600080fd5b610535826104d2565b9392505050565b602081526000825180602084015260005b8181101561056a576020818601810151604086840101520161054d565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c051610d086106276000396000818160560152610104015260005050600050506000505060005050600050506000505060005050600050506000818161012e015281816102c1015261035401526000818160d5015281816102220152818161025a0152818161029201526103f50152610d086000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments_Instance.json new file mode 100644 index 000000000..d9b94acde --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphPayments#GraphPayments_Instance.json @@ -0,0 +1,308 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphPayments", + "sourceName": "contracts/payments/GraphPayments.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "GraphPaymentsInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "protocolPaymentCut", + "type": "uint256" + } + ], + "name": "GraphPaymentsInvalidProtocolPaymentCut", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensReceiver", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDelegationPool", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensProtocol", + "type": "uint256" + } + ], + "name": "PaymentCollected", + "type": "event" + }, + { + "inputs": [], + "name": "PROTOCOL_PAYMENT_CUT", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101e060405234801561001157600080fd5b5060405161132f38038061132f833981016040819052610030916104ee565b816001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b290610372565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e590610372565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e90610372565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015890610372565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019090610372565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb90610372565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020990610372565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024590610372565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a90610372565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a45061033a81620f4240101590565b819061035c5760405163d3097bcb60e01b815260040161007191815260200190565b506101c081905261036b610420565b505061058a565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103ad91815260200190565b602060405180830381865afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee919061051a565b9050826001600160a01b0382166104195760405163218f5add60e11b8152600401610071919061053c565b5092915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156104705760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146104cf5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b80516001600160a01b03811681146104e957600080fd5b919050565b6000806040838503121561050157600080fd5b61050a836104d2565b9150602083015190509250929050565b60006020828403121561052c57600080fd5b610535826104d2565b9392505050565b602081526000825180602084015260005b8181101561056a576020818601810151604086840101520161054d565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c051610d086106276000396000818160560152610104015260005050600050506000505060005050600050506000505060005050600050506000818161012e015281816102c1015261035401526000818160d5015281816102220152818161025a0152818161029201526103f50152610d086000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphProxyAdmin#GraphProxyAdmin.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphProxyAdmin#GraphProxyAdmin.json new file mode 100644 index 000000000..07f0623c5 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphProxyAdmin#GraphProxyAdmin.json @@ -0,0 +1,234 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxyAdmin", + "sourceName": "contracts/upgrades/GraphProxyAdmin.sol", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract GraphUpgradeable", + "name": "_implementation", + "type": "address" + }, + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract GraphUpgradeable", + "name": "_implementation", + "type": "address" + }, + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "changeProxyAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "getProxyAdmin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "getProxyImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "getProxyPendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "_implementation", + "type": "address" + } + ], + "name": "upgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506100243361002960201b610a0c1760201c565b61004b565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b610a648061005a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80637eff275e116100715780637eff275e146101b157806399a88ec4146101df578063e3056a341461020d578063eb451a0214610215578063f2fde38b14610243578063f3b7dead14610269576100a9565b806307ebde0e146100ae5780630c340a2414610139578063204e1c7a1461015d5780635bf410eb1461018357806379ba5097146101a9575b600080fd5b610137600480360360608110156100c457600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156100f857600080fd5b82018360208201111561010a57600080fd5b8035906020019184600183028401116401000000008311171561012c57600080fd5b50909250905061028f565b005b610141610388565b604080516001600160a01b039092168252519081900360200190f35b6101416004803603602081101561017357600080fd5b50356001600160a01b0316610397565b6101416004803603602081101561019957600080fd5b50356001600160a01b031661046a565b610137610525565b610137600480360360408110156101c757600080fd5b506001600160a01b0381358116916020013516610633565b610137600480360360408110156101f557600080fd5b506001600160a01b03813581169160200135166106f6565b61014161079d565b6101376004803603604081101561022b57600080fd5b506001600160a01b03813581169160200135166107ac565b6101376004803603602081101561025957600080fd5b50356001600160a01b0316610853565b6101416004803603602081101561027f57600080fd5b50356001600160a01b0316610951565b6000546001600160a01b031633146102e7576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b836001600160a01b0316639ce7abe58484846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001806020018281038252848482818152602001925080828437600081840152601f19601f820116905080830192505050945050505050600060405180830381600087803b15801561036a57600080fd5b505af115801561037e573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031681565b6000806000836001600160a01b03166040518080635c60da1b60e01b8152506004019050600060405180830381855afa9150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b50915091508161044b576040805162461bcd60e51b8152602060048201526016602482015275141c9bde1e481a5b5c1b0818d85b1b0819985a5b195960521b604482015290519081900360640190fd5b80806020019051602081101561046057600080fd5b5051949350505050565b6000806000836001600160a01b0316604051808063396f7b2360e01b8152506004019050600060405180830381855afa9150503d80600081146104c9576040519150601f19603f3d011682016040523d82523d6000602084013e6104ce565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601d60248201527f50726f78792070656e64696e67496d706c2063616c6c206661696c6564000000604482015290519081900360640190fd5b6001546001600160a01b031680158015906105485750336001600160a01b038216145b610599576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b0316331461068b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663704b6c02826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b505050505050565b6000546001600160a01b0316331461074e576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b0316633659cfe6826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6001546001600160a01b031681565b6000546001600160a01b03163314610804576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663a2594d82826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6000546001600160a01b031633146108ab576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b0381166108fd576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000806000836001600160a01b031660405180806303e1469160e61b8152506004019050600060405180830381855afa9150503d80600081146109b0576040519150601f19603f3d011682016040523d82523d6000602084013e6109b5565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601760248201527f50726f78792061646d696e2063616c6c206661696c6564000000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b039290921691909117905556fea26469706673582212208b271ee4c7625d89f662c15e90f70e142245bf56f0595043fe9af742b09d958c64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a95760003560e01c80637eff275e116100715780637eff275e146101b157806399a88ec4146101df578063e3056a341461020d578063eb451a0214610215578063f2fde38b14610243578063f3b7dead14610269576100a9565b806307ebde0e146100ae5780630c340a2414610139578063204e1c7a1461015d5780635bf410eb1461018357806379ba5097146101a9575b600080fd5b610137600480360360608110156100c457600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156100f857600080fd5b82018360208201111561010a57600080fd5b8035906020019184600183028401116401000000008311171561012c57600080fd5b50909250905061028f565b005b610141610388565b604080516001600160a01b039092168252519081900360200190f35b6101416004803603602081101561017357600080fd5b50356001600160a01b0316610397565b6101416004803603602081101561019957600080fd5b50356001600160a01b031661046a565b610137610525565b610137600480360360408110156101c757600080fd5b506001600160a01b0381358116916020013516610633565b610137600480360360408110156101f557600080fd5b506001600160a01b03813581169160200135166106f6565b61014161079d565b6101376004803603604081101561022b57600080fd5b506001600160a01b03813581169160200135166107ac565b6101376004803603602081101561025957600080fd5b50356001600160a01b0316610853565b6101416004803603602081101561027f57600080fd5b50356001600160a01b0316610951565b6000546001600160a01b031633146102e7576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b836001600160a01b0316639ce7abe58484846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001806020018281038252848482818152602001925080828437600081840152601f19601f820116905080830192505050945050505050600060405180830381600087803b15801561036a57600080fd5b505af115801561037e573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031681565b6000806000836001600160a01b03166040518080635c60da1b60e01b8152506004019050600060405180830381855afa9150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b50915091508161044b576040805162461bcd60e51b8152602060048201526016602482015275141c9bde1e481a5b5c1b0818d85b1b0819985a5b195960521b604482015290519081900360640190fd5b80806020019051602081101561046057600080fd5b5051949350505050565b6000806000836001600160a01b0316604051808063396f7b2360e01b8152506004019050600060405180830381855afa9150503d80600081146104c9576040519150601f19603f3d011682016040523d82523d6000602084013e6104ce565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601d60248201527f50726f78792070656e64696e67496d706c2063616c6c206661696c6564000000604482015290519081900360640190fd5b6001546001600160a01b031680158015906105485750336001600160a01b038216145b610599576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b0316331461068b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663704b6c02826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b505050505050565b6000546001600160a01b0316331461074e576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b0316633659cfe6826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6001546001600160a01b031681565b6000546001600160a01b03163314610804576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663a2594d82826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6000546001600160a01b031633146108ab576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b0381166108fd576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000806000836001600160a01b031660405180806303e1469160e61b8152506004019050600060405180830381855afa9150503d80600081146109b0576040519150601f19603f3d011682016040523d82523d6000602084013e6109b5565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601760248201527f50726f78792061646d696e2063616c6c206661696c6564000000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b039290921691909117905556fea26469706673582212208b271ee4c7625d89f662c15e90f70e142245bf56f0595043fe9af742b09d958c64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphProxy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken.json new file mode 100644 index 000000000..5889eeaf0 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken.json @@ -0,0 +1,750 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphToken", + "sourceName": "contracts/l2/token/L2GraphToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeBurned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeMinted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "gateway", + "type": "address" + } + ], + "name": "GatewaySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Address", + "type": "address" + } + ], + "name": "L1AddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "addMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeBurn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeMint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "isMinter", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1Address", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "_v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "_r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "removeMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_gw", + "type": "address" + } + ], + "name": "setGateway", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "setL1Address", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101206040527fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac564726080527fefcec85968da792893fa503eb21730083fc6c50ed5461e56163b28335b2a5f9660a0527f044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d60c0527fe33842a7acd1d5a1d28f25a931703e5605152dc48d64dc4716efdae1f565959160e0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9610100523480156100c657600080fd5b5060805160a05160c05160e0516101005161261e61010660003980611547525080611eae525080611e5e525080611e3d525080611e1c525061261e6000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken_Instance.json new file mode 100644 index 000000000..5889eeaf0 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphToken#GraphToken_Instance.json @@ -0,0 +1,750 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphToken", + "sourceName": "contracts/l2/token/L2GraphToken.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeBurned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "BridgeMinted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "gateway", + "type": "address" + } + ], + "name": "GatewaySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Address", + "type": "address" + } + ], + "name": "L1AddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "MinterRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + } + ], + "name": "NewPendingOwnership", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "inputs": [], + "name": "acceptOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "addMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "internalType": "address", + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeBurn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "bridgeMint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "burnFrom", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "decimals", + "outputs": [ + { + "internalType": "uint8", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "gateway", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "governor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "addedValue", + "type": "uint256" + } + ], + "name": "increaseAllowance", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "isMinter", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1Address", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "mint", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "name", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "name": "nonces", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "pendingGovernor", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_owner", + "type": "address" + }, + { + "internalType": "address", + "name": "_spender", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_deadline", + "type": "uint256" + }, + { + "internalType": "uint8", + "name": "_v", + "type": "uint8" + }, + { + "internalType": "bytes32", + "name": "_r", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_s", + "type": "bytes32" + } + ], + "name": "permit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_account", + "type": "address" + } + ], + "name": "removeMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceMinter", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_gw", + "type": "address" + } + ], + "name": "setGateway", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_addr", + "type": "address" + } + ], + "name": "setL1Address", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "symbol", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newGovernor", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101206040527fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac564726080527fefcec85968da792893fa503eb21730083fc6c50ed5461e56163b28335b2a5f9660a0527f044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d60c0527fe33842a7acd1d5a1d28f25a931703e5605152dc48d64dc4716efdae1f565959160e0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9610100523480156100c657600080fd5b5060805160a05160c05160e0516101005161261e61010660003980611547525080611eae525080611e5e525080611e3d525080611e1c525061261e6000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphProxy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway.json new file mode 100644 index 000000000..a9c54a794 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway.json @@ -0,0 +1,647 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphTokenGateway", + "sourceName": "contracts/l2/gateway/L2GraphTokenGateway.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "DepositFinalized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Counterpart", + "type": "address" + } + ], + "name": "L1CounterpartAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1GRT", + "type": "address" + } + ], + "name": "L1TokenAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l2Router", + "type": "address" + } + ], + "name": "L2RouterSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPauseGuardian", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "pauseGuardian", + "type": "address" + } + ], + "name": "NewPauseGuardian", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PartialPauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "TxToL1", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "l2ToL1Id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "exitNum", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "WithdrawalInitiated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "l1ERC20", + "type": "address" + } + ], + "name": "calculateL2TokenAddress", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "finalizeInboundTransfer", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "getOutboundCalldata", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "l1Counterpart", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1GRT", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l2Router", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPausePartialTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPauseTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Counterpart", + "type": "address" + } + ], + "name": "setL1CounterpartAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1GRT", + "type": "address" + } + ], + "name": "setL1TokenAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l2Router", + "type": "address" + } + ], + "name": "setL2Router", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newPauseGuardian", + "type": "address" + } + ], + "name": "setPauseGuardian", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_newPaused", + "type": "bool" + } + ], + "name": "setPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161222b6101696000398061112f5250806111065250806110dd528061150a5250806110b452508061108b525080611062525080611039525061222b6000f3fe6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "deployedBytecode": "0x6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json new file mode 100644 index 000000000..a9c54a794 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/GraphTokenGateway#GraphTokenGateway_Instance.json @@ -0,0 +1,647 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "L2GraphTokenGateway", + "sourceName": "contracts/l2/gateway/L2GraphTokenGateway.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "DepositFinalized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Counterpart", + "type": "address" + } + ], + "name": "L1CounterpartAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1GRT", + "type": "address" + } + ], + "name": "L1TokenAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l2Router", + "type": "address" + } + ], + "name": "L2RouterSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPauseGuardian", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "pauseGuardian", + "type": "address" + } + ], + "name": "NewPauseGuardian", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PartialPauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "isPaused", + "type": "bool" + } + ], + "name": "PauseChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "_id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "TxToL1", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "l1Token", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "l2ToL1Id", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "exitNum", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "WithdrawalInitiated", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "l1ERC20", + "type": "address" + } + ], + "name": "calculateL2TokenAddress", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "finalizeInboundTransfer", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "getOutboundCalldata", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "l1Counterpart", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1GRT", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l2Router", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPausePartialTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "lastPauseTime", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "outboundTransfer", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "pauseGuardian", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "paused", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1Counterpart", + "type": "address" + } + ], + "name": "setL1CounterpartAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l1GRT", + "type": "address" + } + ], + "name": "setL1TokenAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_l2Router", + "type": "address" + } + ], + "name": "setL2Router", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newPauseGuardian", + "type": "address" + } + ], + "name": "setPauseGuardian", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bool", + "name": "_newPaused", + "type": "bool" + } + ], + "name": "setPaused", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161222b6101696000398061112f5250806111065250806110dd528061150a5250806110b452508061108b525080611062525080611039525061222b6000f3fe6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "deployedBytecode": "0x6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#GraphProxy_HorizonStaking.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_GraphPayments.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#OZProxyDummy_PaymentsEscrow.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json new file mode 100644 index 000000000..942e4b2e5 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_GraphPayments.json @@ -0,0 +1,132 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ProxyAdmin", + "sourceName": "contracts/proxy/transparent/ProxyAdmin.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "OwnableInvalidOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "OwnableUnauthorizedAccount", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "UPGRADE_INTERFACE_VERSION", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ITransparentUpgradeableProxy", + "name": "proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "implementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "deployedBytecode": "0x60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json new file mode 100644 index 000000000..942e4b2e5 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#ProxyAdmin_PaymentsEscrow.json @@ -0,0 +1,132 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ProxyAdmin", + "sourceName": "contracts/proxy/transparent/ProxyAdmin.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "OwnableInvalidOwner", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "OwnableUnauthorizedAccount", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "inputs": [], + "name": "UPGRADE_INTERFACE_VERSION", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract ITransparentUpgradeableProxy", + "name": "proxy", + "type": "address" + }, + { + "internalType": "address", + "name": "implementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "deployedBytecode": "0x60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#RegisteredDummy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#RegisteredDummy.json new file mode 100644 index 000000000..0d073cb30 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#RegisteredDummy.json @@ -0,0 +1,10 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "Dummy", + "sourceName": "contracts/mocks/Dummy.sol", + "abi": [], + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json new file mode 100644 index 000000000..c7f1f49b4 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_GraphPayments.json @@ -0,0 +1,116 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TransparentUpgradeableProxy", + "sourceName": "contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_logic", + "type": "address" + }, + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "admin", + "type": "address" + } + ], + "name": "ERC1967InvalidAdmin", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ERC1967InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "ERC1967NonPayable", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [], + "name": "ProxyDeniedAdminAccess", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "previousAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + } + ], + "bytecode": "0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103", + "deployedBytecode": "0x608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json new file mode 100644 index 000000000..c7f1f49b4 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow.json @@ -0,0 +1,116 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TransparentUpgradeableProxy", + "sourceName": "contracts/proxy/transparent/TransparentUpgradeableProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_logic", + "type": "address" + }, + { + "internalType": "address", + "name": "initialOwner", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "stateMutability": "payable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "admin", + "type": "address" + } + ], + "name": "ERC1967InvalidAdmin", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ERC1967InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "ERC1967NonPayable", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [], + "name": "ProxyDeniedAdminAccess", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "previousAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + } + ], + "bytecode": "0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103", + "deployedBytecode": "0x608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking.json new file mode 100644 index 000000000..e442f237e --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking.json @@ -0,0 +1,2280 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "HorizonStaking", + "sourceName": "contracts/staking/HorizonStaking.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "address", + "name": "stakingExtensionAddress", + "type": "address" + }, + { + "internalType": "address", + "name": "subgraphDataServiceAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingCallerIsServiceProvider", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientIdleStake", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientShares", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientStakeForLegacyAllocations", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minRequired", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "HorizonStakingInvalidDelegationFeeCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidDelegationPoolState", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "maxMaxVerifierCut", + "type": "uint32" + } + ], + "name": "HorizonStakingInvalidMaxVerifierCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidProvision", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "HorizonStakingInvalidThawingPeriod", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroShares", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingNotAuthorized", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingNothingThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingProvisionAlreadyExists", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingSlippageProtection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "HorizonStakingStillThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingTooManyThawRequests", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingTooManyTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingVerifierNotAllowed", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListEmptyList", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidIterations", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidZeroId", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListMaxElementsExceeded", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyController", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyGovernor", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "AllowedLockedVerifierSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegatedTokensWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "DelegationFeeCutSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "DelegationSlashingEnabled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashingSkipped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "MaxThawingPeriodSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "OperatorSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionIncreased", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersStaged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionThawed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeDeposited", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "StakeLocked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "ThawRequestCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + } + ], + "name": "ThawRequestFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawRequestsFulfilled", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ThawRequestsFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [], + "name": "ThawingPeriodCleared", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDeprovisioned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensToDelegationPoolAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensUndelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "destination", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "VerifierTokensSent", + "type": "event" + }, + { + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "acceptProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToDelegationPool", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "clearThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSharesOut", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "deprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegatedTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "delegator", + "type": "address" + } + ], + "name": "getDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.Delegation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + } + ], + "name": "getDelegationFeeCut", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegationPool", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.DelegationPool", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getIdleStake", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getMaxThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProviderTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProvision", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "createdAt", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "maxVerifierCutPending", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriodPending", + "type": "uint64" + } + ], + "internalType": "struct IHorizonStakingTypes.Provision", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getServiceProvider", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokensStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensProvisioned", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.ServiceProvider", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "getThawRequest", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "next", + "type": "bytes32" + } + ], + "internalType": "struct IHorizonStakingTypes.ThawRequest", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawRequestList", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32", + "name": "head", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "tail", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "count", + "type": "uint256" + } + ], + "internalType": "struct LinkedList.List", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "delegationRatio", + "type": "uint32" + } + ], + "name": "getTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAllowedLockedVerifier", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAuthorized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isDelegationSlashingEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provisionLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "oldVerifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newVerifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "reprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setAllowedLockedVerifier", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "setDelegationFeeCut", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setDelegationSlashingEnabled", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "setMaxThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperatorLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "setProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensVerifier", + "type": "uint256" + }, + { + "internalType": "address", + "name": "verifierDestination", + "type": "address" + } + ], + "name": "slash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "unstake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "minSharesForNewProvider", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b50604051615b2c380380615b2c8339810160408190526100309161041b565b828181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610351565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610351565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610351565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610351565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610351565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610351565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610351565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610351565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610351565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b039081166101c052929092166101e052506104ce915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038c91815260200190565b602060405180830381865afa1580156103a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103cd919061045e565b9050826001600160a01b0382166103f85760405163218f5add60e11b81526004016100749190610480565b5092915050565b80516001600160a01b038116811461041657600080fd5b919050565b60008060006060848603121561043057600080fd5b610439846103ff565b9250610447602085016103ff565b9150610455604085016103ff565b90509250925092565b60006020828403121561047057600080fd5b610479826103ff565b9392505050565b602081526000825180602084015260005b818110156104ae5760208186018101516040868401015201610491565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516155836105a960003960006102fb015260008181610dbf015281816115b60152818161166801528181612f5401528181613e120152614172015260005050600050506000505060005050600050506000612f0d015260005050600050506000505060008181610d89015281816117cd015281816125b2015281816128c80152818161295f01528181612ac00152818161380b015281816139cb01528181613d88015261401e01526155836000f3fe6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "deployedBytecode": "0x6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking_Instance.json new file mode 100644 index 000000000..e442f237e --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStaking#HorizonStaking_Instance.json @@ -0,0 +1,2280 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "HorizonStaking", + "sourceName": "contracts/staking/HorizonStaking.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "address", + "name": "stakingExtensionAddress", + "type": "address" + }, + { + "internalType": "address", + "name": "subgraphDataServiceAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingCallerIsServiceProvider", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientIdleStake", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientShares", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientStakeForLegacyAllocations", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minRequired", + "type": "uint256" + } + ], + "name": "HorizonStakingInsufficientTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "HorizonStakingInvalidDelegationFeeCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidDelegationPoolState", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "maxMaxVerifierCut", + "type": "uint32" + } + ], + "name": "HorizonStakingInvalidMaxVerifierCut", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingInvalidProvision", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "HorizonStakingInvalidThawingPeriod", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroShares", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingNotAuthorized", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingNothingThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingProvisionAlreadyExists", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minShares", + "type": "uint256" + } + ], + "name": "HorizonStakingSlippageProtection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "HorizonStakingStillThawing", + "type": "error" + }, + { + "inputs": [], + "name": "HorizonStakingTooManyThawRequests", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxTokens", + "type": "uint256" + } + ], + "name": "HorizonStakingTooManyTokens", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "HorizonStakingVerifierNotAllowed", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListEmptyList", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidIterations", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListInvalidZeroId", + "type": "error" + }, + { + "inputs": [], + "name": "LinkedListMaxElementsExceeded", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyController", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyGovernor", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "AllowedLockedVerifierSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegatedTokensWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "DelegationFeeCutSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bool", + "name": "enabled", + "type": "bool" + } + ], + "name": "DelegationSlashingEnabled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "DelegationSlashingSkipped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "MaxThawingPeriodSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "OperatorSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionIncreased", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "ProvisionParametersStaged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionSlashed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ProvisionThawed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeDeposited", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "until", + "type": "uint256" + } + ], + "name": "StakeLocked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "ThawRequestCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + } + ], + "name": "ThawRequestFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawRequestsFulfilled", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "ThawRequestsFulfilled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [], + "name": "ThawingPeriodCleared", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensDeprovisioned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensToDelegationPoolAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "TokensUndelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "destination", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "VerifierTokensSent", + "type": "event" + }, + { + "stateMutability": "nonpayable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "acceptProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToDelegationPool", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "addToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "clearThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minSharesOut", + "type": "uint256" + } + ], + "name": "delegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "deprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegatedTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "delegator", + "type": "address" + } + ], + "name": "getDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.Delegation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + } + ], + "name": "getDelegationFeeCut", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegationPool", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.DelegationPool", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getIdleStake", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getMaxThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProviderTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProvision", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "createdAt", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "maxVerifierCutPending", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriodPending", + "type": "uint64" + } + ], + "internalType": "struct IHorizonStakingTypes.Provision", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getServiceProvider", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokensStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensProvisioned", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.ServiceProvider", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "getThawRequest", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "next", + "type": "bytes32" + } + ], + "internalType": "struct IHorizonStakingTypes.ThawRequest", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawRequestList", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32", + "name": "head", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "tail", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "count", + "type": "uint256" + } + ], + "internalType": "struct LinkedList.List", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "delegationRatio", + "type": "uint32" + } + ], + "name": "getTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAllowedLockedVerifier", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAuthorized", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isDelegationSlashingEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "provisionLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "oldVerifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newVerifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "reprovision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setAllowedLockedVerifier", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "uint256", + "name": "feeCut", + "type": "uint256" + } + ], + "name": "setDelegationFeeCut", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "setDelegationSlashingEnabled", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "maxThawingPeriod", + "type": "uint64" + } + ], + "name": "setMaxThawingPeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "bool", + "name": "allowed", + "type": "bool" + } + ], + "name": "setOperatorLocked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + } + ], + "name": "setProvisionParameters", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensVerifier", + "type": "uint256" + }, + { + "internalType": "address", + "name": "verifierDestination", + "type": "address" + } + ], + "name": "slash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "stakeToProvision", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "undelegate", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "unstake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "newServiceProvider", + "type": "address" + }, + { + "internalType": "uint256", + "name": "minSharesForNewProvider", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "nThawRequests", + "type": "uint256" + } + ], + "name": "withdrawDelegated", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b50604051615b2c380380615b2c8339810160408190526100309161041b565b828181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610351565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610351565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610351565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610351565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610351565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610351565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610351565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610351565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610351565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b039081166101c052929092166101e052506104ce915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038c91815260200190565b602060405180830381865afa1580156103a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103cd919061045e565b9050826001600160a01b0382166103f85760405163218f5add60e11b81526004016100749190610480565b5092915050565b80516001600160a01b038116811461041657600080fd5b919050565b60008060006060848603121561043057600080fd5b610439846103ff565b9250610447602085016103ff565b9150610455604085016103ff565b90509250925092565b60006020828403121561047057600080fd5b610479826103ff565b9392505050565b602081526000825180602084015260005b818110156104ae5760208186018101516040868401015201610491565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516155836105a960003960006102fb015260008181610dbf015281816115b60152818161166801528181612f5401528181613e120152614172015260005050600050506000505060005050600050506000612f0d015260005050600050506000505060008181610d89015281816117cd015281816125b2015281816128c80152818161295f01528181612ac00152818161380b015281816139cb01528181613d88015261401e01526155836000f3fe6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "deployedBytecode": "0x6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#ExponentialRebates.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#ExponentialRebates.json new file mode 100644 index 000000000..fc0c0c29f --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#ExponentialRebates.json @@ -0,0 +1,55 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "ExponentialRebates", + "sourceName": "contracts/staking/libraries/ExponentialRebates.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "uint256", + "name": "fees", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "stake", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "alphaNumerator", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "alphaDenominator", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "lambdaNumerator", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "lambdaDenominator", + "type": "uint32" + } + ], + "name": "exponentialRebates", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + } + ], + "bytecode": "0x610c2d610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806349484d811461003a575b600080fd5b61004d610048366004610a66565b61005f565b60405190815260200160405180910390f35b6000806100728660030b8660030b61011c565b9050806000036100855787915050610112565b87600003610097576000915050610112565b60006100a98560030b8560030b61011c565b905060006100b8828a8c61013c565b9050600f6100c582610153565b13156100d657899350505050610112565b60006100ff6001607f1b6100fa866100f56100f087610ae2565b610169565b610882565b61089d565b905061010b818c6108d4565b9450505050505b9695505050505050565b600061013561012f846001607f1b610920565b83610988565b9392505050565b600061014b61012f8585610920565b949350505050565b60006101636001607f1b83610b14565b92915050565b60006101796101ff607c1b610ae2565b82121561018857506000919050565b8160000361019b57506001607f1b919050565b60008213156101c55760405162461bcd60e51b81526004016101bc90610b42565b60405180910390fd5b6000806101d66001607c1b85610b69565b91508190506001607f1b6101ea8280610b7d565b6101f49190610b14565b9050610208816710e1b3be415a0000610b7d565b6102129084610bad565b92506001607f1b6102238383610b7d565b61022d9190610b14565b9050610241816705a0913f6b1e0000610b7d565b61024b9084610bad565b92506001607f1b61025c8383610b7d565b6102669190610b14565b905061027a81670168244fdac78000610b7d565b6102849084610bad565b92506001607f1b6102958383610b7d565b61029f9190610b14565b90506102b281664807432bc18000610b7d565b6102bc9084610bad565b92506001607f1b6102cd8383610b7d565b6102d79190610b14565b90506102ea81660c0135dca04000610b7d565b6102f49084610bad565b92506001607f1b6103058383610b7d565b61030f9190610b14565b9050610322816601b707b1cdc000610b7d565b61032c9084610bad565b92506001607f1b61033d8383610b7d565b6103479190610b14565b9050610359816536e0f639b800610b7d565b6103639084610bad565b92506001607f1b6103748383610b7d565b61037e9190610b14565b905061039081650618fee9f800610b7d565b61039a9084610bad565b92506001607f1b6103ab8383610b7d565b6103b59190610b14565b90506103c681649c197dcc00610b7d565b6103d09084610bad565b92506001607f1b6103e18383610b7d565b6103eb9190610b14565b90506103fc81640e30dce400610b7d565b6104069084610bad565b92506001607f1b6104178383610b7d565b6104219190610b14565b90506104328164012ebd1300610b7d565b61043c9084610bad565b92506001607f1b61044d8383610b7d565b6104579190610b14565b9050610467816317499f00610b7d565b6104719084610bad565b92506001607f1b6104828383610b7d565b61048c9190610b14565b905061049c816301a9d480610b7d565b6104a69084610bad565b92506001607f1b6104b78383610b7d565b6104c19190610b14565b90506104d081621c6380610b7d565b6104da9084610bad565b92506001607f1b6104eb8383610b7d565b6104f59190610b14565b9050610504816201c638610b7d565b61050e9084610bad565b92506001607f1b61051f8383610b7d565b6105299190610b14565b905061053781611ab8610b7d565b6105419084610bad565b92506001607f1b6105528383610b7d565b61055c9190610b14565b905061056a8161017c610b7d565b6105749084610bad565b92506001607f1b6105858383610b7d565b61058f9190610b14565b905061059c816014610b7d565b6105a69084610bad565b92506001607f1b6105b78383610b7d565b6105c19190610b14565b90506105ce816001610b7d565b6105d89084610bad565b92506001607f1b826105f26721c3677c82b4000086610b14565b6105fc9190610bad565b6106069190610bad565b925061061184610ae2565b9350600160841b841615610657577243cbaf42a000812488fc5c220ad7b97bf6e99e61064a6cf1aaddd7742e56d32fb9f9974485610b7d565b6106549190610b14565b92505b600160831b84161561069c577105d27a9f51c31b7c2f8038212a057477999161068f6e0afe10820813d65dfe6a33c07f738f85610b7d565b6106999190610b14565b92505b600160821b8416156106e157701b4c902e273a58678d6d3bfdb93db96d026106d46f02582ab704279e8efd15e0265855c47a85610b7d565b6106de9190610b14565b92505b600160811b841615610726577003b1cc971a9bb5b9867477440d6d1577506107196f1152aaa3bf81cb9fdb76eae12d02957185610b7d565b6107239190610b14565b92505b600160801b84161561076b5770015bf0a8b1457695355fb8ac404e7a79e361075e6f2f16ac6c59de6f8d5d6f63c1482a7c8685610b7d565b6107689190610b14565b92505b6001607f1b8416156107af576fd3094c70f034de4b96ff7d5b6f99fcd86107a26f4da2cbf1be5827f9eb3ad1aa9866ebb385610b7d565b6107ac9190610b14565b92505b6001607e1b8416156107f3576fa45af1e1f40c333b3de1db4dd55f29a76107e66f63afbe7ab2082ba1a0ae5e4eb1b479dc85610b7d565b6107f09190610b14565b92505b6001607d1b841615610837576f910b022db7ae67ce76b441c27035c6a161082a6f70f5a893b608861e1f58934f97aea57d85610b7d565b6108349190610b14565b92505b6001607c1b84161561087b576f88415abbe9a76bead8d00cf112e4d4a861086e6f783eafef1c0a8f3978c7f81824d62ebf85610b7d565b6108789190610b14565b92505b5050919050565b60006001607f1b6108938484610920565b6101359190610b14565b6000600160ff1b82036108c25760405162461bcd60e51b81526004016101bc90610b42565b610135836108cf84610ae2565b6109f2565b6000808212156108f65760405162461bcd60e51b81526004016101bc90610b42565b60006109028484610920565b905060008113610916576000915050610163565b607f1c9392505050565b600082158061092d575081155b1561093a57506000610163565b508181028183828161094e5761094e610afe565b0514158061096b57508282828161096757610967610afe565b0514155b156101635760405162461bcd60e51b81526004016101bc90610bd5565b6000816000036109aa5760405162461bcd60e51b81526004016101bc90610bd5565b600160ff1b831480156109be575081600019145b156109db5760405162461bcd60e51b81526004016101bc90610bd5565b8183816109ea576109ea610afe565b059392505050565b818101600083128015610a055750600082125b8015610a1057508281135b8061096b5750600083138015610a265750600082135b801561096b5750828112156101635760405162461bcd60e51b81526004016101bc90610bd5565b803563ffffffff81168114610a6157600080fd5b919050565b60008060008060008060c08789031215610a7f57600080fd5b8635955060208701359450610a9660408801610a4d565b9350610aa460608801610a4d565b9250610ab260808801610a4d565b9150610ac060a08801610a4d565b90509295509295509295565b634e487b7160e01b600052601160045260246000fd5b6000600160ff1b8201610af757610af7610acc565b5060000390565b634e487b7160e01b600052601260045260246000fd5b600082610b2357610b23610afe565b600160ff1b821460001984141615610b3d57610b3d610acc565b500590565b6020808252600d908201526c6f75742d6f662d626f756e647360981b604082015260600190565b600082610b7857610b78610afe565b500790565b80820260008212600160ff1b84141615610b9957610b99610acc565b818105831482151761016357610163610acc565b8082018281126000831280158216821582161715610bcd57610bcd610acc565b505092915050565b6020808252600890820152676f766572666c6f7760c01b60408201526060019056fea26469706673582212201cac81319f1bc19d15bc3a02519b03e3559a9cf147525a96caa8cb800f74da2864736f6c634300081b0033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806349484d811461003a575b600080fd5b61004d610048366004610a66565b61005f565b60405190815260200160405180910390f35b6000806100728660030b8660030b61011c565b9050806000036100855787915050610112565b87600003610097576000915050610112565b60006100a98560030b8560030b61011c565b905060006100b8828a8c61013c565b9050600f6100c582610153565b13156100d657899350505050610112565b60006100ff6001607f1b6100fa866100f56100f087610ae2565b610169565b610882565b61089d565b905061010b818c6108d4565b9450505050505b9695505050505050565b600061013561012f846001607f1b610920565b83610988565b9392505050565b600061014b61012f8585610920565b949350505050565b60006101636001607f1b83610b14565b92915050565b60006101796101ff607c1b610ae2565b82121561018857506000919050565b8160000361019b57506001607f1b919050565b60008213156101c55760405162461bcd60e51b81526004016101bc90610b42565b60405180910390fd5b6000806101d66001607c1b85610b69565b91508190506001607f1b6101ea8280610b7d565b6101f49190610b14565b9050610208816710e1b3be415a0000610b7d565b6102129084610bad565b92506001607f1b6102238383610b7d565b61022d9190610b14565b9050610241816705a0913f6b1e0000610b7d565b61024b9084610bad565b92506001607f1b61025c8383610b7d565b6102669190610b14565b905061027a81670168244fdac78000610b7d565b6102849084610bad565b92506001607f1b6102958383610b7d565b61029f9190610b14565b90506102b281664807432bc18000610b7d565b6102bc9084610bad565b92506001607f1b6102cd8383610b7d565b6102d79190610b14565b90506102ea81660c0135dca04000610b7d565b6102f49084610bad565b92506001607f1b6103058383610b7d565b61030f9190610b14565b9050610322816601b707b1cdc000610b7d565b61032c9084610bad565b92506001607f1b61033d8383610b7d565b6103479190610b14565b9050610359816536e0f639b800610b7d565b6103639084610bad565b92506001607f1b6103748383610b7d565b61037e9190610b14565b905061039081650618fee9f800610b7d565b61039a9084610bad565b92506001607f1b6103ab8383610b7d565b6103b59190610b14565b90506103c681649c197dcc00610b7d565b6103d09084610bad565b92506001607f1b6103e18383610b7d565b6103eb9190610b14565b90506103fc81640e30dce400610b7d565b6104069084610bad565b92506001607f1b6104178383610b7d565b6104219190610b14565b90506104328164012ebd1300610b7d565b61043c9084610bad565b92506001607f1b61044d8383610b7d565b6104579190610b14565b9050610467816317499f00610b7d565b6104719084610bad565b92506001607f1b6104828383610b7d565b61048c9190610b14565b905061049c816301a9d480610b7d565b6104a69084610bad565b92506001607f1b6104b78383610b7d565b6104c19190610b14565b90506104d081621c6380610b7d565b6104da9084610bad565b92506001607f1b6104eb8383610b7d565b6104f59190610b14565b9050610504816201c638610b7d565b61050e9084610bad565b92506001607f1b61051f8383610b7d565b6105299190610b14565b905061053781611ab8610b7d565b6105419084610bad565b92506001607f1b6105528383610b7d565b61055c9190610b14565b905061056a8161017c610b7d565b6105749084610bad565b92506001607f1b6105858383610b7d565b61058f9190610b14565b905061059c816014610b7d565b6105a69084610bad565b92506001607f1b6105b78383610b7d565b6105c19190610b14565b90506105ce816001610b7d565b6105d89084610bad565b92506001607f1b826105f26721c3677c82b4000086610b14565b6105fc9190610bad565b6106069190610bad565b925061061184610ae2565b9350600160841b841615610657577243cbaf42a000812488fc5c220ad7b97bf6e99e61064a6cf1aaddd7742e56d32fb9f9974485610b7d565b6106549190610b14565b92505b600160831b84161561069c577105d27a9f51c31b7c2f8038212a057477999161068f6e0afe10820813d65dfe6a33c07f738f85610b7d565b6106999190610b14565b92505b600160821b8416156106e157701b4c902e273a58678d6d3bfdb93db96d026106d46f02582ab704279e8efd15e0265855c47a85610b7d565b6106de9190610b14565b92505b600160811b841615610726577003b1cc971a9bb5b9867477440d6d1577506107196f1152aaa3bf81cb9fdb76eae12d02957185610b7d565b6107239190610b14565b92505b600160801b84161561076b5770015bf0a8b1457695355fb8ac404e7a79e361075e6f2f16ac6c59de6f8d5d6f63c1482a7c8685610b7d565b6107689190610b14565b92505b6001607f1b8416156107af576fd3094c70f034de4b96ff7d5b6f99fcd86107a26f4da2cbf1be5827f9eb3ad1aa9866ebb385610b7d565b6107ac9190610b14565b92505b6001607e1b8416156107f3576fa45af1e1f40c333b3de1db4dd55f29a76107e66f63afbe7ab2082ba1a0ae5e4eb1b479dc85610b7d565b6107f09190610b14565b92505b6001607d1b841615610837576f910b022db7ae67ce76b441c27035c6a161082a6f70f5a893b608861e1f58934f97aea57d85610b7d565b6108349190610b14565b92505b6001607c1b84161561087b576f88415abbe9a76bead8d00cf112e4d4a861086e6f783eafef1c0a8f3978c7f81824d62ebf85610b7d565b6108789190610b14565b92505b5050919050565b60006001607f1b6108938484610920565b6101359190610b14565b6000600160ff1b82036108c25760405162461bcd60e51b81526004016101bc90610b42565b610135836108cf84610ae2565b6109f2565b6000808212156108f65760405162461bcd60e51b81526004016101bc90610b42565b60006109028484610920565b905060008113610916576000915050610163565b607f1c9392505050565b600082158061092d575081155b1561093a57506000610163565b508181028183828161094e5761094e610afe565b0514158061096b57508282828161096757610967610afe565b0514155b156101635760405162461bcd60e51b81526004016101bc90610bd5565b6000816000036109aa5760405162461bcd60e51b81526004016101bc90610bd5565b600160ff1b831480156109be575081600019145b156109db5760405162461bcd60e51b81526004016101bc90610bd5565b8183816109ea576109ea610afe565b059392505050565b818101600083128015610a055750600082125b8015610a1057508281135b8061096b5750600083138015610a265750600082135b801561096b5750828112156101635760405162461bcd60e51b81526004016101bc90610bd5565b803563ffffffff81168114610a6157600080fd5b919050565b60008060008060008060c08789031215610a7f57600080fd5b8635955060208701359450610a9660408801610a4d565b9350610aa460608801610a4d565b9250610ab260808801610a4d565b9150610ac060a08801610a4d565b90509295509295509295565b634e487b7160e01b600052601160045260246000fd5b6000600160ff1b8201610af757610af7610acc565b5060000390565b634e487b7160e01b600052601260045260246000fd5b600082610b2357610b23610afe565b600160ff1b821460001984141615610b3d57610b3d610acc565b500590565b6020808252600d908201526c6f75742d6f662d626f756e647360981b604082015260600190565b600082610b7857610b78610afe565b500790565b80820260008212600160ff1b84141615610b9957610b99610acc565b818105831482151761016357610163610acc565b8082018281126000831280158216821582161715610bcd57610bcd610acc565b505092915050565b6020808252600890820152676f766572666c6f7760c01b60408201526060019056fea26469706673582212201cac81319f1bc19d15bc3a02519b03e3559a9cf147525a96caa8cb800f74da2864736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#HorizonStakingExtension.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#HorizonStakingExtension.json new file mode 100644 index 000000000..7cd249086 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/HorizonStakingExtension#HorizonStakingExtension.json @@ -0,0 +1,1263 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "HorizonStakingExtension", + "sourceName": "contracts/staking/HorizonStakingExtension.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "address", + "name": "subgraphDataServiceAddress", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyController", + "type": "error" + }, + { + "inputs": [], + "name": "ManagedOnlyGovernor", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + } + ], + "name": "PPMMathInvalidPPM", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "poi", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bool", + "name": "isPublic", + "type": "bool" + } + ], + "name": "AllocationClosed", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "counterpart", + "type": "address" + } + ], + "name": "CounterpartStakingAddressSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "assetHolder", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "epoch", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "protocolTax", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "curationFees", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "queryFees", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "queryRebates", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "delegationRewards", + "type": "uint256" + } + ], + "name": "RebateCollected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "name": "StakeDelegated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "StakeDeposited", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "delegator", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "TransferredDelegationReturnedToDelegator", + "type": "event" + }, + { + "inputs": [], + "name": "__DEPRECATED_getThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "poi", + "type": "bytes32" + } + ], + "name": "closeAllocation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "getAllocation", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "createdAtEpoch", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "closedAtEpoch", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "collectedFees", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "__DEPRECATED_effectiveAllocation", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerAllocatedToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "distributedRebates", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingExtension.Allocation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "getAllocationData", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "getAllocationState", + "outputs": [ + { + "internalType": "enum IHorizonStakingExtension.AllocationState", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegatedTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "delegator", + "type": "address" + } + ], + "name": "getDelegation", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.Delegation", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + } + ], + "name": "getDelegationFeeCut", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getDelegationPool", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.DelegationPool", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getIdleStake", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "indexer", + "type": "address" + } + ], + "name": "getIndexerStakedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getMaxThawingPeriod", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProviderTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "getProvision", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "sharesThawing", + "type": "uint256" + }, + { + "internalType": "uint32", + "name": "maxVerifierCut", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriod", + "type": "uint64" + }, + { + "internalType": "uint64", + "name": "createdAt", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "maxVerifierCutPending", + "type": "uint32" + }, + { + "internalType": "uint64", + "name": "thawingPeriodPending", + "type": "uint64" + } + ], + "internalType": "struct IHorizonStakingTypes.Provision", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getServiceProvider", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "tokensStaked", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensProvisioned", + "type": "uint256" + } + ], + "internalType": "struct IHorizonStakingTypes.ServiceProvider", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "getStake", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getSubgraphAllocatedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "thawRequestId", + "type": "bytes32" + } + ], + "name": "getThawRequest", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "shares", + "type": "uint256" + }, + { + "internalType": "uint64", + "name": "thawingUntil", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "next", + "type": "bytes32" + } + ], + "internalType": "struct IHorizonStakingTypes.ThawRequest", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawRequestList", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32", + "name": "head", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "tail", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "count", + "type": "uint256" + } + ], + "internalType": "struct LinkedList.List", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getThawedTokens", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "address", + "name": "verifier", + "type": "address" + }, + { + "internalType": "uint32", + "name": "delegationRatio", + "type": "uint32" + } + ], + "name": "getTokensAvailable", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "indexer", + "type": "address" + } + ], + "name": "hasStake", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "isActiveAllocation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "isAllocation", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "verifier", + "type": "address" + } + ], + "name": "isAllowedLockedVerifier", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isDelegationSlashingEnabled", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "operator", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + } + ], + "name": "isOperator", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "onTokenTransfer", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "counterpart", + "type": "address" + } + ], + "name": "setCounterpartStakingAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x6101e060405234801561001157600080fd5b5060405161396738038061396783398101604081905261003091610411565b818181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610347565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610347565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610347565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610347565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610347565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610347565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610347565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610347565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610347565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b03166101c052506104b4915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038291815260200190565b602060405180830381865afa15801561039f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c39190610444565b9050826001600160a01b0382166103ee5760405163218f5add60e11b81526004016100749190610466565b5092915050565b80516001600160a01b038116811461040c57600080fd5b919050565b6000806040838503121561042457600080fd5b61042d836103f5565b915061043b602084016103f5565b90509250929050565b60006020828403121561045657600080fd5b61045f826103f5565b9392505050565b602081526000825180602084015260005b818110156104945760208186018101516040868401015201610477565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516133d761059060003960008181611c3601528181611e3601526123f00152600061205b015260005050600061178501526000818161213d0152818161280501526129080152600081816112c70152611b6f015260008181610bbf01528181610cbc01528181610ed601526116dc015260005050600050506000505060008181611044015281816111fa01528181612023015281816121b20152818161239a015281816124c2015261263201526133d76000f3fe6080604052600436106101f25760003560e01c806398c657dc1161010d578063b6363cf2116100a0578063e2e1e8e91161006f578063e2e1e8e914610a0b578063e73e14bf14610a38578063f1d60d6614610a70578063fb744cc014610a90578063fc54fb2714610ab057600080fd5b8063b6363cf2146108dd578063b7ca724114610927578063c0641994146109c1578063ccebcabb146109dc57600080fd5b8063a4c0ed36116100dc578063a4c0ed3614610837578063a784d49814610857578063ac9650d814610877578063ae4fe67a146108a457600080fd5b806398c657dc1461072d5780639ce7abe51461075a578063a212daf81461077a578063a2594d821461081757600080fd5b8063561285e411610185578063872d048911610154578063872d04891461064c5780638cc01c861461066c5780638d3c100a146106ed5780639054e3431461070d57600080fd5b8063561285e4146105a95780636a3ca383146105fc5780637573ef4f1461062c5780637a7664601461031157600080fd5b806325d9897e116101c157806325d9897e1461036957806339514ad21461047957806344c32a61146104ab57806355c85269146104cb57600080fd5b806308ce5f68146102495780630e0229231461027c5780631787e69f146103115780631ae720451461034757600080fd5b366102445760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b600080fd5b34801561025557600080fd5b50610269610264366004612bec565b610ac8565b6040519081526020015b60405180910390f35b34801561028857600080fd5b5061029c610297366004612c25565b610add565b604051610273919060006101208201905060018060a01b0383511682526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010083015161010083015292915050565b34801561031d57600080fd5b5061026961032c366004612c25565b6001600160a01b03166000908152600e602052604090205490565b34801561035357600080fd5b50610367610362366004612c25565b610bbd565b005b34801561037557600080fd5b5061046c610384366004612bec565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516102739190612c42565b34801561048557600080fd5b50601a546001600160401b03165b6040516001600160401b039091168152602001610273565b3480156104b757600080fd5b506103676104c6366004612cd2565b610cba565b3480156104d757600080fd5b506105776104e6366004612c25565b6001600160a01b039081166000908152600f602090815260408083208151610120810183528154909516808652600182015493860184905260028201549286018390526003820154606087015260048201546080870152600582015460a0870152600682015460c0870152600782015460e08701819052600890920154610100909601959095529394919390929091565b604080516001600160a01b0390961686526020860194909452928401919091526060830152608082015260a001610273565b3480156105b557600080fd5b506105c96105c4366004612bec565b610d68565b60405161027391908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561060857600080fd5b5061061c610617366004612c25565b610df6565b6040519015158152602001610273565b34801561063857600080fd5b50610269610647366004612cfe565b610e1b565b34801561065857600080fd5b50610269610667366004612d4d565b610e7f565b34801561067857600080fd5b506106d2610687366004612c25565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b60408051825181526020928301519281019290925201610273565b3480156106f957600080fd5b50610367610708366004612d96565b610ed4565b34801561071957600080fd5b50610269610728366004612dbb565b6113a0565b34801561073957600080fd5b5061074d610748366004612c25565b611488565b6040516102739190612e11565b34801561076657600080fd5b50610367610775366004612e81565b611493565b34801561078657600080fd5b506105c9610795366004612dbb565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561082357600080fd5b50610367610832366004612c25565b6115be565b34801561084357600080fd5b50610367610852366004612ed5565b6116da565b34801561086357600080fd5b50610269610872366004612c25565b6118e7565b34801561088357600080fd5b50610897610892366004612f30565b6118f2565b6040516102739190612fc9565b3480156108b057600080fd5b5061061c6108bf366004612c25565b6001600160a01b031660009081526022602052604090205460ff1690565b3480156108e957600080fd5b5061061c6108f8366004612bec565b6001600160a01b0380821660009081526015602090815260408083209386168352929052205460ff1692915050565b34801561093357600080fd5b50610996610942366004613049565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b0316908201529181015190820152606001610273565b3480156109cd57600080fd5b50600d5463ffffffff16610493565b3480156109e857600080fd5b506109fc6109f7366004612dbb565b6119d9565b60405190518152602001610273565b348015610a1757600080fd5b50610269610a26366004613049565b60009081526010602052604090205490565b348015610a4457600080fd5b5061061c610a53366004612c25565b6001600160a01b03166000908152600e6020526040902054151590565b348015610a7c57600080fd5b5061061c610a8b366004612c25565b611a2b565b348015610a9c57600080fd5b50610269610aab366004612bec565b611a50565b348015610abc57600080fd5b5060205460ff1661061c565b6000610ad48383611a5c565b90505b92915050565b610b3860405180610120016040528060006001600160a01b0316815260200160008019168152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b039081166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e08301526008015461010082015290565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3f9190613062565b6001600160a01b0316336001600160a01b031614610c7057604051635d9044cd60e01b815260040160405180910390fd5b601880546001600160a01b0319166001600160a01b0383169081179091556040517f690e9b982dc9aefaa1cfed186a2d2045a638013d658104102c9437235bee4b6090600090a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3c919061307f565b15610d5a57604051632b37d9d160e21b815260040160405180910390fd5b610d648282611a94565b5050565b610d936040518060800160405280600081526020016000815260200160008152602001600081525090565b610dbe6040518060800160405280600081526020016000815260200160008152602001600081525090565b6000610dca8585611e32565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b60006001610e0383611eb6565b6002811115610e1457610e14612dfb565b1492915050565b6001600160a01b038084166000908152601c60209081526040808320938616835292905290812081836002811115610e5557610e55612dfb565b6002811115610e6657610e66612dfb565b81526020019081526020016000205490505b9392505050565b600080610e8c8585611a5c565b90506000610e9a8686611f0f565b90506000610eae63ffffffff8616846130b7565b90506000610ebc8383611f3a565b9050610ec881856130ce565b98975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f56919061307f565b15610f7457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038116610fb35760405162461bcd60e51b815260206004820152600660248201526521616c6c6f6360d01b604482015260640161023b565b6000610fbe82611eb6565b90506000816002811115610fd457610fd4612dfb565b0361100c5760405162461bcd60e51b81526020600482015260086024820152670858dbdb1b1958dd60c21b604482015260640161023b565b8260000361101957505050565b6001600160a01b0382166000908152600f6020526040812060018101549091859080808061107333867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169190611f51565b600d5461108e908690600160401b900463ffffffff1661200e565b935061109a84866130e1565b600d549095506110bb9087908790640100000000900463ffffffff16612047565b92506110c783866130e1565b94508487600501546110d991906130ce565b6005880155600287015460009015806110ff5750601954600160a01b900463ffffffff16155b6111ca5760058801546002890154600d546019546040516349484d8160e01b81526004810194909452602484019290925263ffffffff600160a01b80830482166044860152600160c01b928390048216606486015283048116608485015291041660a482015273__$8eb3cac1482a31d7a7f2cbe7dc8bdcd821$__906349484d819060c401602060405180830381865af41580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c591906130f4565b6111cd565b60005b90506111dd81896008015461225a565b92506111e98387611f3a565b92506112296111f884886130e1565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690612274565b82156112915782886008015461123f91906130ce565b60088901558754611259906001600160a01b0316846122bc565b915061126582846130e1565b88546001600160a01b03908116600081815260176020526040902054929550611291928692161561234e565b5086546001600160a01b038a8116918891167ff5ded07502b6feba4c13b19a0c6646efd4b4119f439bcbd49076e4f0ed1eec4b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611323573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134791906130f4565b604080516001600160a01b039093168352602083019190915281018f9052606081018990526080810188905260a081018a905260c0810187905260e081018690526101000160405180910390a450505050505050505050565b6001600160a01b038084166000908152601e60209081526040808320868516845282528083209385168352929052908120600381015482036113e6576000915050610e78565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b801561147c576000818152601d602052604090206001810154426001600160401b039091161161146b5760028301546001840154825461145091906130b7565b61145a919061310d565b61146490856130ce565b9350611471565b5061147c565b600201549050611410565b50909695505050505050565b6000610ad782611eb6565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f89190613062565b6001600160a01b0316336001600160a01b0316146115585760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611586908690869060040161312f565b600060405180830381600087803b1580156115a057600080fd5b505af11580156115b4573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156115ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116239190613062565b6001600160a01b0316336001600160a01b0316146116835760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116be57600080fd5b505af11580156116d2573d6000803e3d6000fd5b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611738573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175c919061307f565b1561177a57604051632b37d9d160e21b815260040160405180910390fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e15760405162461bcd60e51b815260206004820152600c60248201526b4f4e4c595f4741544557415960a01b604482015260640161023b565b6018546001600160a01b0385811691161461183e5760405162461bcd60e51b815260206004820152601e60248201527f4f4e4c595f4c315f5354414b494e475f5448524f5547485f4252494447450000604482015260640161023b565b60008061184d838501856131a4565b909250905060ff8216611882576000818060200190518101906118709190613255565b905061187c86826123c4565b506116d2565b60001960ff8316016118b0576000818060200190518101906118a491906132a2565b905061187c86826123d0565b60405162461bcd60e51b815260206004820152600c60248201526b494e56414c49445f434f444560a01b604482015260640161023b565b6000610ad782612740565b604080516000815260208101909152606090826001600160401b0381111561191c5761191c61315e565b60405190808252806020026020018201604052801561194f57816020015b606081526020019060019003908161193a5790505b50915060005b838110156119d1576119ac3086868481811061197357611973613302565b90506020028101906119859190613318565b856040516020016119989392919061335e565b60405160208183030381529060405261278b565b8382815181106119be576119be613302565b6020908102919091010152600101611955565b505092915050565b6040805160208101909152600081526040805160208101909152600081526000611a038686611e32565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b600080611a3783611eb6565b6002811115611a4857611a48612dfb565b141592915050565b6000610ad48383611f0f565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610ad491906130e1565b6000611a9f83611eb6565b90506001816002811115611ab557611ab5612dfb565b14611aec5760405162461bcd60e51b81526020600482015260076024820152662161637469766560c81b604482015260640161023b565b6001600160a01b038381166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e0830152600801546101008201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bef91906130f4565b608082018190526060820151600091611c079161225a565b9050600082600001516001600160a01b0316336001600160a01b03161480611c78575082516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600090815260156020908152604080832093909416825291909152205460ff165b600d54909150600160801b900463ffffffff1682111580611c9b57506040830151155b15611cd55780611cd55760405162461bcd60e51b8152602060048201526005602482015264042c2eae8d60db1b604482015260640161023b565b60808301516001600160a01b0387166000908152600f6020526040908190206004019190915583015115611db957808015611d0f57508415155b15611d2757611d22868460000151612801565b611d36565b611d3483602001516128e7565b505b60408084015184516001600160a01b03166000908152600e6020529190912060010154611d6391906130e1565b83516001600160a01b03166000908152600e602090815260408083206001019390935582860151818701518352601090915291902054611da391906130e1565b6020808501516000908152601090915260409020555b60208084015184516080808701516040808901518151928352958201959095523394810194909452606084018990528415908401526001600160a01b03808a16939116907ff6725dd105a6fc88bb79a6e4627f128577186c567a17c94818d201c2a4ce14039060a00160405180910390a4505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611e8b57506001600160a01b0382166000908152601460205260409020610ad7565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610ad7565b6001600160a01b038082166000908152600f6020526040812080549192909116611ee35750600092915050565b600381015415801590611ef857506004810154155b15611f065750600192915050565b50600292915050565b600080611f1c8484611e32565b905080600501548160020154611f3291906130e1565b949350505050565b600081831115611f4a5781610ad4565b5090919050565b8015612009576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af1158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd1919061307f565b6120095760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161023b565b505050565b60008061201b8484612975565b9050610ad4817f000000000000000000000000000000000000000000000000000000000000000061121a565b60008260000361205957506000610e78565b7f00000000000000000000000000000000000000000000000000000000000000006000831580159061209357506001600160a01b03821615155b90508080156121065750604051634c4ea0ed60e01b8152600481018790526001600160a01b03831690634c4ea0ed90602401602060405180830381865afa1580156120e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612106919061307f565b1561224e5760006121178686612975565b90508015612244576040516307470bfb60e21b8152600481018890526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631d1c2fec906024016020604051808303816000875af1158015612186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121aa91906130f4565b506121e283827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906129c7565b60405163102ae65160e31b815260048101889052602481018290526001600160a01b03841690638157328890604401600060405180830381600087803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050505b9250610e78915050565b50600095945050505050565b600081831161226a576000610ad4565b610ad482846130e1565b8015610d6457604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156116be57600080fd5b6001600160a01b03821660009081526014602052604081206002810154829190158015906122fb57508054600160401b900463ffffffff16620f424010155b156123465780546000906123219063ffffffff600160401b9091048116908790612a0216565b905061232d81866130e1565b925082826002015461233f91906130ce565b6002830155505b509392505050565b8260000361235b57505050565b801561236b576120098284612a69565b6001600160a01b03808316600090815260176020526040902054166123be81156123955781612397565b835b857f00000000000000000000000000000000000000000000000000000000000000006121d2565b50505050565b80516120098184612a69565b80516001600160a01b039081166000908152601b602090815260408083207f0000000000000000000000000000000000000000000000000000000000000000909416835292905290812060030154600160601b90046001600160401b031690036124695760405162461bcd60e51b815260206004820152600a60248201526910b83937bb34b9b4b7b760b11b604482015260640161023b565b80516001600160a01b03908116600090815260146020908152604080832082860151909416835260048401909152902060028201541580156124bb575060038201541515806124bb5750600682015415155b156125b5577f0000000000000000000000000000000000000000000000000000000000000000602084015160405163a9059cbb60e01b81526001600160a01b0391821660048201526024810187905291169063a9059cbb906044016020604051808303816000875af1158015612535573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612559919061307f565b5082602001516001600160a01b031683600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de866040516125a791815260200190565b60405180910390a350505050565b60008260020154600014806125d1575082600501548360020154145b61260757826005015483600201546125e991906130e1565b60038401546125f890876130b7565b612602919061310d565b612609565b845b905080158061261f5750670de0b6b3a764000085105b156126ae576126548460200151866121d27f000000000000000000000000000000000000000000000000000000000000000090565b83602001516001600160a01b031684600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de876040516126a191815260200190565b60405180910390a3612739565b8483600201546126be91906130ce565b600284015560038301546126d39082906130ce565b600384015581546126e59082906130ce565b82556020808501518551604080518981529384018590526001600160a01b039283169391909216917fcd0366dce5247d874ffc60a762aa7abbb82c1695bbb171609c1b8861e279eb73910160405180910390a35b5050505050565b6001600160a01b0381166000908152600e6020526040812060028101546001820154600483015492549192909161277791906130e1565b61278191906130e1565b610ad791906130e1565b6060600080846001600160a01b0316846040516127a89190613385565b600060405180830381855af49150503d80600081146127e3576040519150601f19603f3d011682016040523d82523d6000602084013e6127e8565b606091505b50915091506127f8858383612ae8565b95945050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000604051636dba849360e11b81526001600160a01b038581166004830152919091169063db750926906024016020604051808303816000875af115801561286e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289291906130f4565b9050806000036128a157505050565b60006128ad8383612b44565b905060006128bb82846130e1565b6001600160a01b038086166000908152601760205260409020549192506127399183918791161561234e565b6040516377561f0760e11b8152600481018290526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063eeac3e0e906024016020604051808303816000875af1158015612951573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906130f4565b600061298482620f4240101590565b82906129a657604051633dc311df60e01b815260040161023b91815260200190565b506129bd6129b783620f42406130e1565b84612a02565b610ad490846130e1565b80156120095760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb90604401611f8e565b6000612a1183620f4240101590565b80612a245750612a2482620f4240101590565b83839091612a4e5760405163768bf0eb60e11b81526004810192909252602482015260440161023b565b50620f42409050612a5f83856130b7565b610ad4919061310d565b6001600160a01b0382166000908152600e6020526040902054612a8d9082906130ce565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc290612adc9084815260200190565b60405180910390a25050565b606082612afd57612af882612bab565b610e78565b8151158015612b1457506001600160a01b0384163b155b15612b3d57604051639996b31560e01b81526001600160a01b038516600482015260240161023b565b5080610e78565b6001600160a01b0382166000908152601460205260408120600281015482919015801590612b8457508054640100000000900463ffffffff16620f424010155b156123465780546000906123219063ffffffff6401000000009091048116908790612a0216565b805115612bbb5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b0381168114612bd457600080fd5b60008060408385031215612bff57600080fd5b8235612c0a81612bd7565b91506020830135612c1a81612bd7565b809150509250929050565b600060208284031215612c3757600080fd5b8135610ad481612bd7565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151612cb060c084018263ffffffff169052565b5060e0830151612ccb60e08401826001600160401b03169052565b5092915050565b60008060408385031215612ce557600080fd5b8235612cf081612bd7565b946020939093013593505050565b600080600060608486031215612d1357600080fd5b8335612d1e81612bd7565b92506020840135612d2e81612bd7565b9150604084013560038110612d4257600080fd5b809150509250925092565b600080600060608486031215612d6257600080fd5b8335612d6d81612bd7565b92506020840135612d7d81612bd7565b9150604084013563ffffffff81168114612d4257600080fd5b60008060408385031215612da957600080fd5b823591506020830135612c1a81612bd7565b600080600060608486031215612dd057600080fd5b8335612ddb81612bd7565b92506020840135612deb81612bd7565b91506040840135612d4281612bd7565b634e487b7160e01b600052602160045260246000fd5b6020810160038310612e3357634e487b7160e01b600052602160045260246000fd5b91905290565b60008083601f840112612e4b57600080fd5b5081356001600160401b03811115612e6257600080fd5b602083019150836020828501011115612e7a57600080fd5b9250929050565b600080600060408486031215612e9657600080fd5b8335612ea181612bd7565b925060208401356001600160401b03811115612ebc57600080fd5b612ec886828701612e39565b9497909650939450505050565b60008060008060608587031215612eeb57600080fd5b8435612ef681612bd7565b93506020850135925060408501356001600160401b03811115612f1857600080fd5b612f2487828801612e39565b95989497509550505050565b60008060208385031215612f4357600080fd5b82356001600160401b03811115612f5957600080fd5b8301601f81018513612f6a57600080fd5b80356001600160401b03811115612f8057600080fd5b8560208260051b8401011115612f9557600080fd5b6020919091019590945092505050565b60005b83811015612fc0578181015183820152602001612fa8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561303d57603f198786030184528151805180875261301a816020890160208501612fa5565b601f01601f19169590950160209081019550938401939190910190600101612ff1565b50929695505050505050565b60006020828403121561305b57600080fd5b5035919050565b60006020828403121561307457600080fd5b8151610ad481612bd7565b60006020828403121561309157600080fd5b81518015158114610ad457600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610ad757610ad76130a1565b80820180821115610ad757610ad76130a1565b81810381811115610ad757610ad76130a1565b60006020828403121561310657600080fd5b5051919050565b60008261312a57634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561319c5761319c61315e565b604052919050565b600080604083850312156131b757600080fd5b823560ff811681146131c857600080fd5b915060208301356001600160401b038111156131e357600080fd5b8301601f810185136131f457600080fd5b80356001600160401b0381111561320d5761320d61315e565b613220601f8201601f1916602001613174565b81815286602083850101111561323557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312801561326857600080fd5b50604051602081016001600160401b038111828210171561328b5761328b61315e565b604052825161329981612bd7565b81529392505050565b600060408284031280156132b557600080fd5b50604080519081016001600160401b03811182821017156132d8576132d861315e565b60405282516132e681612bd7565b815260208301516132f681612bd7565b60208201529392505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261332f57600080fd5b8301803591506001600160401b0382111561334957600080fd5b602001915036819003821315612e7a57600080fd5b82848237600083820160008152835161337b818360208801612fa5565b0195945050505050565b60008251613397818460208701612fa5565b919091019291505056fea264697066735822122038ad83d20c219353421029f1ad8c4f7667d5f0e86af1579c64603bb56827d86064736f6c634300081b0033", + "deployedBytecode": "0x6080604052600436106101f25760003560e01c806398c657dc1161010d578063b6363cf2116100a0578063e2e1e8e91161006f578063e2e1e8e914610a0b578063e73e14bf14610a38578063f1d60d6614610a70578063fb744cc014610a90578063fc54fb2714610ab057600080fd5b8063b6363cf2146108dd578063b7ca724114610927578063c0641994146109c1578063ccebcabb146109dc57600080fd5b8063a4c0ed36116100dc578063a4c0ed3614610837578063a784d49814610857578063ac9650d814610877578063ae4fe67a146108a457600080fd5b806398c657dc1461072d5780639ce7abe51461075a578063a212daf81461077a578063a2594d821461081757600080fd5b8063561285e411610185578063872d048911610154578063872d04891461064c5780638cc01c861461066c5780638d3c100a146106ed5780639054e3431461070d57600080fd5b8063561285e4146105a95780636a3ca383146105fc5780637573ef4f1461062c5780637a7664601461031157600080fd5b806325d9897e116101c157806325d9897e1461036957806339514ad21461047957806344c32a61146104ab57806355c85269146104cb57600080fd5b806308ce5f68146102495780630e0229231461027c5780631787e69f146103115780631ae720451461034757600080fd5b366102445760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b600080fd5b34801561025557600080fd5b50610269610264366004612bec565b610ac8565b6040519081526020015b60405180910390f35b34801561028857600080fd5b5061029c610297366004612c25565b610add565b604051610273919060006101208201905060018060a01b0383511682526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010083015161010083015292915050565b34801561031d57600080fd5b5061026961032c366004612c25565b6001600160a01b03166000908152600e602052604090205490565b34801561035357600080fd5b50610367610362366004612c25565b610bbd565b005b34801561037557600080fd5b5061046c610384366004612bec565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516102739190612c42565b34801561048557600080fd5b50601a546001600160401b03165b6040516001600160401b039091168152602001610273565b3480156104b757600080fd5b506103676104c6366004612cd2565b610cba565b3480156104d757600080fd5b506105776104e6366004612c25565b6001600160a01b039081166000908152600f602090815260408083208151610120810183528154909516808652600182015493860184905260028201549286018390526003820154606087015260048201546080870152600582015460a0870152600682015460c0870152600782015460e08701819052600890920154610100909601959095529394919390929091565b604080516001600160a01b0390961686526020860194909452928401919091526060830152608082015260a001610273565b3480156105b557600080fd5b506105c96105c4366004612bec565b610d68565b60405161027391908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561060857600080fd5b5061061c610617366004612c25565b610df6565b6040519015158152602001610273565b34801561063857600080fd5b50610269610647366004612cfe565b610e1b565b34801561065857600080fd5b50610269610667366004612d4d565b610e7f565b34801561067857600080fd5b506106d2610687366004612c25565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b60408051825181526020928301519281019290925201610273565b3480156106f957600080fd5b50610367610708366004612d96565b610ed4565b34801561071957600080fd5b50610269610728366004612dbb565b6113a0565b34801561073957600080fd5b5061074d610748366004612c25565b611488565b6040516102739190612e11565b34801561076657600080fd5b50610367610775366004612e81565b611493565b34801561078657600080fd5b506105c9610795366004612dbb565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561082357600080fd5b50610367610832366004612c25565b6115be565b34801561084357600080fd5b50610367610852366004612ed5565b6116da565b34801561086357600080fd5b50610269610872366004612c25565b6118e7565b34801561088357600080fd5b50610897610892366004612f30565b6118f2565b6040516102739190612fc9565b3480156108b057600080fd5b5061061c6108bf366004612c25565b6001600160a01b031660009081526022602052604090205460ff1690565b3480156108e957600080fd5b5061061c6108f8366004612bec565b6001600160a01b0380821660009081526015602090815260408083209386168352929052205460ff1692915050565b34801561093357600080fd5b50610996610942366004613049565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b0316908201529181015190820152606001610273565b3480156109cd57600080fd5b50600d5463ffffffff16610493565b3480156109e857600080fd5b506109fc6109f7366004612dbb565b6119d9565b60405190518152602001610273565b348015610a1757600080fd5b50610269610a26366004613049565b60009081526010602052604090205490565b348015610a4457600080fd5b5061061c610a53366004612c25565b6001600160a01b03166000908152600e6020526040902054151590565b348015610a7c57600080fd5b5061061c610a8b366004612c25565b611a2b565b348015610a9c57600080fd5b50610269610aab366004612bec565b611a50565b348015610abc57600080fd5b5060205460ff1661061c565b6000610ad48383611a5c565b90505b92915050565b610b3860405180610120016040528060006001600160a01b0316815260200160008019168152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b039081166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e08301526008015461010082015290565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3f9190613062565b6001600160a01b0316336001600160a01b031614610c7057604051635d9044cd60e01b815260040160405180910390fd5b601880546001600160a01b0319166001600160a01b0383169081179091556040517f690e9b982dc9aefaa1cfed186a2d2045a638013d658104102c9437235bee4b6090600090a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3c919061307f565b15610d5a57604051632b37d9d160e21b815260040160405180910390fd5b610d648282611a94565b5050565b610d936040518060800160405280600081526020016000815260200160008152602001600081525090565b610dbe6040518060800160405280600081526020016000815260200160008152602001600081525090565b6000610dca8585611e32565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b60006001610e0383611eb6565b6002811115610e1457610e14612dfb565b1492915050565b6001600160a01b038084166000908152601c60209081526040808320938616835292905290812081836002811115610e5557610e55612dfb565b6002811115610e6657610e66612dfb565b81526020019081526020016000205490505b9392505050565b600080610e8c8585611a5c565b90506000610e9a8686611f0f565b90506000610eae63ffffffff8616846130b7565b90506000610ebc8383611f3a565b9050610ec881856130ce565b98975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f56919061307f565b15610f7457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038116610fb35760405162461bcd60e51b815260206004820152600660248201526521616c6c6f6360d01b604482015260640161023b565b6000610fbe82611eb6565b90506000816002811115610fd457610fd4612dfb565b0361100c5760405162461bcd60e51b81526020600482015260086024820152670858dbdb1b1958dd60c21b604482015260640161023b565b8260000361101957505050565b6001600160a01b0382166000908152600f6020526040812060018101549091859080808061107333867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169190611f51565b600d5461108e908690600160401b900463ffffffff1661200e565b935061109a84866130e1565b600d549095506110bb9087908790640100000000900463ffffffff16612047565b92506110c783866130e1565b94508487600501546110d991906130ce565b6005880155600287015460009015806110ff5750601954600160a01b900463ffffffff16155b6111ca5760058801546002890154600d546019546040516349484d8160e01b81526004810194909452602484019290925263ffffffff600160a01b80830482166044860152600160c01b928390048216606486015283048116608485015291041660a482015273__$8eb3cac1482a31d7a7f2cbe7dc8bdcd821$__906349484d819060c401602060405180830381865af41580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c591906130f4565b6111cd565b60005b90506111dd81896008015461225a565b92506111e98387611f3a565b92506112296111f884886130e1565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690612274565b82156112915782886008015461123f91906130ce565b60088901558754611259906001600160a01b0316846122bc565b915061126582846130e1565b88546001600160a01b03908116600081815260176020526040902054929550611291928692161561234e565b5086546001600160a01b038a8116918891167ff5ded07502b6feba4c13b19a0c6646efd4b4119f439bcbd49076e4f0ed1eec4b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611323573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134791906130f4565b604080516001600160a01b039093168352602083019190915281018f9052606081018990526080810188905260a081018a905260c0810187905260e081018690526101000160405180910390a450505050505050505050565b6001600160a01b038084166000908152601e60209081526040808320868516845282528083209385168352929052908120600381015482036113e6576000915050610e78565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b801561147c576000818152601d602052604090206001810154426001600160401b039091161161146b5760028301546001840154825461145091906130b7565b61145a919061310d565b61146490856130ce565b9350611471565b5061147c565b600201549050611410565b50909695505050505050565b6000610ad782611eb6565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f89190613062565b6001600160a01b0316336001600160a01b0316146115585760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611586908690869060040161312f565b600060405180830381600087803b1580156115a057600080fd5b505af11580156115b4573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156115ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116239190613062565b6001600160a01b0316336001600160a01b0316146116835760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116be57600080fd5b505af11580156116d2573d6000803e3d6000fd5b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611738573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175c919061307f565b1561177a57604051632b37d9d160e21b815260040160405180910390fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e15760405162461bcd60e51b815260206004820152600c60248201526b4f4e4c595f4741544557415960a01b604482015260640161023b565b6018546001600160a01b0385811691161461183e5760405162461bcd60e51b815260206004820152601e60248201527f4f4e4c595f4c315f5354414b494e475f5448524f5547485f4252494447450000604482015260640161023b565b60008061184d838501856131a4565b909250905060ff8216611882576000818060200190518101906118709190613255565b905061187c86826123c4565b506116d2565b60001960ff8316016118b0576000818060200190518101906118a491906132a2565b905061187c86826123d0565b60405162461bcd60e51b815260206004820152600c60248201526b494e56414c49445f434f444560a01b604482015260640161023b565b6000610ad782612740565b604080516000815260208101909152606090826001600160401b0381111561191c5761191c61315e565b60405190808252806020026020018201604052801561194f57816020015b606081526020019060019003908161193a5790505b50915060005b838110156119d1576119ac3086868481811061197357611973613302565b90506020028101906119859190613318565b856040516020016119989392919061335e565b60405160208183030381529060405261278b565b8382815181106119be576119be613302565b6020908102919091010152600101611955565b505092915050565b6040805160208101909152600081526040805160208101909152600081526000611a038686611e32565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b600080611a3783611eb6565b6002811115611a4857611a48612dfb565b141592915050565b6000610ad48383611f0f565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610ad491906130e1565b6000611a9f83611eb6565b90506001816002811115611ab557611ab5612dfb565b14611aec5760405162461bcd60e51b81526020600482015260076024820152662161637469766560c81b604482015260640161023b565b6001600160a01b038381166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e0830152600801546101008201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bef91906130f4565b608082018190526060820151600091611c079161225a565b9050600082600001516001600160a01b0316336001600160a01b03161480611c78575082516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600090815260156020908152604080832093909416825291909152205460ff165b600d54909150600160801b900463ffffffff1682111580611c9b57506040830151155b15611cd55780611cd55760405162461bcd60e51b8152602060048201526005602482015264042c2eae8d60db1b604482015260640161023b565b60808301516001600160a01b0387166000908152600f6020526040908190206004019190915583015115611db957808015611d0f57508415155b15611d2757611d22868460000151612801565b611d36565b611d3483602001516128e7565b505b60408084015184516001600160a01b03166000908152600e6020529190912060010154611d6391906130e1565b83516001600160a01b03166000908152600e602090815260408083206001019390935582860151818701518352601090915291902054611da391906130e1565b6020808501516000908152601090915260409020555b60208084015184516080808701516040808901518151928352958201959095523394810194909452606084018990528415908401526001600160a01b03808a16939116907ff6725dd105a6fc88bb79a6e4627f128577186c567a17c94818d201c2a4ce14039060a00160405180910390a4505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611e8b57506001600160a01b0382166000908152601460205260409020610ad7565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610ad7565b6001600160a01b038082166000908152600f6020526040812080549192909116611ee35750600092915050565b600381015415801590611ef857506004810154155b15611f065750600192915050565b50600292915050565b600080611f1c8484611e32565b905080600501548160020154611f3291906130e1565b949350505050565b600081831115611f4a5781610ad4565b5090919050565b8015612009576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af1158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd1919061307f565b6120095760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161023b565b505050565b60008061201b8484612975565b9050610ad4817f000000000000000000000000000000000000000000000000000000000000000061121a565b60008260000361205957506000610e78565b7f00000000000000000000000000000000000000000000000000000000000000006000831580159061209357506001600160a01b03821615155b90508080156121065750604051634c4ea0ed60e01b8152600481018790526001600160a01b03831690634c4ea0ed90602401602060405180830381865afa1580156120e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612106919061307f565b1561224e5760006121178686612975565b90508015612244576040516307470bfb60e21b8152600481018890526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631d1c2fec906024016020604051808303816000875af1158015612186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121aa91906130f4565b506121e283827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906129c7565b60405163102ae65160e31b815260048101889052602481018290526001600160a01b03841690638157328890604401600060405180830381600087803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050505b9250610e78915050565b50600095945050505050565b600081831161226a576000610ad4565b610ad482846130e1565b8015610d6457604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156116be57600080fd5b6001600160a01b03821660009081526014602052604081206002810154829190158015906122fb57508054600160401b900463ffffffff16620f424010155b156123465780546000906123219063ffffffff600160401b9091048116908790612a0216565b905061232d81866130e1565b925082826002015461233f91906130ce565b6002830155505b509392505050565b8260000361235b57505050565b801561236b576120098284612a69565b6001600160a01b03808316600090815260176020526040902054166123be81156123955781612397565b835b857f00000000000000000000000000000000000000000000000000000000000000006121d2565b50505050565b80516120098184612a69565b80516001600160a01b039081166000908152601b602090815260408083207f0000000000000000000000000000000000000000000000000000000000000000909416835292905290812060030154600160601b90046001600160401b031690036124695760405162461bcd60e51b815260206004820152600a60248201526910b83937bb34b9b4b7b760b11b604482015260640161023b565b80516001600160a01b03908116600090815260146020908152604080832082860151909416835260048401909152902060028201541580156124bb575060038201541515806124bb5750600682015415155b156125b5577f0000000000000000000000000000000000000000000000000000000000000000602084015160405163a9059cbb60e01b81526001600160a01b0391821660048201526024810187905291169063a9059cbb906044016020604051808303816000875af1158015612535573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612559919061307f565b5082602001516001600160a01b031683600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de866040516125a791815260200190565b60405180910390a350505050565b60008260020154600014806125d1575082600501548360020154145b61260757826005015483600201546125e991906130e1565b60038401546125f890876130b7565b612602919061310d565b612609565b845b905080158061261f5750670de0b6b3a764000085105b156126ae576126548460200151866121d27f000000000000000000000000000000000000000000000000000000000000000090565b83602001516001600160a01b031684600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de876040516126a191815260200190565b60405180910390a3612739565b8483600201546126be91906130ce565b600284015560038301546126d39082906130ce565b600384015581546126e59082906130ce565b82556020808501518551604080518981529384018590526001600160a01b039283169391909216917fcd0366dce5247d874ffc60a762aa7abbb82c1695bbb171609c1b8861e279eb73910160405180910390a35b5050505050565b6001600160a01b0381166000908152600e6020526040812060028101546001820154600483015492549192909161277791906130e1565b61278191906130e1565b610ad791906130e1565b6060600080846001600160a01b0316846040516127a89190613385565b600060405180830381855af49150503d80600081146127e3576040519150601f19603f3d011682016040523d82523d6000602084013e6127e8565b606091505b50915091506127f8858383612ae8565b95945050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000604051636dba849360e11b81526001600160a01b038581166004830152919091169063db750926906024016020604051808303816000875af115801561286e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289291906130f4565b9050806000036128a157505050565b60006128ad8383612b44565b905060006128bb82846130e1565b6001600160a01b038086166000908152601760205260409020549192506127399183918791161561234e565b6040516377561f0760e11b8152600481018290526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063eeac3e0e906024016020604051808303816000875af1158015612951573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906130f4565b600061298482620f4240101590565b82906129a657604051633dc311df60e01b815260040161023b91815260200190565b506129bd6129b783620f42406130e1565b84612a02565b610ad490846130e1565b80156120095760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb90604401611f8e565b6000612a1183620f4240101590565b80612a245750612a2482620f4240101590565b83839091612a4e5760405163768bf0eb60e11b81526004810192909252602482015260440161023b565b50620f42409050612a5f83856130b7565b610ad4919061310d565b6001600160a01b0382166000908152600e6020526040902054612a8d9082906130ce565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc290612adc9084815260200190565b60405180910390a25050565b606082612afd57612af882612bab565b610e78565b8151158015612b1457506001600160a01b0384163b155b15612b3d57604051639996b31560e01b81526001600160a01b038516600482015260240161023b565b5080610e78565b6001600160a01b0382166000908152601460205260408120600281015482919015801590612b8457508054640100000000900463ffffffff16620f424010155b156123465780546000906123219063ffffffff6401000000009091048116908790612a0216565b805115612bbb5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b0381168114612bd457600080fd5b60008060408385031215612bff57600080fd5b8235612c0a81612bd7565b91506020830135612c1a81612bd7565b809150509250929050565b600060208284031215612c3757600080fd5b8135610ad481612bd7565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151612cb060c084018263ffffffff169052565b5060e0830151612ccb60e08401826001600160401b03169052565b5092915050565b60008060408385031215612ce557600080fd5b8235612cf081612bd7565b946020939093013593505050565b600080600060608486031215612d1357600080fd5b8335612d1e81612bd7565b92506020840135612d2e81612bd7565b9150604084013560038110612d4257600080fd5b809150509250925092565b600080600060608486031215612d6257600080fd5b8335612d6d81612bd7565b92506020840135612d7d81612bd7565b9150604084013563ffffffff81168114612d4257600080fd5b60008060408385031215612da957600080fd5b823591506020830135612c1a81612bd7565b600080600060608486031215612dd057600080fd5b8335612ddb81612bd7565b92506020840135612deb81612bd7565b91506040840135612d4281612bd7565b634e487b7160e01b600052602160045260246000fd5b6020810160038310612e3357634e487b7160e01b600052602160045260246000fd5b91905290565b60008083601f840112612e4b57600080fd5b5081356001600160401b03811115612e6257600080fd5b602083019150836020828501011115612e7a57600080fd5b9250929050565b600080600060408486031215612e9657600080fd5b8335612ea181612bd7565b925060208401356001600160401b03811115612ebc57600080fd5b612ec886828701612e39565b9497909650939450505050565b60008060008060608587031215612eeb57600080fd5b8435612ef681612bd7565b93506020850135925060408501356001600160401b03811115612f1857600080fd5b612f2487828801612e39565b95989497509550505050565b60008060208385031215612f4357600080fd5b82356001600160401b03811115612f5957600080fd5b8301601f81018513612f6a57600080fd5b80356001600160401b03811115612f8057600080fd5b8560208260051b8401011115612f9557600080fd5b6020919091019590945092505050565b60005b83811015612fc0578181015183820152602001612fa8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561303d57603f198786030184528151805180875261301a816020890160208501612fa5565b601f01601f19169590950160209081019550938401939190910190600101612ff1565b50929695505050505050565b60006020828403121561305b57600080fd5b5035919050565b60006020828403121561307457600080fd5b8151610ad481612bd7565b60006020828403121561309157600080fd5b81518015158114610ad457600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610ad757610ad76130a1565b80820180821115610ad757610ad76130a1565b81810381811115610ad757610ad76130a1565b60006020828403121561310657600080fd5b5051919050565b60008261312a57634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561319c5761319c61315e565b604052919050565b600080604083850312156131b757600080fd5b823560ff811681146131c857600080fd5b915060208301356001600160401b038111156131e357600080fd5b8301601f810185136131f457600080fd5b80356001600160401b0381111561320d5761320d61315e565b613220601f8201601f1916602001613174565b81815286602083850101111561323557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312801561326857600080fd5b50604051602081016001600160401b038111828210171561328b5761328b61315e565b604052825161329981612bd7565b81529392505050565b600060408284031280156132b557600080fd5b50604080519081016001600160401b03811182821017156132d8576132d861315e565b60405282516132e681612bd7565b815260208301516132f681612bd7565b60208201529392505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261332f57600080fd5b8301803591506001600160401b0382111561334957600080fd5b602001915036819003821315612e7a57600080fd5b82848237600083820160008152835161337b818360208801612fa5565b0195945050505050565b60008251613397818460208701612fa5565b919091019291505056fea264697066735822122038ad83d20c219353421029f1ad8c4f7667d5f0e86af1579c64603bb56827d86064736f6c634300081b0033", + "linkReferences": { + "contracts/staking/libraries/ExponentialRebates.sol": { + "ExponentialRebates": [ + { + "length": 20, + "start": 5879 + } + ] + } + }, + "deployedLinkReferences": { + "contracts/staking/libraries/ExponentialRebates.sol": { + "ExponentialRebates": [ + { + "length": 20, + "start": 4455 + } + ] + } + } +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow.json new file mode 100644 index 000000000..4f10cc208 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow.json @@ -0,0 +1,769 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "PaymentsEscrow", + "sourceName": "contracts/payments/PaymentsEscrow.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "revokeCollectorThawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawEscrowThawingPeriod", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balanceBefore", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "balanceAfter", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInconsistentCollection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minAllowance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minBalance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientBalance", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowNotThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "currentTimestamp", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "PaymentsEscrowStillThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "thawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxThawingPeriod", + "type": "uint256" + } + ], + "name": "PaymentsEscrowThawingPeriodTooLong", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "AuthorizedCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "CancelThaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "CancelThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "EscrowCollected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "RevokeCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "Thaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "ThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Withdraw", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "REVOKE_COLLECTOR_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "WITHDRAW_ESCROW_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + } + ], + "name": "approveCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "authorizedCollectors", + "outputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "cancelThawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "deposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "depositTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "escrowAccounts", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "getBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + } + ], + "name": "revokeCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "thawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b506040516120c73803806120c78339810160408190526100309161046b565b826001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b2906103a1565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e5906103a1565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e906103a1565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b6020820152610158906103a1565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b6020820152610190906103a1565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb906103a1565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b6020820152610209906103a1565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b6020820152610245906103a1565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a906103a1565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450816276a7008082111561035c57604051635c0f65a160e01b815260048101929092526024820152604401610071565b508190506276a7008082111561038e57604051635c0f65a160e01b815260048101929092526024820152604401610071565b50506101c0919091526101e05250610510565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103dc91815260200190565b602060405180830381865afa1580156103f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041d91906104a0565b9050826001600160a01b0382166104485760405163218f5add60e11b815260040161007191906104c2565b5092915050565b80516001600160a01b038116811461046657600080fd5b919050565b60008060006060848603121561048057600080fd5b6104898461044f565b602085015160409095015190969495509392505050565b6000602082840312156104b257600080fd5b6104bb8261044f565b9392505050565b602081526000825180602084015260005b818110156104f057602081860181015160408684010152016104d3565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051611ad26105f5600039600081816101e00152610abb015260008181610193015261039d01526000505060005050600050506000505060005050600081816102fa0152818161041601528181610589015281816106380152818161076e0152818161094901528181610b2d01528181610d71015261131b01526000505060008181610fa6015261104e015260005050600081816108da01528181610eea01528181610f77015281816110c401526114130152611ad26000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json new file mode 100644 index 000000000..4f10cc208 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/PaymentsEscrow#PaymentsEscrow_Instance.json @@ -0,0 +1,769 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "PaymentsEscrow", + "sourceName": "contracts/payments/PaymentsEscrow.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "controller", + "type": "address" + }, + { + "internalType": "uint256", + "name": "revokeCollectorThawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "withdrawEscrowThawingPeriod", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "FailedInnerCall", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balanceBefore", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "balanceAfter", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInconsistentCollection", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minAllowance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientAllowance", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "minBalance", + "type": "uint256" + } + ], + "name": "PaymentsEscrowInsufficientBalance", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowInvalidZeroTokens", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowIsPaused", + "type": "error" + }, + { + "inputs": [], + "name": "PaymentsEscrowNotThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "currentTimestamp", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "PaymentsEscrowStillThawing", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "thawingPeriod", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "maxThawingPeriod", + "type": "uint256" + } + ], + "name": "PaymentsEscrowThawingPeriodTooLong", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "AuthorizedCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "CancelThaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "CancelThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Deposit", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "EscrowCollected", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "RevokeCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "name": "Thaw", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "ThawCollector", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "Withdraw", + "type": "event" + }, + { + "inputs": [], + "name": "MAX_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "REVOKE_COLLECTOR_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "WITHDRAW_ESCROW_THAWING_PERIOD", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + }, + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + } + ], + "name": "approveCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "authorizedCollectors", + "outputs": [ + { + "internalType": "uint256", + "name": "allowance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "cancelThawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "collect", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "deposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "depositTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "escrowAccounts", + "outputs": [ + { + "internalType": "uint256", + "name": "balance", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensThawing", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "thawEndTimestamp", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "getBalance", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes[]", + "name": "data", + "type": "bytes[]" + } + ], + "name": "multicall", + "outputs": [ + { + "internalType": "bytes[]", + "name": "results", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector_", + "type": "address" + } + ], + "name": "revokeCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "name": "thaw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "collector", + "type": "address" + } + ], + "name": "thawCollector", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "withdraw", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x61020060405234801561001157600080fd5b506040516120c73803806120c78339810160408190526100309161046b565b826001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b2906103a1565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e5906103a1565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e906103a1565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b6020820152610158906103a1565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b6020820152610190906103a1565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb906103a1565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b6020820152610209906103a1565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b6020820152610245906103a1565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a906103a1565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450816276a7008082111561035c57604051635c0f65a160e01b815260048101929092526024820152604401610071565b508190506276a7008082111561038e57604051635c0f65a160e01b815260048101929092526024820152604401610071565b50506101c0919091526101e05250610510565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103dc91815260200190565b602060405180830381865afa1580156103f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041d91906104a0565b9050826001600160a01b0382166104485760405163218f5add60e11b815260040161007191906104c2565b5092915050565b80516001600160a01b038116811461046657600080fd5b919050565b60008060006060848603121561048057600080fd5b6104898461044f565b602085015160409095015190969495509392505050565b6000602082840312156104b257600080fd5b6104bb8261044f565b9392505050565b602081526000825180602084015260005b818110156104f057602081860181015160408684010152016104d3565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051611ad26105f5600039600081816101e00152610abb015260008181610193015261039d01526000505060005050600050506000505060005050600081816102fa0152818161041601528181610589015281816106380152818161076e0152818161094901528181610b2d01528181610d71015261131b01526000505060008181610fa6015261104e015260005050600081816108da01528181610eea01528181610f77015281816110c401526114130152611ad26000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#GraphProxy.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#GraphProxy.json new file mode 100644 index 000000000..2cfb21e41 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#GraphProxy.json @@ -0,0 +1,177 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "GraphProxy", + "sourceName": "contracts/upgrades/GraphProxy.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "_impl", + "type": "address" + }, + { + "internalType": "address", + "name": "_admin", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldAdmin", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newAdmin", + "type": "address" + } + ], + "name": "AdminUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newImplementation", + "type": "address" + } + ], + "name": "ImplementationUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldPendingImplementation", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newPendingImplementation", + "type": "address" + } + ], + "name": "PendingImplementationUpdated", + "type": "event" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [], + "name": "acceptUpgrade", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "acceptUpgradeAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "pendingImplementation", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newAdmin", + "type": "address" + } + ], + "name": "setAdmin", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_newImplementation", + "type": "address" + } + ], + "name": "upgradeTo", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c", + "deployedBytecode": "0x6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager.json new file mode 100644 index 000000000..87ac4c282 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager.json @@ -0,0 +1,635 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "RewardsManager", + "sourceName": "contracts/rewards/RewardsManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "RewardsAssigned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "RewardsDenied", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "sinceBlock", + "type": "uint256" + } + ], + "name": "RewardsDenylistUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldSubgraphService", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [], + "name": "accRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "accRewardsPerSignalLastBlockUpdated", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "name": "calcRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "denylist", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsForSubgraph", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsPerAllocatedToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNewRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "getRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isDenied", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "issuancePerBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumSubgraphSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphAllocationUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphSignalUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "_deny", + "type": "bool" + } + ], + "name": "setDenied", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32[]", + "name": "_subgraphDeploymentID", + "type": "bytes32[]" + }, + { + "internalType": "bool[]", + "name": "_deny", + "type": "bool[]" + } + ], + "name": "setDeniedMany", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_issuancePerBlock", + "type": "uint256" + } + ], + "name": "setIssuancePerBlock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumSubgraphSignal", + "type": "uint256" + } + ], + "name": "setMinimumSubgraphSignal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphAvailabilityOracle", + "type": "address" + } + ], + "name": "setSubgraphAvailabilityOracle", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphAvailabilityOracle", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "contract IRewardsIssuer", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "subgraphs", + "outputs": [ + { + "internalType": "uint256", + "name": "accRewardsForSubgraph", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsForSubgraphSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerSignalSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "takeRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "updateAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051611eb861017360003980610fe1525080610fb8525080610f8f528061194f525080610f6652806116d2525080610f3d525080610f14525080610eeb52806115165250611eb86000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager_Instance.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager_Instance.json new file mode 100644 index 000000000..87ac4c282 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/RewardsManager#RewardsManager_Instance.json @@ -0,0 +1,635 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "RewardsManager", + "sourceName": "contracts/rewards/RewardsManager.sol", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "nameHash", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "contractAddress", + "type": "address" + } + ], + "name": "ContractSynced", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "string", + "name": "param", + "type": "string" + } + ], + "name": "ParameterUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "RewardsAssigned", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "indexer", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "allocationID", + "type": "address" + } + ], + "name": "RewardsDenied", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "subgraphDeploymentID", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "sinceBlock", + "type": "uint256" + } + ], + "name": "RewardsDenylistUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "name": "SetController", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "oldSubgraphService", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newSubgraphService", + "type": "address" + } + ], + "name": "SubgraphServiceSet", + "type": "event" + }, + { + "inputs": [], + "name": "accRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "accRewardsPerSignalLastBlockUpdated", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + } + ], + "name": "acceptProxy", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "contract IGraphProxy", + "name": "_proxy", + "type": "address" + }, + { + "internalType": "bytes", + "name": "_data", + "type": "bytes" + } + ], + "name": "acceptProxyAndCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "name": "calcRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "controller", + "outputs": [ + { + "internalType": "contract IController", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "denylist", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsForSubgraph", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "getAccRewardsPerAllocatedToken", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getNewRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "getRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "isDenied", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "issuancePerBlock", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "minimumSubgraphSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphAllocationUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + } + ], + "name": "onSubgraphSignalUpdate", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_controller", + "type": "address" + } + ], + "name": "setController", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "_subgraphDeploymentID", + "type": "bytes32" + }, + { + "internalType": "bool", + "name": "_deny", + "type": "bool" + } + ], + "name": "setDenied", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32[]", + "name": "_subgraphDeploymentID", + "type": "bytes32[]" + }, + { + "internalType": "bool[]", + "name": "_deny", + "type": "bool[]" + } + ], + "name": "setDeniedMany", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_issuancePerBlock", + "type": "uint256" + } + ], + "name": "setIssuancePerBlock", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_minimumSubgraphSignal", + "type": "uint256" + } + ], + "name": "setMinimumSubgraphSignal", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphAvailabilityOracle", + "type": "address" + } + ], + "name": "setSubgraphAvailabilityOracle", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_subgraphService", + "type": "address" + } + ], + "name": "setSubgraphService", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphAvailabilityOracle", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "subgraphService", + "outputs": [ + { + "internalType": "contract IRewardsIssuer", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "subgraphs", + "outputs": [ + { + "internalType": "uint256", + "name": "accRewardsForSubgraph", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsForSubgraphSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerSignalSnapshot", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "accRewardsPerAllocatedToken", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "syncAllContracts", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_allocationID", + "type": "address" + } + ], + "name": "takeRewards", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "updateAccRewardsPerSignal", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051611eb861017360003980610fe1525080610fb8525080610f8f528061194f525080610f6652806116d2525080610f3d525080610f14525080610eeb52806115165250611eb86000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/artifacts/TAPCollector#TAPCollector.json b/packages/horizon/ignition/deployments/chain-421614/artifacts/TAPCollector#TAPCollector.json new file mode 100644 index 000000000..94f0189f7 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/artifacts/TAPCollector#TAPCollector.json @@ -0,0 +1,450 @@ +{ + "_format": "hh-sol-artifact-1", + "contractName": "TAPCollector", + "sourceName": "contracts/payments/collectors/TAPCollector.sol", + "abi": [ + { + "inputs": [ + { + "internalType": "string", + "name": "eip712Name", + "type": "string" + }, + { + "internalType": "string", + "name": "eip712Version", + "type": "string" + }, + { + "internalType": "address", + "name": "controller", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ECDSAInvalidSignature", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + } + ], + "name": "ECDSAInvalidSignatureLength", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "ECDSAInvalidSignatureS", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "contractName", + "type": "bytes" + } + ], + "name": "GraphDirectoryInvalidZeroAddress", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidShortString", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "a", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "b", + "type": "uint256" + } + ], + "name": "PPMMathInvalidMulPPM", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "string", + "name": "str", + "type": "string" + } + ], + "name": "StringTooLong", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "caller", + "type": "address" + }, + { + "internalType": "address", + "name": "dataService", + "type": "address" + } + ], + "name": "TAPCollectorCallerNotDataService", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "tokensCollected", + "type": "uint256" + } + ], + "name": "TAPCollectorInconsistentRAVTokens", + "type": "error" + }, + { + "anonymous": false, + "inputs": [], + "name": "EIP712DomainChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "graphToken", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphStaking", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphPayments", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEscrow", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "graphController", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphEpochManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphRewardsManager", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphTokenGateway", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphProxyAdmin", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "graphCuration", + "type": "address" + } + ], + "name": "GraphDirectoryInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "indexed": true, + "internalType": "address", + "name": "payer", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensReceiver", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "tokensDataService", + "type": "uint256" + } + ], + "name": "PaymentCollected", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "enum IGraphPayments.PaymentTypes", + "name": "paymentType", + "type": "uint8" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "collect", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "eip712Domain", + "outputs": [ + { + "internalType": "bytes1", + "name": "fields", + "type": "bytes1" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "version", + "type": "string" + }, + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "verifyingContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "salt", + "type": "bytes32" + }, + { + "internalType": "uint256[]", + "name": "extensions", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint64", + "name": "timestampNs", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "valueAggregate", + "type": "uint128" + }, + { + "internalType": "bytes", + "name": "metadata", + "type": "bytes" + } + ], + "internalType": "struct ITAPCollector.ReceiptAggregateVoucher", + "name": "rav", + "type": "tuple" + } + ], + "name": "encodeRAV", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "components": [ + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "address", + "name": "serviceProvider", + "type": "address" + }, + { + "internalType": "uint64", + "name": "timestampNs", + "type": "uint64" + }, + { + "internalType": "uint128", + "name": "valueAggregate", + "type": "uint128" + }, + { + "internalType": "bytes", + "name": "metadata", + "type": "bytes" + } + ], + "internalType": "struct ITAPCollector.ReceiptAggregateVoucher", + "name": "rav", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "internalType": "struct ITAPCollector.SignedRAV", + "name": "signedRAV", + "type": "tuple" + } + ], + "name": "recoverRAVSigner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "dataService", + "type": "address" + }, + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "address", + "name": "payer", + "type": "address" + } + ], + "name": "tokensCollected", + "outputs": [ + { + "internalType": "uint256", + "name": "tokens", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x6102a060405234801561001157600080fd5b506040516119ae3803806119ae833981016040819052610030916105d9565b80838361003e8260006103db565b6101205261004d8160016103db565b61014052815160208084019190912060e052815190820120610100524660a0526100da60e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526001600160a01b03811661012c5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101e05260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526101649061040e565b6001600160a01b0316610160526040805180820190915260078152665374616b696e6760c81b60208201526101989061040e565b6001600160a01b03166101805260408051808201909152600d81526c47726170685061796d656e747360981b60208201526101d29061040e565b6001600160a01b03166101a05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261020d9061040e565b6001600160a01b03166101c05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b60208201526102469061040e565b6001600160a01b03166102005260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526102819061040e565b6001600160a01b0316610220526040805180820190915260118152704772617068546f6b656e4761746577617960781b60208201526102bf9061040e565b6001600160a01b03166102405260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b60208201526102fb9061040e565b6001600160a01b03166102605260408051808201909152600881526721bab930ba34b7b760c11b60208201526103309061040e565b6001600160a01b039081166102808190526101e05161018051610160516101a0516101c0516102005161022051610240516102605160408051968c168752948b166020870152928a1685850152908916606085015288166080840152871660a083015260c0820195909552935192851694918216939116917fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a439181900360e00190a45050505061081e565b60006020835110156103f7576103f0836104bc565b9050610408565b8161040284826106db565b5060ff90505b92915050565b6000806101e0516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161044991815260200190565b602060405180830381865afa158015610466573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048a9190610799565b9050826001600160a01b0382166104b55760405163218f5add60e11b815260040161012391906107e7565b5092915050565b600080829050601f815111156104e7578260405163305a27a960e01b815260040161012391906107e7565b80516104f2826107fa565b179392505050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561052b578181015183820152602001610513565b50506000910152565b600082601f83011261054557600080fd5b81516001600160401b0381111561055e5761055e6104fa565b604051601f8201601f19908116603f011681016001600160401b038111828210171561058c5761058c6104fa565b6040528181528382016020018510156105a457600080fd5b6105b5826020830160208701610510565b949350505050565b80516001600160a01b03811681146105d457600080fd5b919050565b6000806000606084860312156105ee57600080fd5b83516001600160401b0381111561060457600080fd5b61061086828701610534565b602086015190945090506001600160401b0381111561062e57600080fd5b61063a86828701610534565b925050610649604085016105bd565b90509250925092565b600181811c9082168061066657607f821691505b60208210810361068657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156106d657806000526020600020601f840160051c810160208510156106b35750805b601f840160051c820191505b818110156106d357600081556001016106bf565b50505b505050565b81516001600160401b038111156106f4576106f46104fa565b610708816107028454610652565b8461068c565b6020601f82116001811461073c57600083156107245750848201515b600019600385901b1c1916600184901b1784556106d3565b600084815260208120601f198516915b8281101561076c578785015182556020948501946001909201910161074c565b508482101561078a5786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b6000602082840312156107ab57600080fd5b6107b4826105bd565b9392505050565b600081518084526107d3816020860160208601610510565b601f01601f19169290920160200192915050565b6020815260006107b460208301846107bb565b805160208083015191908110156106865760001960209190910360031b1b16919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516110e36108cb600039600050506000505060005050600050506000505060005050600061024f0152600050506000505060005050600061049201526000610460015260006108940152600061086c015260006107c7015260006107f10152600061081b01526110e36000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80631ef518f21461005c5780637f07d2831461008c57806384b0196e146100ad5780638821603c146100c8578063cfdb35bd146100db575b600080fd5b61006f61006a3660046109dc565b61010c565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a366004610b23565b610125565b604051908152602001610083565b6100b5610372565b6040516100839796959493929190610bc6565b61009f6100d6366004610c5e565b6103b8565b61009f6100e9366004610cb0565b600260209081526000938452604080852082529284528284209052825290205481565b600061011f61011a83610db8565b6103cb565b92915050565b60008060008380602001905181019061013e9190610e75565b815151919350915033906001600160a01b0381168214610189576040516347666ba360e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50508151516000610199846103cb565b84516020808201516060909201516001600160a01b038087166000908152600284526040808220838716835285528082209287168252919093529091205492935090916001600160801b03909116908181808211610213576040516308e467d960e31b815260048101929092526024820152604401610180565b50600090506102228284610fb1565b9050600061023082896103f2565b905081156102f3576040516343edff4160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906387dbfe829061028e908f908a908a9088908e908990600401610fda565b600060405180830381600087803b1580156102a857600080fd5b505af11580156102bc573d6000803e3d6000fd5b5050506001600160a01b0380891660009081526002602090815260408083208a851684528252808320938b16835292905220859055505b866001600160a01b0316866001600160a01b03168d600281111561031957610319610fc4565b604080516001600160a01b038a168152602081018790529081018590527ffadd34108e3c00b000a046b272ee080bb1755b91078c0ef5200c0b7da6132bd19060600160405180910390a4509a9950505050505050505050565b600060608060008060006060610386610459565b61038e61048b565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061011f6103c68361102e565b6104b8565b6000806103db83600001516104b8565b90506103eb81846020015161056f565b9392505050565b600061040183620f4240101590565b80610414575061041482620f4240101590565b8383909161043e5760405163768bf0eb60e11b815260048101929092526024820152604401610180565b50620f4240905061044f838561103a565b6103eb9190611051565b60606104867f00000000000000000000000000000000000000000000000000000000000000006000610599565b905090565b60606104867f00000000000000000000000000000000000000000000000000000000000000006001610599565b600061011f7fe502a96d6aaed328ceacc76a5f627b9823162f5a205dab5a702b40073a6778428360000151846020015185604001518660600151876080015180519060200120604051602001610554969594939291909586526001600160a01b0394851660208701529290931660408501526001600160401b031660608401526001600160801b0391909116608083015260a082015260c00190565b60405160208183030381529060405280519060200120610644565b60008060008061057f8686610671565b92509250925061058f82826106be565b5090949350505050565b606060ff83146105b3576105ac8361077b565b905061011f565b8180546105bf90611073565b80601f01602080910402602001604051908101604052809291908181526020018280546105eb90611073565b80156106385780601f1061060d57610100808354040283529160200191610638565b820191906000526020600020905b81548152906001019060200180831161061b57829003601f168201915b5050505050905061011f565b600061011f6106516107ba565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600083516041036106ab5760208401516040850151606086015160001a61069d888285856108e5565b9550955095505050506106b7565b50508151600091506002905b9250925092565b60008260038111156106d2576106d2610fc4565b036106db575050565b60018260038111156106ef576106ef610fc4565b0361070d5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561072157610721610fc4565b036107425760405163fce698f760e01b815260048101829052602401610180565b600382600381111561075657610756610fc4565b03610777576040516335e2f38360e21b815260048101829052602401610180565b5050565b60606000610788836109b4565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561081357507f000000000000000000000000000000000000000000000000000000000000000046145b1561083d57507f000000000000000000000000000000000000000000000000000000000000000090565b610486604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561092057506000915060039050826109aa565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610974573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109a0575060009250600191508290506109aa565b9250600091508190505b9450945094915050565b600060ff8216601f81111561011f57604051632cd44ac360e21b815260040160405180910390fd5b6000602082840312156109ee57600080fd5b81356001600160401b03811115610a0457600080fd5b8201604081850312156103eb57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715610a4e57610a4e610a16565b60405290565b604080519081016001600160401b0381118282101715610a4e57610a4e610a16565b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a16565b604052919050565b60006001600160401b03821115610abf57610abf610a16565b50601f01601f191660200190565b600082601f830112610ade57600080fd5b8135610af1610aec82610aa6565b610a76565b818152846020838601011115610b0657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215610b3657600080fd5b823560038110610b4557600080fd5b915060208301356001600160401b03811115610b6057600080fd5b610b6c85828601610acd565b9150509250929050565b60005b83811015610b91578181015183820152602001610b79565b50506000910152565b60008151808452610bb2816020860160208601610b76565b601f01601f19169290920160200192915050565b60ff60f81b8816815260e060208201526000610be560e0830189610b9a565b8281036040840152610bf78189610b9a565b606084018890526001600160a01b038716608085015260a0840186905283810360c08501528451808252602080870193509091019060005b81811015610c4d578351835260209384019390920191600101610c2f565b50909b9a5050505050505050505050565b600060208284031215610c7057600080fd5b81356001600160401b03811115610c8657600080fd5b820160a081850312156103eb57600080fd5b6001600160a01b0381168114610cad57600080fd5b50565b600080600060608486031215610cc557600080fd5b8335610cd081610c98565b92506020840135610ce081610c98565b91506040840135610cf081610c98565b809150509250925092565b6001600160401b0381168114610cad57600080fd5b6001600160801b0381168114610cad57600080fd5b600060a08284031215610d3757600080fd5b610d3f610a2c565b90508135610d4c81610c98565b81526020820135610d5c81610c98565b60208201526040820135610d6f81610cfb565b60408201526060820135610d8281610d10565b606082015260808201356001600160401b03811115610da057600080fd5b610dac84828501610acd565b60808301525092915050565b600060408236031215610dca57600080fd5b610dd2610a54565b82356001600160401b03811115610de857600080fd5b610df436828601610d25565b82525060208301356001600160401b03811115610e1057600080fd5b610e1c36828601610acd565b60208301525092915050565b600082601f830112610e3957600080fd5b8151610e47610aec82610aa6565b818152846020838601011115610e5c57600080fd5b610e6d826020830160208701610b76565b949350505050565b60008060408385031215610e8857600080fd5b82516001600160401b03811115610e9e57600080fd5b830160408186031215610eb057600080fd5b610eb8610a54565b81516001600160401b03811115610ece57600080fd5b820160a08188031215610ee057600080fd5b610ee8610a2c565b8151610ef381610c98565b81526020820151610f0381610c98565b60208201526040820151610f1681610cfb565b60408201526060820151610f2981610d10565b606082015260808201516001600160401b03811115610f4757600080fd5b610f5389828501610e28565b60808301525082525060208201516001600160401b03811115610f7557600080fd5b610f8187828501610e28565b602083810191909152959095015190969095509350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011f5761011f610f9b565b634e487b7160e01b600052602160045260246000fd5b60c0810160038810610ffc57634e487b7160e01b600052602160045260246000fd5b9681526001600160a01b03958616602082015293851660408501526060840192909252909216608082015260a0015290565b600061011f3683610d25565b808202811582820484141761011f5761011f610f9b565b60008261106e57634e487b7160e01b600052601260045260246000fd5b500490565b600181811c9082168061108757607f821691505b6020821081036110a757634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212204ea11b7f590e7303a0b1850b4cd59148c357bb48498bdb2606c6e97c057012e264736f6c634300081b0033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c80631ef518f21461005c5780637f07d2831461008c57806384b0196e146100ad5780638821603c146100c8578063cfdb35bd146100db575b600080fd5b61006f61006a3660046109dc565b61010c565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a366004610b23565b610125565b604051908152602001610083565b6100b5610372565b6040516100839796959493929190610bc6565b61009f6100d6366004610c5e565b6103b8565b61009f6100e9366004610cb0565b600260209081526000938452604080852082529284528284209052825290205481565b600061011f61011a83610db8565b6103cb565b92915050565b60008060008380602001905181019061013e9190610e75565b815151919350915033906001600160a01b0381168214610189576040516347666ba360e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50508151516000610199846103cb565b84516020808201516060909201516001600160a01b038087166000908152600284526040808220838716835285528082209287168252919093529091205492935090916001600160801b03909116908181808211610213576040516308e467d960e31b815260048101929092526024820152604401610180565b50600090506102228284610fb1565b9050600061023082896103f2565b905081156102f3576040516343edff4160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906387dbfe829061028e908f908a908a9088908e908990600401610fda565b600060405180830381600087803b1580156102a857600080fd5b505af11580156102bc573d6000803e3d6000fd5b5050506001600160a01b0380891660009081526002602090815260408083208a851684528252808320938b16835292905220859055505b866001600160a01b0316866001600160a01b03168d600281111561031957610319610fc4565b604080516001600160a01b038a168152602081018790529081018590527ffadd34108e3c00b000a046b272ee080bb1755b91078c0ef5200c0b7da6132bd19060600160405180910390a4509a9950505050505050505050565b600060608060008060006060610386610459565b61038e61048b565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061011f6103c68361102e565b6104b8565b6000806103db83600001516104b8565b90506103eb81846020015161056f565b9392505050565b600061040183620f4240101590565b80610414575061041482620f4240101590565b8383909161043e5760405163768bf0eb60e11b815260048101929092526024820152604401610180565b50620f4240905061044f838561103a565b6103eb9190611051565b60606104867f00000000000000000000000000000000000000000000000000000000000000006000610599565b905090565b60606104867f00000000000000000000000000000000000000000000000000000000000000006001610599565b600061011f7fe502a96d6aaed328ceacc76a5f627b9823162f5a205dab5a702b40073a6778428360000151846020015185604001518660600151876080015180519060200120604051602001610554969594939291909586526001600160a01b0394851660208701529290931660408501526001600160401b031660608401526001600160801b0391909116608083015260a082015260c00190565b60405160208183030381529060405280519060200120610644565b60008060008061057f8686610671565b92509250925061058f82826106be565b5090949350505050565b606060ff83146105b3576105ac8361077b565b905061011f565b8180546105bf90611073565b80601f01602080910402602001604051908101604052809291908181526020018280546105eb90611073565b80156106385780601f1061060d57610100808354040283529160200191610638565b820191906000526020600020905b81548152906001019060200180831161061b57829003601f168201915b5050505050905061011f565b600061011f6106516107ba565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600083516041036106ab5760208401516040850151606086015160001a61069d888285856108e5565b9550955095505050506106b7565b50508151600091506002905b9250925092565b60008260038111156106d2576106d2610fc4565b036106db575050565b60018260038111156106ef576106ef610fc4565b0361070d5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561072157610721610fc4565b036107425760405163fce698f760e01b815260048101829052602401610180565b600382600381111561075657610756610fc4565b03610777576040516335e2f38360e21b815260048101829052602401610180565b5050565b60606000610788836109b4565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561081357507f000000000000000000000000000000000000000000000000000000000000000046145b1561083d57507f000000000000000000000000000000000000000000000000000000000000000090565b610486604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561092057506000915060039050826109aa565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610974573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109a0575060009250600191508290506109aa565b9250600091508190505b9450945094915050565b600060ff8216601f81111561011f57604051632cd44ac360e21b815260040160405180910390fd5b6000602082840312156109ee57600080fd5b81356001600160401b03811115610a0457600080fd5b8201604081850312156103eb57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715610a4e57610a4e610a16565b60405290565b604080519081016001600160401b0381118282101715610a4e57610a4e610a16565b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a16565b604052919050565b60006001600160401b03821115610abf57610abf610a16565b50601f01601f191660200190565b600082601f830112610ade57600080fd5b8135610af1610aec82610aa6565b610a76565b818152846020838601011115610b0657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215610b3657600080fd5b823560038110610b4557600080fd5b915060208301356001600160401b03811115610b6057600080fd5b610b6c85828601610acd565b9150509250929050565b60005b83811015610b91578181015183820152602001610b79565b50506000910152565b60008151808452610bb2816020860160208601610b76565b601f01601f19169290920160200192915050565b60ff60f81b8816815260e060208201526000610be560e0830189610b9a565b8281036040840152610bf78189610b9a565b606084018890526001600160a01b038716608085015260a0840186905283810360c08501528451808252602080870193509091019060005b81811015610c4d578351835260209384019390920191600101610c2f565b50909b9a5050505050505050505050565b600060208284031215610c7057600080fd5b81356001600160401b03811115610c8657600080fd5b820160a081850312156103eb57600080fd5b6001600160a01b0381168114610cad57600080fd5b50565b600080600060608486031215610cc557600080fd5b8335610cd081610c98565b92506020840135610ce081610c98565b91506040840135610cf081610c98565b809150509250925092565b6001600160401b0381168114610cad57600080fd5b6001600160801b0381168114610cad57600080fd5b600060a08284031215610d3757600080fd5b610d3f610a2c565b90508135610d4c81610c98565b81526020820135610d5c81610c98565b60208201526040820135610d6f81610cfb565b60408201526060820135610d8281610d10565b606082015260808201356001600160401b03811115610da057600080fd5b610dac84828501610acd565b60808301525092915050565b600060408236031215610dca57600080fd5b610dd2610a54565b82356001600160401b03811115610de857600080fd5b610df436828601610d25565b82525060208301356001600160401b03811115610e1057600080fd5b610e1c36828601610acd565b60208301525092915050565b600082601f830112610e3957600080fd5b8151610e47610aec82610aa6565b818152846020838601011115610e5c57600080fd5b610e6d826020830160208701610b76565b949350505050565b60008060408385031215610e8857600080fd5b82516001600160401b03811115610e9e57600080fd5b830160408186031215610eb057600080fd5b610eb8610a54565b81516001600160401b03811115610ece57600080fd5b820160a08188031215610ee057600080fd5b610ee8610a2c565b8151610ef381610c98565b81526020820151610f0381610c98565b60208201526040820151610f1681610cfb565b60408201526060820151610f2981610d10565b606082015260808201516001600160401b03811115610f4757600080fd5b610f5389828501610e28565b60808301525082525060208201516001600160401b03811115610f7557600080fd5b610f8187828501610e28565b602083810191909152959095015190969095509350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011f5761011f610f9b565b634e487b7160e01b600052602160045260246000fd5b60c0810160038810610ffc57634e487b7160e01b600052602160045260246000fd5b9681526001600160a01b03958616602082015293851660408501526060840192909252909216608082015260a0015290565b600061011f3683610d25565b808202811582820484141761011f5761011f610f9b565b60008261106e57634e487b7160e01b600052601260045260246000fd5b500490565b600181811c9082168061108757607f821691505b6020821081036110a757634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212204ea11b7f590e7303a0b1850b4cd59148c357bb48498bdb2606c6e97c057012e264736f6c634300081b0033", + "linkReferences": {}, + "deployedLinkReferences": {} +} \ No newline at end of file diff --git a/packages/horizon/ignition/deployments/chain-421614/deployed_addresses.json b/packages/horizon/ignition/deployments/chain-421614/deployed_addresses.json new file mode 100644 index 000000000..28984fbe8 --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/deployed_addresses.json @@ -0,0 +1,41 @@ +{ + "BridgeEscrow#BridgeEscrow": "0xbC846a82491A4b6Ee5fd841c60923019d99F6D0c", + "Curation#Curation": "0x73A09b3A9C5531da3374A12a1282e40C3e2B7FA0", + "Curation#GraphCurationToken": "0xF1c0D12b4b4f6f0d66CE0A18A16876c9ca6D2E92", + "EpochManager#EpochManager": "0x039B22cEd4cDbF6Cd153F38ba7ae2731471e0542", + "GraphProxyAdmin#GraphProxyAdmin": "0x0eb1325d7F1a188D5914fddb8566aE513A28D0da", + "GraphToken#GraphToken": "0x21Ee267Efe20A7E846964D3f9E28F7e81d72547e", + "HorizonProxies#OZProxyDummy_GraphPayments": "0x60eE16fc2C4729343C7B3Ab9B322b2C6CcfbC681", + "HorizonStakingExtension#ExponentialRebates": "0x5Ab8e4eDb2d068C9c1ab9c96bfb3abCAb96e1534", + "RewardsManager#RewardsManager": "0xE7ed8F3e83a10a74CBfaDdC7596CBb79c4eccA17", + "Controller#Controller": "0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa", + "GraphTokenGateway#GraphTokenGateway": "0x2f3f6fbAD807800da2d1ABC9c949c45Bc1C81541", + "HorizonProxies#OZProxyDummy_PaymentsEscrow": "0xF39FD65373870fcb5868F7458d8d84485E5Bf890", + "HorizonProxies#TransparentUpgradeableProxy_GraphPayments": "0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f", + "HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow": "0x5904ab9c7806FCC7634F1DcDBec544eEa7490634", + "BridgeEscrow#GraphProxy": "0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79", + "Curation#GraphProxy": "0x4594A5915B3AAa78CdF6273a76678855Ca675860", + "GraphTokenGateway#GraphProxy": "0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D", + "RewardsManager#GraphProxy": "0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75", + "EpochManager#GraphProxy": "0x7975475801BEf845f10Ce7784DC69aB1e0344f11", + "GraphToken#GraphProxy": "0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702", + "BridgeEscrow#BridgeEscrow_Instance": "0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79", + "Curation#Curation_Instance": "0x4594A5915B3AAa78CdF6273a76678855Ca675860", + "EpochManager#EpochManager_Instance": "0x7975475801BEf845f10Ce7784DC69aB1e0344f11", + "GraphToken#GraphToken_Instance": "0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702", + "GraphTokenGateway#GraphTokenGateway_Instance": "0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D", + "HorizonProxies#ProxyAdmin_GraphPayments": "0xbb29b876AA2faCEb3af83d768CB03dd3BFF03f5e", + "HorizonProxies#ProxyAdmin_PaymentsEscrow": "0x6D892d831196E1Ad3779B97320b7091dE7d45053", + "RewardsManager#RewardsManager_Instance": "0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75", + "GraphHorizon_Periphery#Dummy": "0x3141000ae37361a525863D5cc4886799ed3FAFca", + "HorizonProxies#GraphProxy_HorizonStaking": "0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf", + "HorizonProxies#RegisteredDummy": "0xbDc6798b71a3B57fc79eF346d065de7477D3c366", + "GraphPayments#GraphPayments": "0xf5B3661BbB8CD48571C7f41ba2D896a3589C9753", + "GraphPayments#GraphPayments_Instance": "0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f", + "HorizonStakingExtension#HorizonStakingExtension": "0xf203161Ba7e25263deB79a4478BE18644C2c5446", + "PaymentsEscrow#PaymentsEscrow": "0x09B985a2042848A08bA59060EaF0f07c6F5D4d54", + "PaymentsEscrow#PaymentsEscrow_Instance": "0x5904ab9c7806FCC7634F1DcDBec544eEa7490634", + "TAPCollector#TAPCollector": "0xacC71844EF6beEF70106ABe6E51013189A1f3738", + "HorizonStaking#HorizonStaking": "0xFf2Ee30de92F276018642A59Fb7Be95b3F9088Af", + "HorizonStaking#HorizonStaking_Instance": "0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf" +} diff --git a/packages/horizon/ignition/deployments/chain-421614/journal.jsonl b/packages/horizon/ignition/deployments/chain-421614/journal.jsonl new file mode 100644 index 000000000..4a141ae3a --- /dev/null +++ b/packages/horizon/ignition/deployments/chain-421614/journal.jsonl @@ -0,0 +1,328 @@ + +{"chainId":421614,"type":"DEPLOYMENT_INITIALIZE"} +{"artifactId":"BridgeEscrow#BridgeEscrow","constructorArgs":[],"contractName":"BridgeEscrow","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"BridgeEscrow#BridgeEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"BridgeEscrow#BridgeEscrow","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051610c376101696000398061071f5250806106f65250806106cd528061089e5250806106a452508061067b5250806106525250806106295250610c376000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063c4d66de81161005b578063c4d66de814610181578063d6866ea5146101a7578063e7dd4b2c146101af578063f77c4791146101d557610088565b80630621472c1461008d57806392eefe9b146100b55780639ce7abe5146100db578063a2594d821461015b575b600080fd5b6100b3600480360360208110156100a357600080fd5b50356001600160a01b03166101f9565b005b6100b3600480360360208110156100cb57600080fd5b50356001600160a01b0316610290565b6100b3600480360360408110156100f157600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561011c57600080fd5b82018360208201111561012e57600080fd5b8035906020019184600183028401116401000000008311171561015057600080fd5b5090925090506102a4565b6100b36004803603602081101561017157600080fd5b50356001600160a01b03166103fa565b6100b36004803603602081101561019757600080fd5b50356001600160a01b0316610515565b6100b3610624565b6100b3600480360360208110156101c557600080fd5b50356001600160a01b0316610745565b6101dd6107ac565b604080516001600160a01b039092168252519081900360200190f35b6102016107c1565b610209610897565b6001600160a01b031663095ea7b3826000196040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b505af1158015610275573d6000803e3d6000fd5b505050506040513d602081101561028b57600080fd5b505050565b6102986108c7565b6102a18161092c565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156102e057600080fd5b505af11580156102f4573d6000803e3d6000fd5b505050506040513d602081101561030a57600080fd5b50516001600160a01b03163314610368576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156103dc57600080fd5b505af11580156103f0573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561043657600080fd5b505af115801561044a573d6000803e3d6000fd5b505050506040513d602081101561046057600080fd5b50516001600160a01b031633146104be576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156104f957600080fd5b505af115801561050d573d6000803e3d6000fd5b505050505050565b61051d6109de565b6001600160a01b0316336001600160a01b031614610578576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600054610100900460ff16806105915750610591610a03565b8061059f575060005460ff16155b6105da5760405162461bcd60e51b815260040180806020018281038252602e815260200180610bd4602e913960400191505060405180910390fd5b600054610100900460ff16158015610605576000805460ff1961ff0019909116610100171660011790555b61060e82610298565b8015610620576000805461ff00191690555b5050565b61064d7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106767f0000000000000000000000000000000000000000000000000000000000000000610a14565b61069f7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106c87f0000000000000000000000000000000000000000000000000000000000000000610a14565b6106f17f0000000000000000000000000000000000000000000000000000000000000000610a14565b61071a7f0000000000000000000000000000000000000000000000000000000000000000610a14565b6107437f0000000000000000000000000000000000000000000000000000000000000000610a14565b565b61074d6107c1565b610755610897565b6001600160a01b031663095ea7b38260006040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561026157600080fd5b6000546201000090046001600160a01b031681565b600060029054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561080f57600080fd5b505afa158015610823573d6000803e3d6000fd5b505050506040513d602081101561083957600080fd5b50516001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006108c27f0000000000000000000000000000000000000000000000000000000000000000610b22565b905090565b6000546201000090046001600160a01b03163314610743576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610980576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b03831662010000810262010000600160b01b03199092169190911790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000610a0e30610bcd565b15905090565b60008060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e836040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610a6e57600080fd5b505afa158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146106205760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600160205260408120546001600160a01b031680610bc757600060029054906101000a90046001600160a01b03166001600160a01b031663f7641a5e846040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015610b9857600080fd5b505afa158015610bac573d6000803e3d6000fd5b505050506040513d6020811015610bc257600080fd5b505190505b92915050565b3b15159056fe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220db5bf6ed6a6394146ce0c6f8770a20ad4f778d16c74558284981457141097a0964736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"BridgeEscrow#BridgeEscrow","networkInteractionId":1,"nonce":540,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x13d14bc11804dbf49f9614ddaf091128170eb3f476918525d3446c48cfac26f7"},"type":"TRANSACTION_SEND"} +{"futureId":"BridgeEscrow#BridgeEscrow","hash":"0x13d14bc11804dbf49f9614ddaf091128170eb3f476918525d3446c48cfac26f7","networkInteractionId":1,"receipt":{"blockHash":"0x4e6a2163bf85dcff071956d9f18d3946b741934e1b5fabbe19eb0827f306d0f6","blockNumber":82177277,"contractAddress":"0xbC846a82491A4b6Ee5fd841c60923019d99F6D0c","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"BridgeEscrow#BridgeEscrow","result":{"address":"0xbC846a82491A4b6Ee5fd841c60923019d99F6D0c","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"Controller#Controller","constructorArgs":[],"contractName":"Controller","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"Controller#Controller","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Controller#Controller","networkInteraction":{"data":"0x608060405234801561001057600080fd5b506100243361003360201b6109b21760201c565b61002e6001610055565b6100e7565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff1615158115151415610075576100e4565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff910416156100a157426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a15b50565b610ba0806100f66000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80636cda3798116100a2578063e0e9929211610071578063e0e9929214610215578063e3056a3414610241578063eb5dd94f14610249578063f2fde38b14610275578063f7641a5e1461029b5761010b565b80636cda3798146101ce57806379ba5097146101e85780639181df9c146101f057806391b4ded91461020d5761010b565b806348bde20c116100de57806348bde20c146101795780634fc07d751461019f57806356371bd8146101a75780635c975abb146101c65761010b565b80630c340a241461011057806316c38b3c1461013457806324a3d622146101555780632e292fc71461015d575b600080fd5b6101186102b8565b604080516001600160a01b039092168252519081900360200190f35b6101536004803603602081101561014a57600080fd5b503515156102c7565b005b610118610331565b610165610340565b604080519115158252519081900360200190f35b6101536004803603602081101561018f57600080fd5b50356001600160a01b0316610350565b61011861040c565b610153600480360360208110156101bd57600080fd5b5035151561041b565b610165610482565b6101d6610492565b60408051918252519081900360200190f35b610153610498565b6101536004803603602081101561020657600080fd5b50356105a6565b6101d6610651565b6101536004803603604081101561022b57600080fd5b50803590602001356001600160a01b0316610657565b61011861076e565b6101536004803603604081101561025f57600080fd5b50803590602001356001600160a01b031661077d565b6101536004803603602081101561028b57600080fd5b50356001600160a01b0316610899565b610118600480360360208110156102b157600080fd5b5035610997565b6000546001600160a01b031681565b6000546001600160a01b03163314806102ea57506004546001600160a01b031633145b6103255760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e816109d4565b50565b6004546001600160a01b031681565b600154600160a01b900460ff1690565b6000546001600160a01b031633146103a8576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610403576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b61032e81610a65565b6000546001600160a01b031690565b6000546001600160a01b031633148061043e57506004546001600160a01b031633145b6104795760405162461bcd60e51b8152600401808060200182810382526022815260200180610b496022913960400191505060405180910390fd5b61032e81610ab7565b600154600160a81b900460ff1690565b60025481565b6001546001600160a01b031680158015906104bb5750336001600160a01b038216145b61050c576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b600081815260056020908152604080832080546001600160a01b031916905580519283525183927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a250565b60035481565b6000546001600160a01b031633146106af576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661070a576040805162461bcd60e51b815260206004820152601c60248201527f436f6e74726163742061646472657373206d7573742062652073657400000000604482015290519081900360640190fd5b60008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927f937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd92908290030190a25050565b6001546001600160a01b031681565b6000546001600160a01b031633146107d5576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610829576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b6000828152600560205260408082205481516392eefe9b60e01b81526001600160a01b038581166004830152925192909116926392eefe9b9260248084019382900301818387803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050505050565b6000546001600160a01b031633146108f1576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610943576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000908152600560205260409020546001600160a01b031690565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b600160159054906101000a900460ff16151581151514156109f45761032e565b6001805460ff60a81b1916600160a81b8315158102919091179182905560ff91041615610a2057426003555b60015460408051600160a81b90920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600480546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b600160149054906101000a900460ff1615158115151415610ad75761032e565b6001805460ff60a01b1916600160a01b8315158102919091179182905560ff91041615610b0357426002555b60015460408051600160a01b90920460ff1615158252517f511b770d1b1dc5cbd412a5017f55cbb2295b826385e5f46c1de2b6ebeb44ae02916020908290030190a15056fe4f6e6c7920476f7665726e6f72206f7220477561726469616e2063616e2063616c6ca2646970667358221220c742dbbf8f38fda928d26053c584788bb7d7b003131594b9e14f1381ebbdbb3064736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Controller#Controller","networkInteractionId":1,"nonce":541,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x22f6e912acc9d7888fadcb3b37c4989b24c418547984408f34feccaad11edaab"},"type":"TRANSACTION_SEND"} +{"artifactId":"Curation#Curation","constructorArgs":[],"contractName":"Curation","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"Curation#Curation","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#Curation","networkInteraction":{"data":"0x6101806040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea361014052613d0960e61b6101605234801561011a57600080fd5b5060805160a05160c05160e0516101005161012051610140516101605160e01c6128cc61018f60003980610c2f52508061141b52806119025250806113f25250806113c9528061180c5250806113a05280611dbf5250806113775280611ff252508061134e52508061132552506128cc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806399439fee11610104578063cd0ad4a2116100a2578063eff1d50e11610071578063eff1d50e146103f2578063f049b900146103fa578063f115c4271461040d578063f77c479114610415576101da565b8063cd0ad4a2146103af578063cd18119e146103c2578063d6866ea5146103d5578063eba0c8a1146103dd576101da565b80639f94c667116100de5780639f94c6671461035f578063a2594d8214610372578063a25e62c714610385578063b5217bb41461038d576101da565b806399439fee146103265780639b4d9f33146103395780639ce7abe51461034c576101da565b80634c4ea0ed1161017c5780637a2a45b81161014b5780637a2a45b8146102da57806381573288146102ed57806392eefe9b1461030057806393a90a1e14610313576101da565b80634c4ea0ed1461027f5780634c8c7a441461029f5780636536fe32146102b457806369db11a1146102c7576101da565b806326058249116101b857806326058249146102235780633718896d14610238578063375a54ab1461024b57806346e855da1461026c576101da565b80630faaf87f146101df578063185360f91461020857806324bdeec714610210575b600080fd5b6101f26101ed366004612175565b61041d565b6040516101ff91906122ab565b60405180910390f35b6101f26104da565b6101f261021e366004612196565b6104e0565b61022b610662565b6040516101ff9190612273565b6101f2610246366004612175565b610677565b61025e610259366004612196565b6108b6565b6040516101ff9291906127b8565b6101f261027a36600461215d565b610af7565b61029261028d36600461215d565b610b0c565b6040516101ff91906122a0565b6102b26102ad3660046120e4565b610b20565b005b6102b26102c236600461215d565b610cb0565b6101f26102d5366004612175565b610cc4565b6101f26102e8366004612175565b610d78565b6102b26102fb366004612175565b610d8b565b6102b261030e3660046120c8565b610e5e565b6102b26103213660046120c8565b610e6f565b6101f261033436600461215d565b610ecb565b6102b26103473660046120c8565b610f72565b6102b261035a3660046121c1565b610f83565b6101f261036d366004612132565b6110d9565b6102b26103803660046120c8565b61118d565b61022b6112a8565b6103a061039b36600461215d565b6112be565b6040516101ff939291906127dc565b6102b26103bd366004612259565b6112ef565b6102b26103d0366004612259565b61130f565b6102b2611320565b6103e5611441565b6040516101ff9190612801565b61022b611454565b61025e610408366004612175565b611463565b6103e56114c0565b61022b6114cc565b6000828152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b0316908201528161046d85610ecb565b82519091506104975760405162461bcd60e51b815260040161048e906125e8565b60405180910390fd5b838110156104b75760405162461bcd60e51b815260040161048e906124f3565b81516104cf9082906104c990876114db565b90611534565b925050505b92915050565b600d5481565b60006104ea61159b565b33836105085760405162461bcd60e51b815260040161048e906122b4565b8361051382876110d9565b10156105315760405162461bcd60e51b815260040161048e906124af565b600061053d868661041d565b90508381101561055f5760405162461bcd60e51b815260040161048e906123ff565b61056886611709565b6000868152600f60205260409020805461058290836117a8565b8155600181015460405163079cc67960e41b8152600160201b9091046001600160a01b0316906379cc6790906105be9086908a90600401612287565b600060405180830381600087803b1580156105d857600080fd5b505af11580156105ec573d6000803e3d6000fd5b505050506105f987610ecb565b61060257600081555b61061461060d611805565b8484611835565b86836001600160a01b03167fe14cd5e80f6821ded0538e85a537487acf10bb5e97a12176df56a099e90bfb3484896040516106509291906127b8565b60405180910390a35095945050505050565b6010546201000090046001600160a01b031681565b600061068161159b565b6106896118fb565b6001600160a01b0316336001600160a01b0316146106b95760405162461bcd60e51b815260040161048e90612781565b816106d65760405162461bcd60e51b815260040161048e906126c0565b60006106e28484611926565b6000858152600f6020526040902090915033906106fe86610b0c565b6107ca576001810154600160201b90046001600160a01b03166107ca57600c5460009061073a90600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610769903090600401612273565b600060405180830381600087803b15801561078357600080fd5b505af1158015610797573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6107d386611709565b60006107dd611805565b90506107ea818488611a76565b81546107f69087611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f19906108329086908890600401612287565b600060405180830381600087803b15801561084c57600080fd5b505af1158015610860573d6000803e3d6000fd5b5050505086836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf888760006040516108a3939291906127c6565b60405180910390a3509195945050505050565b6000806108c161159b565b836108de5760405162461bcd60e51b815260040161048e906126c0565b6000806108eb8787611463565b915091508482101561090f5760405162461bcd60e51b815260040161048e906123ff565b6000878152600f60205260409020339061092889610b0c565b6109f4576001810154600160201b90046001600160a01b03166109f457600c5460009061096490600160401b90046001600160a01b03166119d9565b60405163189acdbd60e31b81529091506001600160a01b0382169063c4d66de890610993903090600401612273565b600060405180830381600087803b1580156109ad57600080fd5b505af11580156109c1573d6000803e3d6000fd5b5050506001830180546001600160a01b03909316600160201b02640100000000600160c01b031990931692909217909155505b6109fd89611709565b6000610a07611805565b9050610a1481848b611a76565b610a1e8185611b2f565b610a33610a2b8a866117a8565b835490611ad5565b825560018201546040516340c10f1960e01b8152600160201b9091046001600160a01b0316906340c10f1990610a6f9086908990600401612287565b600060405180830381600087803b158015610a8957600080fd5b505af1158015610a9d573d6000803e3d6000fd5b5050505089836001600160a01b03167fb7bf5f4e5b23ef992df9875ecea572620d18dab0c1a5486a9b695d20d9ec50cf8b8888604051610adf939291906127c6565b60405180910390a35092989197509095505050505050565b6000818152600f60205260409020545b919050565b6000908152600f6020526040902054151590565b610b28611b7b565b6001600160a01b0316336001600160a01b031614610b83576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b601054610100900460ff1680610b9c5750610b9c611ba0565b80610baa575060105460ff16155b610be55760405162461bcd60e51b815260040180806020018281038252602e815260200180612848602e913960400191505060405180910390fd5b601054610100900460ff16158015610c10576010805460ff1961ff0019909116610100171660011790555b610c1985610e66565b600c805467ffffffff000000001916600160201b7f000000000000000000000000000000000000000000000000000000000000000063ffffffff160217905560405160008051602061282883398151915290610c74906123d2565b60405180910390a1610c8583611bb1565b610c8e82611c16565b610c9784611c54565b8015610ca9576010805461ff00191690555b5050505050565b610cb8611ce4565b610cc181611c16565b50565b600081610ce35760405162461bcd60e51b815260040161048e90612322565b6000610cef8484611926565b6000858152600f6020908152604080832081516060810183528154815260019091015463ffffffff811693820193909352600160201b9092046001600160a01b031690820152919250610d4b83610d4588610ecb565b90611ad5565b8251909150600090610d5d9087611ad5565b9050610d6d826104c983876114db565b979650505050505050565b6000610d848383611926565b9392505050565b6010546201000090046001600160a01b0316331480610dc25750610dad611db8565b6001600160a01b0316336001600160a01b0316145b610dde5760405162461bcd60e51b815260040161048e9061255c565b610de782610b0c565b610e035760405162461bcd60e51b815260040161048e9061245c565b6000828152600f602052604090208054610e1d9083611ad5565b815560405183907ff17fdee613a92b35db6b7598eb43750b24d4072eb304e6eca80121e40402e34b90610e519085906122ab565b60405180910390a2505050565b610e66611de3565b610cc181611e42565b610e77611ce4565b6010805462010000600160b01b031916620100006001600160a01b038416908102919091179091556040517f81dcb738da3dabd5bb2adbc7dd107fbbfca936e9c8aecab25f5b17a710a784c790600090a250565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015610f6957806001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f2c57600080fd5b505afa158015610f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f649190612241565b610d84565b60009392505050565b610f7a611ce4565b610cc181611c54565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610fbf57600080fd5b505af1158015610fd3573d6000803e3d6000fd5b505050506040513d6020811015610fe957600080fd5b50516001600160a01b03163314611047576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156110bb57600080fd5b505af11580156110cf573d6000803e3d6000fd5b5050505050505050565b6000818152600f6020526040812060010154600160201b90046001600160a01b03168015611182576040516370a0823160e01b81526001600160a01b038216906370a082319061112d908790600401612273565b60206040518083038186803b15801561114557600080fd5b505afa158015611159573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061117d9190612241565b611185565b60005b949350505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156111c957600080fd5b505af11580156111dd573d6000803e3d6000fd5b505050506040513d60208110156111f357600080fd5b50516001600160a01b03163314611251576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128c57600080fd5b505af11580156112a0573d6000803e3d6000fd5b505050505050565b600c54600160401b90046001600160a01b031681565b600f602052600090815260409020805460019091015463ffffffff811690600160201b90046001600160a01b031683565b6112f7611ce4565b60405162461bcd60e51b815260040161048e906123a3565b611317611ce4565b610cc181611bb1565b6113497f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113727f0000000000000000000000000000000000000000000000000000000000000000611eea565b61139b7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113c47f0000000000000000000000000000000000000000000000000000000000000000611eea565b6113ed7f0000000000000000000000000000000000000000000000000000000000000000611eea565b6114167f0000000000000000000000000000000000000000000000000000000000000000611eea565b61143f7f0000000000000000000000000000000000000000000000000000000000000000611eea565b565b600c54600160201b900463ffffffff1681565b600e546001600160a01b031681565b600c546000908190819061149790620f4240906104c990879061149190849063ffffffff908116906117a816565b906114db565b905060006114a585836117a8565b905060006114b38784611926565b9791965090945050505050565b600c5463ffffffff1681565b6000546001600160a01b031681565b6000826114ea575060006104d4565b828202828482816114f757fe5b0414610d845760405162461bcd60e51b81526004018080602001828103825260218152602001806128766021913960400191505060405180910390fd5b600080821161158a576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161159357fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316635c975abb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156115e757600080fd5b505afa1580156115fb573d6000803e3d6000fd5b505050506040513d602081101561161157600080fd5b50511561164e576040805162461bcd60e51b815260206004820152600660248201526514185d5cd95960d21b604482015290519081900360640190fd5b60008054906101000a90046001600160a01b03166001600160a01b0316632e292fc76040518163ffffffff1660e01b815260040160206040518083038186803b15801561169a57600080fd5b505afa1580156116ae573d6000803e3d6000fd5b505050506040513d60208110156116c457600080fd5b50511561143f576040805162461bcd60e51b815260206004820152600e60248201526d14185c9d1a585b0b5c185d5cd95960921b604482015290519081900360640190fd5b6000611713611feb565b90506001600160a01b038116156117a4576040516307470bfb60e21b81526001600160a01b03821690631d1c2fec906117509085906004016122ab565b602060405180830381600087803b15801561176a57600080fd5b505af115801561177e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a29190612241565b505b5050565b6000828211156117ff576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b905090565b80156117a257826001600160a01b031663a9059cbb83836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561189257600080fd5b505af11580156118a6573d6000803e3d6000fd5b505050506040513d60208110156118bc57600080fd5b50516117a2576040805162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000828152600f602090815260408083208151606081018352815480825260019092015463ffffffff811694820194909452600160201b9093046001600160a01b0316918301919091526119c657600d548310156119965760405162461bcd60e51b815260040161048e90612359565b600d546119be906119b6906104c96119ae87836117a8565b6001906114db565b600190611ad5565b9150506104d4565b8051611185906104c98561149188610ecb565b6000604051733d602d80600a3d3981f3363d3d373d3d3d363d7360601b81528260601b60148201526e5af43d82803e903d91602b57fd5bf360881b60288201526037816000f09150506001600160a01b038116610b07576040805162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b604482015290519081900360640190fd5b80156117a257604080516323b872dd60e01b81526001600160a01b038481166004830152306024830152604482018490529151918516916323b872dd916064808201926020929091908290030181600087803b15801561189257600080fd5b600082820183811015610d84576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b80156117a457816001600160a01b03166342966c68826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561128c57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611bab306120ae565b15905090565b620f424063ffffffff82161115611bda5760405162461bcd60e51b815260040161048e906126f7565b600c805463ffffffff191663ffffffff831617905560405160008051602061282883398151915290611c0b906125b9565b60405180910390a150565b80611c335760405162461bcd60e51b815260040161048e90612645565b600d81905560405160008051602061282883398151915290611c0b9061242c565b6001600160a01b038116611c7a5760405162461bcd60e51b815260040161048e906122eb565b611c83816120ae565b611c9f5760405162461bcd60e51b815260040161048e90612689565b600c805468010000000000000000600160e01b031916600160401b6001600160a01b0384160217905560405160008051602061282883398151915290611c0b90612754565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3057600080fd5b505afa158015611d44573d6000803e3d6000fd5b505050506040513d6020811015611d5a57600080fd5b50516001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b60006118307f0000000000000000000000000000000000000000000000000000000000000000612012565b6000546001600160a01b0316331461143f576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116611e96576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015611f3757600080fd5b505afa158015611f4b573d6000803e3d6000fd5b505050506040513d6020811015611f6157600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146117a45760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b60006118307f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b0316806104d45760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561207b57600080fd5b505afa15801561208f573d6000803e3d6000fd5b505050506040513d60208110156120a557600080fd5b50519392505050565b3b151590565b803563ffffffff81168114610b0757600080fd5b6000602082840312156120d9578081fd5b8135610d8481612812565b600080600080608085870312156120f9578283fd5b843561210481612812565b9350602085013561211481612812565b9250612122604086016120b4565b9396929550929360600135925050565b60008060408385031215612144578182fd5b823561214f81612812565b946020939093013593505050565b60006020828403121561216e578081fd5b5035919050565b60008060408385031215612187578182fd5b50508035926020909101359150565b6000806000606084860312156121aa578283fd5b505081359360208301359350604090920135919050565b6000806000604084860312156121d5578283fd5b83356121e081612812565b9250602084013567ffffffffffffffff808211156121fc578384fd5b818601915086601f83011261220f578384fd5b81358181111561221d578485fd5b87602082850101111561222e578485fd5b6020830194508093505050509250925092565b600060208284031215612252578081fd5b5051919050565b60006020828403121561226a578081fd5b610d84826120b4565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b60208082526017908201527f43616e6e6f74206275726e207a65726f207369676e616c000000000000000000604082015260600190565b6020808252601e908201527f546f6b656e206d6173746572206d757374206265206e6f6e2d656d7074790000604082015260600190565b6020808252601d908201527f43616e27742063616c63756c6174652077697468203020746f6b656e73000000604082015260600190565b6020808252602a908201527f4375726174696f6e206465706f7369742069732062656c6f77206d696e696d756040820152691b481c995c5d5a5c995960b21b606082015260800190565b6020808252601590820152742737ba1034b6b83632b6b2b73a32b21034b710261960591b604082015260600190565b60208082526013908201527264656661756c7452657365727665526174696f60681b604082015260600190565b60208082526013908201527229b634b83830b3b290383937ba32b1ba34b7b760691b604082015260600190565b6020808252601690820152751b5a5b9a5b5d5b50dd5c985d1a5bdb91195c1bdcda5d60521b604082015260600190565b60208082526033908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527274656420746f20636f6c6c656374206665657360681b606082015260800190565b60208082526024908201527f43616e6e6f74206275726e206d6f7265207369676e616c207468616e20796f756040820152631037bbb760e11b606082015260800190565b60208082526043908201527f5369676e616c206d7573742062652061626f7665206f7220657175616c20746f60408201527f207369676e616c2069737375656420696e20746865206375726174696f6e20706060820152621bdbdb60ea1b608082015260a00190565b60208082526037908201527f43616c6c6572206d75737420626520746865207375626772617068207365727660408201527f696365206f72207374616b696e6720636f6e7472616374000000000000000000606082015260800190565b6020808252601590820152746375726174696f6e54617850657263656e7461676560581b604082015260600190565b6020808252603b908201527f5375626772617068206465706c6f796d656e74206d757374206265206375726160408201527f74656420746f20706572666f726d2063616c63756c6174696f6e730000000000606082015260800190565b60208082526024908201527f4d696e696d756d206375726174696f6e206465706f7369742063616e6e6f74206040820152630626520360e41b606082015260800190565b6020808252601f908201527f546f6b656e206d6173746572206d757374206265206120636f6e747261637400604082015260600190565b6020808252601a908201527f43616e6e6f74206465706f736974207a65726f20746f6b656e73000000000000604082015260600190565b60208082526039908201527f4375726174696f6e207461782070657263656e74616765206d7573742062652060408201527f62656c6f77206f7220657175616c20746f204d41585f50504d00000000000000606082015260800190565b60208082526013908201527231bab930ba34b7b72a37b5b2b726b0b9ba32b960691b604082015260600190565b6020808252601a908201527f4f6e6c792074686520474e532063616e2063616c6c2074686973000000000000604082015260600190565b918252602082015260400190565b9283526020830191909152604082015260600190565b92835263ffffffff9190911660208301526001600160a01b0316604082015260600190565b63ffffffff91909116815260200190565b6001600160a01b0381168114610cc157600080fdfe96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1d7866b5729d907dd1710f966a8454930b048b6c785a4ad687a5e1b7a901ea164736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#Curation","networkInteractionId":1,"nonce":542,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x8f68c53238685f6e265aa509796a8eb579bef8ffe53ff6e3b7bcf42f099bcbe3"},"type":"TRANSACTION_SEND"} +{"futureId":"Curation#Curation","hash":"0x8f68c53238685f6e265aa509796a8eb579bef8ffe53ff6e3b7bcf42f099bcbe3","networkInteractionId":1,"receipt":{"blockHash":"0x953c311a7d515cf400dc15d21805d69060e4861943ad7f473bc653a9595880b8","blockNumber":82177307,"contractAddress":"0x73A09b3A9C5531da3374A12a1282e40C3e2B7FA0","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#Curation","result":{"address":"0x73A09b3A9C5531da3374A12a1282e40C3e2B7FA0","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"Curation#GraphCurationToken","constructorArgs":[],"contractName":"GraphCurationToken","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"Curation#GraphCurationToken","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#GraphCurationToken","networkInteraction":{"data":"0x608060405234801561001057600080fd5b506114ec806100206000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806379ba5097116100a2578063a9059cbb11610071578063a9059cbb14610352578063c4d66de81461037e578063dd62ed3e146103a4578063e3056a34146103d2578063f2fde38b146103da57610116565b806379ba5097146102ea57806379cc6790146102f257806395d89b411461031e578063a457c2d71461032657610116565b806323b872dd116100e957806323b872dd14610216578063313ce5671461024c578063395093511461026a57806340c10f191461029657806370a08231146102c457610116565b806306fdde031461011b578063095ea7b3146101985780630c340a24146101d857806318160ddd146101fc575b600080fd5b610123610400565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561015d578181015183820152602001610145565b50505050905090810190601f16801561018a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101c4600480360360408110156101ae57600080fd5b506001600160a01b038135169060200135610496565b604080519115158252519081900360200190f35b6101e06104b3565b604080516001600160a01b039092168252519081900360200190f35b6102046104c2565b60408051918252519081900360200190f35b6101c46004803603606081101561022c57600080fd5b506001600160a01b038135811691602081013590911690604001356104c8565b61025461054f565b6040805160ff9092168252519081900360200190f35b6101c46004803603604081101561028057600080fd5b506001600160a01b038135169060200135610558565b6102c2600480360360408110156102ac57600080fd5b506001600160a01b0381351690602001356105a6565b005b610204600480360360208110156102da57600080fd5b50356001600160a01b031661060c565b6102c2610627565b6102c26004803603604081101561030857600080fd5b506001600160a01b038135169060200135610737565b610123610799565b6101c46004803603604081101561033c57600080fd5b506001600160a01b0381351690602001356107fa565b6101c46004803603604081101561036857600080fd5b506001600160a01b038135169060200135610862565b6102c26004803603602081101561039457600080fd5b50356001600160a01b0316610876565b610204600480360360408110156103ba57600080fd5b506001600160a01b0381358116916020013516610972565b6101e061099d565b6102c2600480360360208110156103f057600080fd5b50356001600160a01b03166109ac565b60368054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b820191906000526020600020905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b60006104aa6104a3610aaa565b8484610aae565b50600192915050565b6065546001600160a01b031681565b60355490565b60006104d5848484610b9a565b610545846104e1610aaa565b61054085604051806060016040528060288152602001611400602891396001600160a01b038a1660009081526034602052604081209061051f610aaa565b6001600160a01b031681526020810191909152604001600020549190610cf7565b610aae565b5060019392505050565b60385460ff1690565b60006104aa610565610aaa565b846105408560346000610576610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490610d8e565b6065546001600160a01b031633146105fe576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610def565b5050565b6001600160a01b031660009081526033602052604090205490565b6066546001600160a01b0316801580159061064a5750336001600160a01b038216145b61069b576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b606580546001600160a01b038381166001600160a01b0319808416919091179384905560668054909116905560405191811692169082907f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f90600090a36066546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6065546001600160a01b0316331461078f576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6106088282610ee1565b60378054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561048c5780601f106104615761010080835404028352916020019161048c565b60006104aa610807610aaa565b84610540856040518060600160405280602581526020016114926025913960346000610831610aaa565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190610cf7565b60006104aa61086f610aaa565b8484610b9a565b600054610100900460ff168061088f575061088f610fdd565b8061089d575060005460ff16155b6108d85760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015610903576000805460ff1961ff0019909116610100171660011790555b61090c82610fee565b61095d604051806040016040528060148152602001734772617068204375726174696f6e20536861726560601b8152506040518060400160405280600381526020016247435360e81b815250611010565b8015610608576000805461ff00191690555050565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b6066546001600160a01b031681565b6065546001600160a01b03163314610a04576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610a56576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b606680546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b038316610af35760405162461bcd60e51b815260040180806020018281038252602481526020018061146e6024913960400191505060405180910390fd5b6001600160a01b038216610b385760405162461bcd60e51b815260040180806020018281038252602281526020018061138a6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260346020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610bdf5760405162461bcd60e51b81526004018080602001828103825260258152602001806114496025913960400191505060405180910390fd5b6001600160a01b038216610c245760405162461bcd60e51b81526004018080602001828103825260238152602001806113456023913960400191505060405180910390fd5b610c2f8383836110c1565b610c6c816040518060600160405280602681526020016113ac602691396001600160a01b0386166000908152603360205260409020549190610cf7565b6001600160a01b038085166000908152603360205260408082209390935590841681522054610c9b9082610d8e565b6001600160a01b0380841660008181526033602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115610d865760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610d4b578181015183820152602001610d33565b50505050905090810190601f168015610d785780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600082820183811015610de8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216610e4a576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b610e56600083836110c1565b603554610e639082610d8e565b6035556001600160a01b038216600090815260336020526040902054610e899082610d8e565b6001600160a01b03831660008181526033602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216610f265760405162461bcd60e51b81526004018080602001828103825260218152602001806114286021913960400191505060405180910390fd5b610f32826000836110c1565b610f6f81604051806060016040528060228152602001611368602291396001600160a01b0385166000908152603360205260409020549190610cf7565b6001600160a01b038316600090815260336020526040902055603554610f9590826110c6565b6035556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6000610fe830611123565b15905090565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff16806110295750611029610fdd565b80611037575060005460ff16155b6110725760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff1615801561109d576000805460ff1961ff0019909116610100171660011790555b6110a5611129565b6110af83836111cb565b80156110c1576000805461ff00191690555b505050565b60008282111561111d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600054610100900460ff16806111425750611142610fdd565b80611150575060005460ff16155b61118b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff161580156111b6576000805460ff1961ff0019909116610100171660011790555b80156111c8576000805461ff00191690555b50565b600054610100900460ff16806111e457506111e4610fdd565b806111f2575060005460ff16155b61122d5760405162461bcd60e51b815260040180806020018281038252602e8152602001806113d2602e913960400191505060405180910390fd5b600054610100900460ff16158015611258576000805460ff1961ff0019909116610100171660011790555b825161126b9060369060208601906112a3565b50815161127f9060379060208501906112a3565b506038805460ff1916601217905580156110c1576000805461ff0019169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826112d9576000855561131f565b82601f106112f257805160ff191683800117855561131f565b8280016001018555821561131f579182015b8281111561131f578251825591602001919060010190611304565b5061132b92915061132f565b5090565b5b8082111561132b576000815560010161133056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212200b687fddcd01dbad6e1d5fbd49cb041f69ed61684a12a4c26c6e37e0f5ad7c2a64736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#GraphCurationToken","networkInteractionId":1,"nonce":543,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xb5b516edbce5e30c09e2733b297aa9249e2319643e15264a1267abf097540d2d"},"type":"TRANSACTION_SEND"} +{"futureId":"Curation#GraphCurationToken","hash":"0xb5b516edbce5e30c09e2733b297aa9249e2319643e15264a1267abf097540d2d","networkInteractionId":1,"receipt":{"blockHash":"0x9c76d371c53140ff322e94744093507c5b8e8a4b69dc92857f68f5bede691dc4","blockNumber":82177320,"contractAddress":"0xF1c0D12b4b4f6f0d66CE0A18A16876c9ca6D2E92","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#GraphCurationToken","result":{"address":"0xF1c0D12b4b4f6f0d66CE0A18A16876c9ca6D2E92","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"EpochManager#EpochManager","constructorArgs":[],"contractName":"EpochManager","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"EpochManager#EpochManager","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"EpochManager#EpochManager","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161103461016460003980610aac525080610a83525080610a5a525080610a31525080610a085250806109df5250806109b652506110346000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063a2594d82116100ad578063cd6dc68711610071578063cd6dc687146102c4578063d0cfa46e146102f0578063d6866ea5146102f8578063f77c479114610300578063faa1a23c146103245761012c565b8063a2594d821461027e578063ab93122c146102a4578063b4146a0b146102ac578063c46e58eb146102b4578063cc65149b146102bc5761012c565b806376671808116100f457806376671808146101ab57806385df51fd146101b35780638ae63d6d146101d057806392eefe9b146101d85780639ce7abe5146101fe5761012c565b806319c3b82d146101315780631b28126d1461014b5780631ce05d381461016857806354eea7961461018457806357d775f8146101a3575b600080fd5b61013961032c565b60408051918252519081900360200190f35b6101396004803603602081101561016157600080fd5b5035610353565b61017061037f565b604080519115158252519081900360200190f35b6101a16004803603602081101561019a57600080fd5b5035610392565b005b61013961047f565b610139610485565b610139600480360360208110156101c957600080fd5b503561049b565b61013961053b565b6101a1600480360360208110156101ee57600080fd5b50356001600160a01b031661053f565b6101a16004803603604081101561021457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184600183028401116401000000008311171561027357600080fd5b509092509050610553565b6101a16004803603602081101561029457600080fd5b50356001600160a01b03166106a9565b6101396107c4565b6101396107e6565b6101a16107ec565b610139610888565b6101a1600480360360408110156102da57600080fd5b506001600160a01b03813516906020013561088e565b610139610999565b6101a16109b1565b610308610ad2565b604080516001600160a01b039092168252519081900360200190f35b610139610ae1565b600061034e600c54610348600f5461034261053b565b90610ae7565b90610b49565b905090565b60008061035e610485565b905080831061036e576000610378565b6103788184610ae7565b9392505050565b6000610389610485565b600d5414905090565b61039a610bb0565b600081116103ea576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b600c5481141561042b5760405162461bcd60e51b8152600401808060200182810382526029815260200180610f666029913960400191505060405180910390fd5b610433610485565b600e5561043e6107c4565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a250565b600c5481565b600061034e61049261032c565b600e5490610c84565b6000806104a661053b565b90508083106104e65760405162461bcd60e51b8152600401808060200182810382526023815260200180610fdc6023913960400191505060405180910390fd5b6101008110806104fa575061010081038310155b6105355760405162461bcd60e51b815260040180806020018281038252602c815260200180610fb0602c913960400191505060405180910390fd5b50504090565b4390565b610547610cde565b61055081610d3d565b50565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561058f57600080fd5b505af11580156105a3573d6000803e3d6000fd5b505050506040513d60208110156105b957600080fd5b50516001600160a01b03163314610617576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561068b57600080fd5b505af115801561069f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156106e557600080fd5b505af11580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b50516001600160a01b0316331461076d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156107a857600080fd5b505af11580156107bc573d6000803e3d6000fd5b505050505050565b600061034e6107dd600c546107d761032c565b90610de5565b600f5490610c84565b600e5481565b6107f461037f565b15610846576040805162461bcd60e51b815260206004820152601960248201527f43757272656e742065706f636820616c72656164792072756e00000000000000604482015290519081900360640190fd5b61084e610485565b600d8190556040805133815290517f666a37ccc682d20f8c51c5f6fd835cbadbcaaf09921e076282446e42d7264e3e9181900360200190a2565b600f5481565b610896610e3e565b6001600160a01b0316336001600160a01b0316146108f1576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b60008111610941576040805162461bcd60e51b8152602060048201526018602482015277045706f6368206c656e6774682063616e6e6f7420626520360441b604482015290519081900360640190fd5b61094a82610547565b6001600e5561095761053b565b600f55600c819055600e546040805183815290517f25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce24419181900360200190a25050565b60006109a36107c4565b6109ab61053b565b03905090565b6109da7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a037f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a2c7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a557f0000000000000000000000000000000000000000000000000000000000000000610e63565b610a7e7f0000000000000000000000000000000000000000000000000000000000000000610e63565b610aa77f0000000000000000000000000000000000000000000000000000000000000000610e63565b610ad07f0000000000000000000000000000000000000000000000000000000000000000610e63565b565b6000546001600160a01b031681565b600d5481565b600082821115610b3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b508082035b92915050565b6000808211610b9f576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610ba857fe5b049392505050565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bfc57600080fd5b505afa158015610c10573d6000803e3d6000fd5b505050506040513d6020811015610c2657600080fd5b50516001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b600082820183811015610378576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000546001600160a01b03163314610ad0576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b038116610d91576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600082610df457506000610b43565b82820282848281610e0157fe5b04146103785760405162461bcd60e51b8152600401808060200182810382526021815260200180610f8f6021913960400191505060405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b158015610eb057600080fd5b505afa158015610ec4573d6000803e3d6000fd5b505050506040513d6020811015610eda57600080fd5b50516000838152600160205260409020549091506001600160a01b03808316911614610f615760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25b505056fe45706f6368206c656e677468206d75737420626520646966666572656e7420746f2063757272656e74536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7743616e206f6e6c792072657472696576652068617368657320666f72206c6173742032353620626c6f636b7343616e206f6e6c79207265747269657665207061737420626c6f636b20686173686573a264697066735822122047006a21e84412eeff168d7feb465a4b7993ba048471f600407dddbf9d425b4764736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"EpochManager#EpochManager","networkInteractionId":1,"nonce":544,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xdfd7ab6b622201f1fdc28ee9efe48e408474e67f4cdc9b851750816ccb8fdc48"},"type":"TRANSACTION_SEND"} +{"futureId":"EpochManager#EpochManager","hash":"0xdfd7ab6b622201f1fdc28ee9efe48e408474e67f4cdc9b851750816ccb8fdc48","networkInteractionId":1,"receipt":{"blockHash":"0x4ed62d906394e8babe15813de784b6b9a645a8ddc7d59d0b4b937bacb8faee5b","blockNumber":82177335,"contractAddress":"0x039B22cEd4cDbF6Cd153F38ba7ae2731471e0542","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"EpochManager#EpochManager","result":{"address":"0x039B22cEd4cDbF6Cd153F38ba7ae2731471e0542","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphProxyAdmin#GraphProxyAdmin","constructorArgs":[],"contractName":"GraphProxyAdmin","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"GraphProxyAdmin#GraphProxyAdmin","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","networkInteraction":{"data":"0x608060405234801561001057600080fd5b506100243361002960201b610a0c1760201c565b61004b565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b610a648061005a6000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c80637eff275e116100715780637eff275e146101b157806399a88ec4146101df578063e3056a341461020d578063eb451a0214610215578063f2fde38b14610243578063f3b7dead14610269576100a9565b806307ebde0e146100ae5780630c340a2414610139578063204e1c7a1461015d5780635bf410eb1461018357806379ba5097146101a9575b600080fd5b610137600480360360608110156100c457600080fd5b6001600160a01b0382358116926020810135909116918101906060810160408201356401000000008111156100f857600080fd5b82018360208201111561010a57600080fd5b8035906020019184600183028401116401000000008311171561012c57600080fd5b50909250905061028f565b005b610141610388565b604080516001600160a01b039092168252519081900360200190f35b6101416004803603602081101561017357600080fd5b50356001600160a01b0316610397565b6101416004803603602081101561019957600080fd5b50356001600160a01b031661046a565b610137610525565b610137600480360360408110156101c757600080fd5b506001600160a01b0381358116916020013516610633565b610137600480360360408110156101f557600080fd5b506001600160a01b03813581169160200135166106f6565b61014161079d565b6101376004803603604081101561022b57600080fd5b506001600160a01b03813581169160200135166107ac565b6101376004803603602081101561025957600080fd5b50356001600160a01b0316610853565b6101416004803603602081101561027f57600080fd5b50356001600160a01b0316610951565b6000546001600160a01b031633146102e7576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b836001600160a01b0316639ce7abe58484846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001806020018281038252848482818152602001925080828437600081840152601f19601f820116905080830192505050945050505050600060405180830381600087803b15801561036a57600080fd5b505af115801561037e573d6000803e3d6000fd5b5050505050505050565b6000546001600160a01b031681565b6000806000836001600160a01b03166040518080635c60da1b60e01b8152506004019050600060405180830381855afa9150503d80600081146103f6576040519150601f19603f3d011682016040523d82523d6000602084013e6103fb565b606091505b50915091508161044b576040805162461bcd60e51b8152602060048201526016602482015275141c9bde1e481a5b5c1b0818d85b1b0819985a5b195960521b604482015290519081900360640190fd5b80806020019051602081101561046057600080fd5b5051949350505050565b6000806000836001600160a01b0316604051808063396f7b2360e01b8152506004019050600060405180830381855afa9150503d80600081146104c9576040519150601f19603f3d011682016040523d82523d6000602084013e6104ce565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601d60248201527f50726f78792070656e64696e67496d706c2063616c6c206661696c6564000000604482015290519081900360640190fd5b6001546001600160a01b031680158015906105485750336001600160a01b038216145b610599576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000546001600160a01b0316331461068b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663704b6c02826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b505af11580156106ee573d6000803e3d6000fd5b505050505050565b6000546001600160a01b0316331461074e576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b0316633659cfe6826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6001546001600160a01b031681565b6000546001600160a01b03163314610804576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b816001600160a01b031663a2594d82826040518263ffffffff1660e01b815260040180826001600160a01b03168152602001915050600060405180830381600087803b1580156106da57600080fd5b6000546001600160a01b031633146108ab576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b0381166108fd576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000806000836001600160a01b031660405180806303e1469160e61b8152506004019050600060405180830381855afa9150503d80600081146109b0576040519150601f19603f3d011682016040523d82523d6000602084013e6109b5565b606091505b50915091508161044b576040805162461bcd60e51b815260206004820152601760248201527f50726f78792061646d696e2063616c6c206661696c6564000000000000000000604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b039290921691909117905556fea26469706673582212208b271ee4c7625d89f662c15e90f70e142245bf56f0595043fe9af742b09d958c64736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","networkInteractionId":1,"nonce":545,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x22a237b3b519d594d6d2f4c18440328ecc586f6eaba8f98cf74236d49679f6e2"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","hash":"0x22a237b3b519d594d6d2f4c18440328ecc586f6eaba8f98cf74236d49679f6e2","networkInteractionId":1,"receipt":{"blockHash":"0x598b54b384d008d77e508bfc62782ae2b6719ad7bd5a8cd1095da17ff079e2ce","blockNumber":82177351,"contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin","result":{"address":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphToken#GraphToken","constructorArgs":[],"contractName":"GraphToken","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"GraphToken#GraphToken","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken","networkInteraction":{"data":"0x6101206040527fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac564726080527fefcec85968da792893fa503eb21730083fc6c50ed5461e56163b28335b2a5f9660a0527f044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d60c0527fe33842a7acd1d5a1d28f25a931703e5605152dc48d64dc4716efdae1f565959160e0527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9610100523480156100c657600080fd5b5060805160a05160c05160e0516101005161261e61010660003980611547525080611eae525080611e5e525080611e3d525080611e1c525061261e6000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c80638c2a993e1161011a578063a9059cbb116100ad578063ca52d7d71161007c578063ca52d7d71461067a578063d505accf146106a0578063dd62ed3e146106f1578063e3056a341461071f578063f2fde38b14610727576101fb565b8063a9059cbb146105fa578063aa271e1a14610626578063c2eeeebd1461064c578063c4d66de814610654576101fb565b806398650275116100e957806398650275146105205780639ce7abe514610528578063a2594d82146105a8578063a457c2d7146105ce576101fb565b80638c2a993e146104a057806390646b4a146104cc57806395d89b41146104f2578063983b2d56146104fa576101fb565b8063395093511161019257806374f4f5471161016157806374f4f5471461041a57806379ba50971461044657806379cc67901461044e5780637ecebe001461047a576101fb565b8063395093511461037f57806340c10f19146103ab57806342966c68146103d757806370a08231146103f4576101fb565b806318160ddd116101ce57806318160ddd146102e957806323b872dd146103035780633092afd514610339578063313ce56714610361576101fb565b806306fdde0314610200578063095ea7b31461027d5780630c340a24146102bd578063116191b6146102e1575b600080fd5b61020861074d565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561024257818101518382015260200161022a565b50505050905090810190601f16801561026f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102a96004803603604081101561029357600080fd5b506001600160a01b0381351690602001356107e3565b604080519115158252519081900360200190f35b6102c5610800565b604080516001600160a01b039092168252519081900360200190f35b6102c561080f565b6102f161081e565b60408051918252519081900360200190f35b6102a96004803603606081101561031957600080fd5b506001600160a01b03813581169160208101359091169060400135610824565b61035f6004803603602081101561034f57600080fd5b50356001600160a01b03166108ab565b005b610369610958565b6040805160ff9092168252519081900360200190f35b6102a96004803603604081101561039557600080fd5b506001600160a01b038135169060200135610961565b61035f600480360360408110156103c157600080fd5b506001600160a01b0381351690602001356109af565b61035f600480360360208110156103ed57600080fd5b5035610a0e565b6102f16004803603602081101561040a57600080fd5b50356001600160a01b0316610a1f565b61035f6004803603604081101561043057600080fd5b506001600160a01b038135169060200135610a3a565b61035f610ad4565b61035f6004803603604081101561046457600080fd5b506001600160a01b038135169060200135610be2565b6102f16004803603602081101561049057600080fd5b50356001600160a01b0316610c3c565b61035f600480360360408110156104b657600080fd5b506001600160a01b038135169060200135610c4e565b61035f600480360360208110156104e257600080fd5b50356001600160a01b0316610ce8565b610208610de1565b61035f6004803603602081101561051057600080fd5b50356001600160a01b0316610e42565b61035f610eef565b61035f6004803603604081101561053e57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561056957600080fd5b82018360208201111561057b57600080fd5b8035906020019184600183028401116401000000008311171561059d57600080fd5b509092509050610f43565b61035f600480360360208110156105be57600080fd5b50356001600160a01b0316611099565b6102a9600480360360408110156105e457600080fd5b506001600160a01b0381351690602001356111b4565b6102a96004803603604081101561061057600080fd5b506001600160a01b03813516906020013561121c565b6102a96004803603602081101561063c57600080fd5b50356001600160a01b0316611230565b6102c561124e565b61035f6004803603602081101561066a57600080fd5b50356001600160a01b031661125d565b61035f6004803603602081101561069057600080fd5b50356001600160a01b03166113d3565b61035f600480360360e08110156106b657600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c001356114cf565b6102f16004803603604081101561070757600080fd5b506001600160a01b0381358116916020013516611680565b6102c56116ab565b61035f6004803603602081101561073d57600080fd5b50356001600160a01b03166116ba565b60378054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b820191906000526020600020905b8154815290600101906020018083116107bc57829003601f168201915b5050505050905090565b60006107f76107f06117b8565b84846117bc565b50600192915050565b6000546001600160a01b031681565b60ca546001600160a01b031681565b60365490565b60006108318484846118a8565b6108a18461083d6117b8565b61089c8560405180606001604052806028815260200161250e602891396001600160a01b038a1660009081526035602052604081209061087b6117b8565b6001600160a01b031681526020810191909152604001600020549190611a05565b6117bc565b5060019392505050565b6000546001600160a01b03163314610903576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b61090c81611230565b61094c576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b61095581611a9c565b50565b60395460ff1690565b60006107f761096e6117b8565b8461089c856035600061097f6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611ae5565b6109b833611230565b610a00576040805162461bcd60e51b815260206004820152601460248201527313db9b1e481b5a5b9d195c8818d85b8818d85b1b60621b604482015290519081900360640190fd5b610a0a8282611b46565b5050565b610955610a196117b8565b82611c38565b6001600160a01b031660009081526034602052604090205490565b60ca546001600160a01b03163314610a87576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610a918282610be2565b6040805182815290516001600160a01b038416917fe87aeeb22c5753db7f543198a4c3089d2233040ea9d1cab0eaa3b96d94d4fc6e919081900360200190a25050565b6001546001600160a01b03168015801590610af75750336001600160a01b038216145b610b48576040805162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206d7573742062652070656e64696e6720676f7665726e6f7200604482015290519081900360640190fd5b600080546001600160a01b038381166001600160a01b031980841691909117808555600180549092169091556040519282169391169183917f0ac6deed30eef60090c749850e10f2fa469e3e25fec1d1bef2853003f6e6f18f91a36001546040516001600160a01b03918216918416907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b6000610c198260405180606001604052806024815260200161253660249139610c1286610c0d6117b8565b611680565b9190611a05565b9050610c2d83610c276117b8565b836117bc565b610c378383611c38565b505050565b609a6020526000908152604090205481565b60ca546001600160a01b03163314610c9b576040805162461bcd60e51b815260206004820152600b60248201526a4e4f545f4741544557415960a81b604482015290519081900360640190fd5b610ca58282611b46565b6040805182815290516001600160a01b038416917fae4b6e741e38054ad6705655cc56c91c184f6768f76b41e10803e2766d89e19f919081900360200190a25050565b6000546001600160a01b03163314610d40576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610d8d576040805162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f4741544557415960881b604482015290519081900360640190fd5b60ca80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f5317fa585931182194fed99f2ea5f2efd38af9cff9724273704c8501c521e34b9181900360200190a150565b60388054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156107d95780601f106107ae576101008083540402835291602001916107d9565b6000546001600160a01b03163314610e9a576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116610ee6576040805162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa6a4a72a22a960911b604482015290519081900360640190fd5b61095581611d34565b610ef833611230565b610f38576040805162461bcd60e51b815260206004820152600c60248201526b2727aa2fa0afa6a4a72a22a960a11b604482015290519081900360640190fd5b610f4133611a9c565b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610f7f57600080fd5b505af1158015610f93573d6000803e3d6000fd5b505050506040513d6020811015610fa957600080fd5b50516001600160a01b03163314611007576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b15801561107b57600080fd5b505af115801561108f573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110d557600080fd5b505af11580156110e9573d6000803e3d6000fd5b505050506040513d60208110156110ff57600080fd5b50516001600160a01b0316331461115d576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561119857600080fd5b505af11580156111ac573d6000803e3d6000fd5b505050505050565b60006107f76111c16117b8565b8461089c856040518060600160405280602581526020016125c460259139603560006111eb6117b8565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611a05565b60006107f76112296117b8565b84846118a8565b6001600160a01b031660009081526099602052604090205460ff1690565b60cb546001600160a01b031681565b611265611d80565b6001600160a01b0316336001600160a01b0316146112c0576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b600154600160a81b900460ff16806112db57506112db611da5565b806112f05750600154600160a01b900460ff16155b61132b5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015611362576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b6001600160a01b0382166113b1576040805162461bcd60e51b815260206004820152601160248201527013dddb995c881b5d5cdd081899481cd95d607a1b604482015290519081900360640190fd5b6113bc826000611db6565b8015610a0a576001805460ff60a81b191690555050565b6000546001600160a01b0316331461142b576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b03811661147b576040805162461bcd60e51b8152602060048201526012602482015271494e56414c49445f4c315f4144445245535360701b604482015290519081900360640190fd5b60cb80546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f603c0b2e4494ac82839a70be8b6c660d7d042ccfe71c3ce0e5157f59090e74459181900360200190a150565b8315806114dc5750834211155b611523576040805162461bcd60e51b815260206004820152601360248201527211d4950e88195e1c1a5c9959081c195c9b5a5d606a1b604482015290519081900360640190fd5b6098546001600160a01b038089166000818152609a602090815260408083205481517f00000000000000000000000000000000000000000000000000000000000000008185015280830195909552948c166060850152608084018b905260a084019490945260c08084018a90528451808503909101815260e08401855280519082012061190160f01b61010085015261010284019590955261012280840195909552835180840390950185526101429092019092528251920191909120906115ed82868686611ef3565b9050806001600160a01b0316896001600160a01b03161461164b576040805162461bcd60e51b815260206004820152601360248201527211d4950e881a5b9d985b1a59081c195c9b5a5d606a1b604482015290519081900360640190fd5b6001600160a01b0389166000908152609a60205260409020805460010190556116758989896117bc565b505050505050505050565b6001600160a01b03918216600090815260356020908152604080832093909416825291909152205490565b6001546001600160a01b031681565b6000546001600160a01b03163314611712576040805162461bcd60e51b815260206004820152601660248201527513db9b1e4811dbdd995c9b9bdc8818d85b8818d85b1b60521b604482015290519081900360640190fd5b6001600160a01b038116611764576040805162461bcd60e51b815260206004820152601460248201527311dbdd995c9b9bdc881b5d5cdd081899481cd95d60621b604482015290519081900360640190fd5b600180546001600160a01b038381166001600160a01b03198316179283905560405191811692169082907f76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d90600090a35050565b3390565b6001600160a01b0383166118015760405162461bcd60e51b81526004018080602001828103825260248152602001806125a06024913960400191505060405180910390fd5b6001600160a01b0382166118465760405162461bcd60e51b81526004018080602001828103825260228152602001806124546022913960400191505060405180910390fd5b6001600160a01b03808416600081815260356020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166118ed5760405162461bcd60e51b815260040180806020018281038252602581526020018061257b6025913960400191505060405180910390fd5b6001600160a01b0382166119325760405162461bcd60e51b815260040180806020018281038252602381526020018061240f6023913960400191505060405180910390fd5b61193d838383610c37565b61197a81604051806060016040528060268152602001612476602691396001600160a01b0386166000908152603460205260409020549190611a05565b6001600160a01b0380851660009081526034602052604080822093909355908416815220546119a99082611ae5565b6001600160a01b0380841660008181526034602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008184841115611a945760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611a59578181015183820152602001611a41565b50505050905090810190601f168015611a865780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6001600160a01b038116600081815260996020526040808220805460ff19169055517fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb666929190a250565b600082820183811015611b3f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038216611ba1576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b611bad60008383610c37565b603654611bba9082611ae5565b6036556001600160a01b038216600090815260346020526040902054611be09082611ae5565b6001600160a01b03831660008181526034602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6001600160a01b038216611c7d5760405162461bcd60e51b815260040180806020018281038252602181526020018061255a6021913960400191505060405180910390fd5b611c8982600083610c37565b611cc681604051806060016040528060228152602001612432602291396001600160a01b0385166000908152603460205260409020549190611a05565b6001600160a01b038316600090815260346020526040902055603654611cec9082612071565b6036556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6001600160a01b038116600081815260996020526040808220805460ff19166001179055517f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f69190a250565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611db0306120ce565b15905090565b611dfe6040518060400160405280600b81526020016a23b930b834102a37b5b2b760a91b8152506040518060400160405280600381526020016211d49560ea1b8152506120d4565b611e07826121a0565b611e118282611b46565b611e1a82611d34565b7f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611e856121c2565b6040805160208082019690965280820194909452606084019290925260808301523060a08301527f000000000000000000000000000000000000000000000000000000000000000060c0808401919091528151808403909101815260e0909201905280519101206098555050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611f545760405162461bcd60e51b815260040180806020018281038252602281526020018061249c6022913960400191505060405180910390fd5b8360ff16601b1480611f6957508360ff16601c145b611fa45760405162461bcd60e51b81526004018080602001828103825260228152602001806124ec6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612000573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612068576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6000828211156120c8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b3b151590565b600154600160a81b900460ff16806120ef57506120ef611da5565b806121045750600154600160a01b900460ff16155b61213f5760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612176576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b61217e6121c6565b612188838361227e565b8015610c37576001805460ff60a81b19169055505050565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b4690565b600154600160a81b900460ff16806121e157506121e1611da5565b806121f65750600154600160a01b900460ff16155b6122315760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612268576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b8015610955576001805460ff60a81b1916905550565b600154600160a81b900460ff16806122995750612299611da5565b806122ae5750600154600160a01b900460ff16155b6122e95760405162461bcd60e51b815260040180806020018281038252602e8152602001806124be602e913960400191505060405180910390fd5b600154600160a81b900460ff16158015612320576001805460ff60a01b1960ff60a81b19909116600160a81b1716600160a01b1790555b825161233390603790602086019061236d565b50815161234790603890602085019061236d565b506039805460ff191660121790558015610c37576001805460ff60a81b19169055505050565b828054600181600116156101000203166002900490600052602060002090601f0160209004810192826123a357600085556123e9565b82601f106123bc57805160ff19168380011785556123e9565b828001600101855582156123e9579182015b828111156123e95782518255916020019190600101906123ce565b506123f59291506123f9565b5090565b5b808211156123f557600081556001016123fa56fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c7565496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ff9ed43c1b257716d58111b6358b62039b7d7359bc9f0f142332535a4370cafe64736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken","networkInteractionId":1,"nonce":546,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"217400000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x00f6557a96a5ae41f6adec963655d4755afe277f26c9fe32135cde7765a81f65"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphToken#GraphToken","hash":"0x00f6557a96a5ae41f6adec963655d4755afe277f26c9fe32135cde7765a81f65","networkInteractionId":1,"receipt":{"blockHash":"0x088309bc6623f9e99cfd3785c785e61b0232ea8b254ece414d75a207ef8ce060","blockNumber":82177368,"contractAddress":"0x21Ee267Efe20A7E846964D3f9E28F7e81d72547e","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken","result":{"address":"0x21Ee267Efe20A7E846964D3f9E28F7e81d72547e","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphTokenGateway#GraphTokenGateway","constructorArgs":[],"contractName":"GraphTokenGateway","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"GraphTokenGateway#GraphTokenGateway","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphTokenGateway","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e05161010051610120516101405161222b6101696000398061112f5250806111065250806110dd528061150a5250806110b452508061108b525080611062525080611039525061222b6000f3fe6080604052600436106101405760003560e01c806392eefe9b116100b6578063c4d66de81161006f578063c4d66de814610355578063d2ce7d6514610375578063d685c0b214610388578063d6866ea5146103a8578063f14a4bd5146103bd578063f77c4791146103d257610140565b806392eefe9b146102a05780639ce7abe5146102c0578063a0c76a96146102e0578063a2594d8214610300578063a7e28d4814610320578063c4c0087c1461034057610140565b80634adc698a116101085780634adc698a146101e55780635c975abb146101fa57806369bc8cd41461021c5780636cda37981461023c5780637b3a3c8b1461025e57806391b4ded91461028b57610140565b80630252fec11461014557806316c38b3c1461016757806324a3d622146101875780632e567b36146101b257806348bde20c146101c5575b600080fd5b34801561015157600080fd5b50610165610160366004611b43565b6103e7565b005b34801561017357600080fd5b50610165610182366004611da9565b610474565b34801561019357600080fd5b5061019c61056c565b6040516101a99190611e67565b60405180910390f35b6101656101c0366004611bb4565b61057b565b3480156101d157600080fd5b506101656101e0366004611b43565b6107b3565b3480156101f157600080fd5b5061019c61081f565b34801561020657600080fd5b5061020f61082e565b6040516101a99190611f43565b34801561022857600080fd5b50610165610237366004611b43565b61083c565b34801561024857600080fd5b506102516108b5565b6040516101a991906121a9565b34801561026a57600080fd5b5061027e610279366004611cb4565b6108bb565b6040516101a99190611f4e565b34801561029757600080fd5b506102516108d7565b3480156102ac57600080fd5b506101656102bb366004611b43565b6108dd565b3480156102cc57600080fd5b506101656102db366004611dc9565b6108ee565b3480156102ec57600080fd5b5061027e6102fb366004611c37565b610a44565b34801561030c57600080fd5b5061016561031b366004611b43565b610ac4565b34801561032c57600080fd5b5061019c61033b366004611b43565b610bdf565b34801561034c57600080fd5b5061019c610c0f565b34801561036157600080fd5b50610165610370366004611b43565b610c1e565b61027e610383366004611d25565b610d44565b34801561039457600080fd5b506101656103a3366004611b43565b610fbb565b3480156103b457600080fd5b50610165611034565b3480156103c957600080fd5b5061019c611155565b3480156103de57600080fd5b5061019c611164565b6103ef611173565b6001600160a01b03811661041e5760405162461bcd60e51b815260040161041590612034565b60405180910390fd5b607780546001600160a01b0319166001600160a01b0383161790556040517f43a303848c82a28f94def3043839eaebd654c19fdada874a74fb94d8bf7d343890610469908390611e67565b60405180910390a150565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50516001600160a01b031633148061050257506003546001600160a01b031633145b610553576040805162461bcd60e51b815260206004820152601960248201527f4f6e6c7920476f7665726e6f72206f7220477561726469616e00000000000000604482015290519081900360640190fd5b806105605761056061123d565b610569816112b5565b50565b6003546001600160a01b031681565b600260435414156105d3576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026043556105e0611340565b6076546105f5906001600160a01b0316611391565b6001600160a01b0316336001600160a01b0316146106255760405162461bcd60e51b815260040161041590612172565b6075546001600160a01b038781169116146106525760405162461bcd60e51b81526004016104159061214b565b34156106705760405162461bcd60e51b815260040161041590611fdd565b607554610685906001600160a01b0316610bdf565b6001600160a01b0316638c2a993e85856040518363ffffffff1660e01b81526004016106b2929190611ee2565b600060405180830381600087803b1580156106cc57600080fd5b505af11580156106e0573d6000803e3d6000fd5b505082159150610751905057604051635260769b60e11b81526001600160a01b0385169063a4c0ed369061071e908890879087908790600401611efb565b600060405180830381600087803b15801561073857600080fd5b505af115801561074c573d6000803e3d6000fd5b505050505b836001600160a01b0316856001600160a01b0316876001600160a01b03167fc7f2e9c55c40a50fbc217dfc70cd39a222940dfa62145aa0ca49eb9535d4fcb28660405161079e91906121a9565b60405180910390a45050600160435550505050565b6107bb611173565b6001600160a01b038116610816576040805162461bcd60e51b815260206004820152601960248201527f5061757365477561726469616e206d7573742062652073657400000000000000604482015290519081900360640190fd5b610569816113aa565b6077546001600160a01b031681565b600054610100900460ff1690565b610844611173565b6001600160a01b03811661086a5760405162461bcd60e51b81526004016104159061200c565b607580546001600160a01b0319166001600160a01b0383161790556040517f0b7cf729ac6c387cab57a28d257c6ecac863c24b086353121057083c7bfc79f990610469908390611e67565b60015481565b60606108cd8686866000808888610d44565b9695505050505050565b60025481565b6108e56113fc565b6105698161145b565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561092a57600080fd5b505af115801561093e573d6000803e3d6000fd5b505050506040513d602081101561095457600080fd5b50516001600160a01b031633146109b2576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610a2657600080fd5b505af1158015610a3a573d6000803e3d6000fd5b5050505050505050565b6060632e567b3660e01b86868686600087604051602001610a66929190611f61565b60408051601f1981840301815290829052610a879594939291602401611e7b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905095945050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610b0057600080fd5b505af1158015610b14573d6000803e3d6000fd5b505050506040513d6020811015610b2a57600080fd5b50516001600160a01b03163314610b88576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610bc357600080fd5b505af1158015610bd7573d6000803e3d6000fd5b505050505050565b6075546000906001600160a01b03838116911614610bff57506000610c0a565b610c07611503565b90505b919050565b6076546001600160a01b031681565b610c26611533565b6001600160a01b0316336001600160a01b031614610c81576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b604254610100900460ff1680610c9a5750610c9a611558565b80610ca8575060425460ff16155b610ce35760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015610d0e576042805460ff1961ff0019909116610100171660011790555b610d17826108e5565b6000805461ff001916610100179055610d2e611569565b8015610d40576042805461ff00191690555b5050565b606060026043541415610d9e576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002604355610dab611340565b6075546001600160a01b03898116911614610dd85760405162461bcd60e51b81526004016104159061214b565b85610df55760405162461bcd60e51b815260040161041590611fb0565b3415610e135760405162461bcd60e51b815260040161041590611fdd565b6001600160a01b038716610e395760405162461bcd60e51b81526004016104159061205f565b610e41611a76565b610e4b8484611612565b602083018190526001600160a01b0390911682525115610e7d5760405162461bcd60e51b8152600401610415906120bc565b607554610e92906001600160a01b0316610bdf565b81516040516374f4f54760e01b81526001600160a01b0392909216916374f4f54791610ec2918b90600401611ee2565b600060405180830381600087803b158015610edc57600080fd5b505af1158015610ef0573d6000803e3d6000fd5b505050506000610f3060008360000151607660009054906101000a90046001600160a01b0316610f2b8e87600001518f8f8a60200151610a44565b61168f565b905080896001600160a01b031683600001516001600160a01b03167f3073a74ecb728d10be779fe19a74a1428e20468f5b4d167bf9c73d9067847d738d60008d604051610f7f93929190611ec1565b60405180910390a480604051602001610f9891906121a9565b604051602081830303815290604052925050506001604355979650505050505050565b610fc3611173565b6001600160a01b038116610fe95760405162461bcd60e51b81526004016104159061208c565b607680546001600160a01b0319166001600160a01b0383161790556040517f60d5265d09ed32300af9a69188333d24b405b6f4196f623f3e2b78321181a61590610469908390611e67565b61105d7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110867f000000000000000000000000000000000000000000000000000000000000000061182f565b6110af7f000000000000000000000000000000000000000000000000000000000000000061182f565b6110d87f000000000000000000000000000000000000000000000000000000000000000061182f565b6111017f000000000000000000000000000000000000000000000000000000000000000061182f565b61112a7f000000000000000000000000000000000000000000000000000000000000000061182f565b6111537f000000000000000000000000000000000000000000000000000000000000000061182f565b565b6075546001600160a01b031681565b6004546001600160a01b031681565b6004805460408051634fc07d7560e01b815290516001600160a01b0390921692634fc07d75928282019260209290829003018186803b1580156111b557600080fd5b505afa1580156111c9573d6000803e3d6000fd5b505050506040513d60208110156111df57600080fd5b50516001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b6077546001600160a01b03166112655760405162461bcd60e51b815260040161041590611f85565b6076546001600160a01b031661128d5760405162461bcd60e51b8152600401610415906120f3565b6075546001600160a01b03166111535760405162461bcd60e51b815260040161041590612123565b600060019054906101000a900460ff16151581151514156112d557610569565b6000805461ff0019166101008315158102919091179182905560ff910416156112fd57426002555b6000546040805161010090920460ff1615158252517f8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5916020908290030190a150565b600054610100900460ff1615611153576040805162461bcd60e51b81526020600482015260116024820152705061757365642028636f6e74726163742960781b604482015290519081900360640190fd5b7311110000000000000000000000000000000011110190565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e90600090a35050565b6004546001600160a01b03163314611153576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166114af576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600480546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b600061152e7f0000000000000000000000000000000000000000000000000000000000000000611930565b905090565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000611563306119ca565b15905090565b604254610100900460ff16806115825750611582611558565b80611590575060425460ff16155b6115cb5760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff161580156115f6576042805460ff1961ff0019909116610100171660011790555b6115fe6119d0565b8015610569576042805461ff001916905550565b607754600090606090829082906001600160a01b03163314156116455761163b85870187611b66565b9092509050611682565b33915085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293505050505b90925090505b9250929050565b60008060646001600160a01b031663928c169a8786866040518463ffffffff1660e01b815260040180836001600160a01b0316815260200180602001828103825283818151815260200191508051906020019080838360005b838110156117005781810151838201526020016116e8565b50505050905090810190601f16801561172d5780820380516001836020036101000a031916815260200191505b5093505050506020604051808303818588803b15801561174c57600080fd5b505af1158015611760573d6000803e3d6000fd5b50505050506040513d602081101561177757600080fd5b5051604080516020808252865182820152865193945084936001600160a01b03808a1694908b16937f2b986d32a0536b7e19baa48ab949fec7b903b7fad7730820b20632d100cc3a68938a93919283929083019185019080838360005b838110156117ec5781810151838201526020016117d4565b50505050905090810190601f1680156118195780820380516001836020036101000a031916815260200191505b509250505060405180910390a495945050505050565b6004805460408051637bb20d2f60e11b8152928301849052516000926001600160a01b039092169163f7641a5e916024808301926020929190829003018186803b15801561187c57600080fd5b505afa158015611890573d6000803e3d6000fd5b505050506040513d60208110156118a657600080fd5b50516000838152600560205260409020549091506001600160a01b03808316911614610d405760008281526005602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000818152600560205260408120546001600160a01b031680610c07576004805460408051637bb20d2f60e11b8152928301869052516001600160a01b039091169163f7641a5e916024808301926020929190829003018186803b15801561199757600080fd5b505afa1580156119ab573d6000803e3d6000fd5b505050506040513d60208110156119c157600080fd5b50519392505050565b3b151590565b604254610100900460ff16806119e957506119e9611558565b806119f7575060425460ff16155b611a325760405162461bcd60e51b815260040180806020018281038252602e8152602001806121c8602e913960400191505060405180910390fd5b604254610100900460ff16158015611a5d576042805460ff1961ff0019909116610100171660011790555b60016043558015610569576042805461ff001916905550565b60408051808201909152600081526060602082015290565b60008083601f840112611a9f578182fd5b50813567ffffffffffffffff811115611ab6578182fd5b60208301915083602082850101111561168857600080fd5b600082601f830112611ade578081fd5b813567ffffffffffffffff80821115611af357fe5b604051601f8301601f191681016020018281118282101715611b1157fe5b604052828152848301602001861015611b28578384fd5b82602086016020830137918201602001929092529392505050565b600060208284031215611b54578081fd5b8135611b5f816121b2565b9392505050565b60008060408385031215611b78578081fd5b8235611b83816121b2565b9150602083013567ffffffffffffffff811115611b9e578182fd5b611baa85828601611ace565b9150509250929050565b60008060008060008060a08789031215611bcc578182fd5b8635611bd7816121b2565b95506020870135611be7816121b2565b94506040870135611bf7816121b2565b935060608701359250608087013567ffffffffffffffff811115611c19578283fd5b611c2589828a01611a8e565b979a9699509497509295939492505050565b600080600080600060a08688031215611c4e578081fd5b8535611c59816121b2565b94506020860135611c69816121b2565b93506040860135611c79816121b2565b925060608601359150608086013567ffffffffffffffff811115611c9b578182fd5b611ca788828901611ace565b9150509295509295909350565b600080600080600060808688031215611ccb578081fd5b8535611cd6816121b2565b94506020860135611ce6816121b2565b935060408601359250606086013567ffffffffffffffff811115611d08578182fd5b611d1488828901611a8e565b969995985093965092949392505050565b600080600080600080600060c0888a031215611d3f578081fd5b8735611d4a816121b2565b96506020880135611d5a816121b2565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115611d8a578182fd5b611d968a828b01611a8e565b989b979a50959850939692959293505050565b600060208284031215611dba578081fd5b81358015158114611b5f578182fd5b600080600060408486031215611ddd578283fd5b8335611de8816121b2565b9250602084013567ffffffffffffffff811115611e03578283fd5b611e0f86828701611a8e565b9497909650939450505050565b60008151808452815b81811015611e4157602081850181015186830182015201611e25565b81811115611e525782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611eb690830184611e1c565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0385168152602081018490526060604082018190528101829052600082846080840137818301608090810191909152601f909201601f191601019392505050565b901515815260200190565b600060208252611b5f6020830184611e1c565b600060ff8416825260406020830152611f7d6040830184611e1c565b949350505050565b602080825260119082015270130c97d493d555115497d393d517d4d155607a1b604082015260600190565b6020808252601390820152721253959053125117d6915493d7d05353d55395606a1b604082015260600190565b602080825260159082015274494e56414c49445f4e4f4e5a45524f5f56414c554560581b604082015260600190565b6020808252600e908201526d1253959053125117d30c57d1d49560921b604082015260600190565b60208082526011908201527024a72b20a624a22fa6192fa927aaaa22a960791b604082015260600190565b60208082526013908201527224a72b20a624a22fa222a9aa24a720aa24a7a760691b604082015260600190565b6020808252601690820152751253959053125117d30c57d0d3d5539511549410549560521b604082015260600190565b6020808252601a908201527f43414c4c5f484f4f4b5f444154415f4e4f545f414c4c4f574544000000000000604082015260600190565b602080825260169082015275130c57d0d3d5539511549410549517d393d517d4d15560521b604082015260600190565b6020808252600e908201526d130c57d1d49517d393d517d4d15560921b604082015260600190565b6020808252600d908201526c1513d2d15397d393d517d1d495609a1b604082015260600190565b60208082526018908201527f4f4e4c595f434f554e544552504152545f474154455741590000000000000000604082015260600190565b90815260200190565b6001600160a01b038116811461056957600080fdfe496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564a2646970667358221220c46e838e84462780e008baa7cf28f077541133c7ed1702897fcb4896090a74b664736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphTokenGateway","networkInteractionId":1,"nonce":547,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"210780000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x6aa66e37bdd03eb8836ed26d2a842176829960acf04a874f046cab24afef832e"},"type":"TRANSACTION_SEND"} +{"artifactId":"HorizonProxies#OZProxyDummy_GraphPayments","constructorArgs":[],"contractName":"Dummy","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonProxies#OZProxyDummy_GraphPayments","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","networkInteractionId":1,"nonce":548,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"205960000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x2eb7594c75c7ff384ca16ebc397a76e273105b68085c08a6a2c387d46daca53f"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","hash":"0x2eb7594c75c7ff384ca16ebc397a76e273105b68085c08a6a2c387d46daca53f","networkInteractionId":1,"receipt":{"blockHash":"0xf0aa59865bc193adaf0dedbe871db594d0bcbf26d6d8f11fd4d56ed6b1e2cfe2","blockNumber":82177398,"contractAddress":"0x60eE16fc2C4729343C7B3Ab9B322b2C6CcfbC681","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#OZProxyDummy_GraphPayments","result":{"address":"0x60eE16fc2C4729343C7B3Ab9B322b2C6CcfbC681","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","constructorArgs":[],"contractName":"Dummy","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","networkInteractionId":1,"nonce":549,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"207060000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x9c845a67136d4e880d16a43ed03ef667077148a3b543613c7c4c0db6808ca10b"},"type":"TRANSACTION_SEND"} +{"artifactId":"HorizonStakingExtension#ExponentialRebates","constructorArgs":[],"contractName":"ExponentialRebates","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonStakingExtension#ExponentialRebates","futureType":"LIBRARY_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStakingExtension#ExponentialRebates","networkInteraction":{"data":"0x610c2d610039600b82828239805160001a607314602c57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100355760003560e01c806349484d811461003a575b600080fd5b61004d610048366004610a66565b61005f565b60405190815260200160405180910390f35b6000806100728660030b8660030b61011c565b9050806000036100855787915050610112565b87600003610097576000915050610112565b60006100a98560030b8560030b61011c565b905060006100b8828a8c61013c565b9050600f6100c582610153565b13156100d657899350505050610112565b60006100ff6001607f1b6100fa866100f56100f087610ae2565b610169565b610882565b61089d565b905061010b818c6108d4565b9450505050505b9695505050505050565b600061013561012f846001607f1b610920565b83610988565b9392505050565b600061014b61012f8585610920565b949350505050565b60006101636001607f1b83610b14565b92915050565b60006101796101ff607c1b610ae2565b82121561018857506000919050565b8160000361019b57506001607f1b919050565b60008213156101c55760405162461bcd60e51b81526004016101bc90610b42565b60405180910390fd5b6000806101d66001607c1b85610b69565b91508190506001607f1b6101ea8280610b7d565b6101f49190610b14565b9050610208816710e1b3be415a0000610b7d565b6102129084610bad565b92506001607f1b6102238383610b7d565b61022d9190610b14565b9050610241816705a0913f6b1e0000610b7d565b61024b9084610bad565b92506001607f1b61025c8383610b7d565b6102669190610b14565b905061027a81670168244fdac78000610b7d565b6102849084610bad565b92506001607f1b6102958383610b7d565b61029f9190610b14565b90506102b281664807432bc18000610b7d565b6102bc9084610bad565b92506001607f1b6102cd8383610b7d565b6102d79190610b14565b90506102ea81660c0135dca04000610b7d565b6102f49084610bad565b92506001607f1b6103058383610b7d565b61030f9190610b14565b9050610322816601b707b1cdc000610b7d565b61032c9084610bad565b92506001607f1b61033d8383610b7d565b6103479190610b14565b9050610359816536e0f639b800610b7d565b6103639084610bad565b92506001607f1b6103748383610b7d565b61037e9190610b14565b905061039081650618fee9f800610b7d565b61039a9084610bad565b92506001607f1b6103ab8383610b7d565b6103b59190610b14565b90506103c681649c197dcc00610b7d565b6103d09084610bad565b92506001607f1b6103e18383610b7d565b6103eb9190610b14565b90506103fc81640e30dce400610b7d565b6104069084610bad565b92506001607f1b6104178383610b7d565b6104219190610b14565b90506104328164012ebd1300610b7d565b61043c9084610bad565b92506001607f1b61044d8383610b7d565b6104579190610b14565b9050610467816317499f00610b7d565b6104719084610bad565b92506001607f1b6104828383610b7d565b61048c9190610b14565b905061049c816301a9d480610b7d565b6104a69084610bad565b92506001607f1b6104b78383610b7d565b6104c19190610b14565b90506104d081621c6380610b7d565b6104da9084610bad565b92506001607f1b6104eb8383610b7d565b6104f59190610b14565b9050610504816201c638610b7d565b61050e9084610bad565b92506001607f1b61051f8383610b7d565b6105299190610b14565b905061053781611ab8610b7d565b6105419084610bad565b92506001607f1b6105528383610b7d565b61055c9190610b14565b905061056a8161017c610b7d565b6105749084610bad565b92506001607f1b6105858383610b7d565b61058f9190610b14565b905061059c816014610b7d565b6105a69084610bad565b92506001607f1b6105b78383610b7d565b6105c19190610b14565b90506105ce816001610b7d565b6105d89084610bad565b92506001607f1b826105f26721c3677c82b4000086610b14565b6105fc9190610bad565b6106069190610bad565b925061061184610ae2565b9350600160841b841615610657577243cbaf42a000812488fc5c220ad7b97bf6e99e61064a6cf1aaddd7742e56d32fb9f9974485610b7d565b6106549190610b14565b92505b600160831b84161561069c577105d27a9f51c31b7c2f8038212a057477999161068f6e0afe10820813d65dfe6a33c07f738f85610b7d565b6106999190610b14565b92505b600160821b8416156106e157701b4c902e273a58678d6d3bfdb93db96d026106d46f02582ab704279e8efd15e0265855c47a85610b7d565b6106de9190610b14565b92505b600160811b841615610726577003b1cc971a9bb5b9867477440d6d1577506107196f1152aaa3bf81cb9fdb76eae12d02957185610b7d565b6107239190610b14565b92505b600160801b84161561076b5770015bf0a8b1457695355fb8ac404e7a79e361075e6f2f16ac6c59de6f8d5d6f63c1482a7c8685610b7d565b6107689190610b14565b92505b6001607f1b8416156107af576fd3094c70f034de4b96ff7d5b6f99fcd86107a26f4da2cbf1be5827f9eb3ad1aa9866ebb385610b7d565b6107ac9190610b14565b92505b6001607e1b8416156107f3576fa45af1e1f40c333b3de1db4dd55f29a76107e66f63afbe7ab2082ba1a0ae5e4eb1b479dc85610b7d565b6107f09190610b14565b92505b6001607d1b841615610837576f910b022db7ae67ce76b441c27035c6a161082a6f70f5a893b608861e1f58934f97aea57d85610b7d565b6108349190610b14565b92505b6001607c1b84161561087b576f88415abbe9a76bead8d00cf112e4d4a861086e6f783eafef1c0a8f3978c7f81824d62ebf85610b7d565b6108789190610b14565b92505b5050919050565b60006001607f1b6108938484610920565b6101359190610b14565b6000600160ff1b82036108c25760405162461bcd60e51b81526004016101bc90610b42565b610135836108cf84610ae2565b6109f2565b6000808212156108f65760405162461bcd60e51b81526004016101bc90610b42565b60006109028484610920565b905060008113610916576000915050610163565b607f1c9392505050565b600082158061092d575081155b1561093a57506000610163565b508181028183828161094e5761094e610afe565b0514158061096b57508282828161096757610967610afe565b0514155b156101635760405162461bcd60e51b81526004016101bc90610bd5565b6000816000036109aa5760405162461bcd60e51b81526004016101bc90610bd5565b600160ff1b831480156109be575081600019145b156109db5760405162461bcd60e51b81526004016101bc90610bd5565b8183816109ea576109ea610afe565b059392505050565b818101600083128015610a055750600082125b8015610a1057508281135b8061096b5750600083138015610a265750600082135b801561096b5750828112156101635760405162461bcd60e51b81526004016101bc90610bd5565b803563ffffffff81168114610a6157600080fd5b919050565b60008060008060008060c08789031215610a7f57600080fd5b8635955060208701359450610a9660408801610a4d565b9350610aa460608801610a4d565b9250610ab260808801610a4d565b9150610ac060a08801610a4d565b90509295509295509295565b634e487b7160e01b600052601160045260246000fd5b6000600160ff1b8201610af757610af7610acc565b5060000390565b634e487b7160e01b600052601260045260246000fd5b600082610b2357610b23610afe565b600160ff1b821460001984141615610b3d57610b3d610acc565b500590565b6020808252600d908201526c6f75742d6f662d626f756e647360981b604082015260600190565b600082610b7857610b78610afe565b500790565b80820260008212600160ff1b84141615610b9957610b99610acc565b818105831482151761016357610163610acc565b8082018281126000831280158216821582161715610bcd57610bcd610acc565b505092915050565b6020808252600890820152676f766572666c6f7760c01b60408201526060019056fea26469706673582212201cac81319f1bc19d15bc3a02519b03e3559a9cf147525a96caa8cb800f74da2864736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStakingExtension#ExponentialRebates","networkInteractionId":1,"nonce":550,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"215140000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xbb35e8b121d2a979dff148e7e9bad2860880ca8532c9eeea02b3dc7b98c9152c"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonStakingExtension#ExponentialRebates","hash":"0xbb35e8b121d2a979dff148e7e9bad2860880ca8532c9eeea02b3dc7b98c9152c","networkInteractionId":1,"receipt":{"blockHash":"0x55cb8a0a9b4deecfb10db48511b1c625831831e917eb5dc2aca575e508baa5ae","blockNumber":82177430,"contractAddress":"0x5Ab8e4eDb2d068C9c1ab9c96bfb3abCAb96e1534","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStakingExtension#ExponentialRebates","result":{"address":"0x5Ab8e4eDb2d068C9c1ab9c96bfb3abCAb96e1534","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"RewardsManager#RewardsManager","constructorArgs":[],"contractName":"RewardsManager","dependencies":[],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"RewardsManager#RewardsManager","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager","networkInteraction":{"data":"0x6101606040527fe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f6080527fc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f6706360a0527f966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c5318076160c0527f1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d16703460e0527f45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247610100527fd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0610120527f39605a6c26a173774ca666c67ef70cf491880e5d3d6d0ca66ec0a31034f15ea36101405234801561011057600080fd5b5060805160a05160c05160e051610100516101205161014051611eb861017360003980610fe1525080610fb8525080610f8f528061194f525080610f6652806116d2525080610f3d525080610f14525080610eeb52806115165250611eb86000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c806392eefe9b1161010f578063c8a5f81e116100a2578063e284f84811610071578063e284f848146103cb578063e820e284146103d3578063eeac3e0e146103f3578063f77c479114610406576101e5565b8063c8a5f81e14610395578063d6866ea5146103a8578063db750926146103b0578063e242cf1e146103c3576101e5565b8063a8cc0ee2116100de578063a8cc0ee21461036a578063b951acd714610372578063c4d66de81461037a578063c7d1117d1461038d576101e5565b806392eefe9b1461031e57806393a90a1e146103315780639ce7abe514610344578063a2594d8214610357576101e5565b806326058249116101875780636c080f18116101565780636c080f18146102da578063702a280e146102e257806379ee54f7146103035780639006ce8b14610316576101e5565b806326058249146102895780634986594f146102915780634bbfc1c5146102b45780635c6cbd59146102c7576101e5565b80631324a506116101c35780631324a5061461023057806316a84ab2146102435780631d1c2fec146102635780631debaded14610276576101e5565b806305bb8c6b146101ea5780630903c094146102085780631156bdc11461021d575b600080fd5b6101f261040e565b6040516101ff9190611c75565b60405180910390f35b61021b610216366004611a54565b61041d565b005b61021b61022b366004611b75565b610479565b61021b61023e366004611b8d565b61048d565b610256610251366004611b75565b6104ce565b6040516101ff9190611cad565b610256610271366004611b75565b6104e0565b61021b610284366004611ad4565b610519565b6101f26105b8565b6102a461029f366004611b75565b6105c7565b6040516101ff9493929190611e23565b61021b6102c2366004611b75565b6105ee565b6102566102d5366004611b75565b6106ea565b6102566107db565b6102f56102f0366004611b75565b6107e1565b6040516101ff929190611e15565b610256610311366004611a54565b610955565b610256610b3d565b61021b61032c366004611a54565b610b43565b61021b61033f366004611a54565b610b54565b61021b610352366004611bbc565b610bae565b61021b610365366004611a54565b610d04565b610256610e1f565b610256610e3b565b61021b610388366004611a54565b610e41565b610256610ead565b6102566103a3366004611c54565b610ec5565b61021b610ee6565b6102566103be366004611a54565b611007565b610256611232565b610256611238565b6103e66103e1366004611b75565b611347565b6040516101ff9190611ca2565b610256610401366004611b75565b61135b565b6101f261138d565b600f546001600160a01b031681565b61042561139c565b600f80546001600160a01b0319166001600160a01b0383161790556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611cb6565b60405180910390a150565b61048161139c565b61048a81611470565b50565b600f546001600160a01b031633146104c05760405162461bcd60e51b81526004016104b790611ced565b60405180910390fd5b6104ca82826114ac565b5050565b60116020526000908152604090205481565b60006104ea610ead565b506000828152601060205260409020610502836106ea565b808255600d5460029092019190915590505b919050565b600f546001600160a01b031633146105435760405162461bcd60e51b81526004016104b790611ced565b8281146105625760405162461bcd60e51b81526004016104b790611dcc565b60005b838110156105b1576105a985858381811061057c57fe5b9050602002013584848481811061058f57fe5b90506020020160208101906105a49190611b3d565b6114ac565b600101610565565b5050505050565b6015546001600160a01b031681565b60106020526000908152604090208054600182015460028301546003909301549192909184565b600f546001600160a01b031633148061069b575060008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b15801561064e57600080fd5b505afa158015610662573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106869190611a70565b6001600160a01b0316336001600160a01b0316145b6106b75760405162461bcd60e51b81526004016104b790611ded565b60128190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d3c565b60008181526010602052604081208161070161150f565b6001600160a01b03166346e855da856040518263ffffffff1660e01b815260040161072c9190611cad565b60206040518083038186803b15801561074457600080fd5b505afa158015610758573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061077c9190611c3c565b905060006012548210156107915760006107c3565b6107c3670de0b6b3a76400006107bd846107b787600201546107b1610e1f565b9061153a565b90611597565b906115f0565b83549091506107d29082611657565b95945050505050565b60145481565b60008181526010602052604081208190816107fb856106ea565b9050600061080d8284600101546116b1565b905060008060405180604001604052806108256116cb565b6001600160a01b03908116825260155416602090910152905060005b600281101561090457600082826002811061085857fe5b60200201516001600160a01b0316146108fc5781816002811061087757fe5b60200201516001600160a01b031663e2e1e8e98a6040518263ffffffff1660e01b81526004016108a79190611cad565b60206040518083038186803b1580156108bf57600080fd5b505afa1580156108d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f79190611c3c565b830192505b600101610841565b508161091b57600084965096505050505050610950565b6000610933836107bd86670de0b6b3a7640000611597565b60038701549091506109459082611657565b975093955050505050505b915091565b60008060009050600060405180604001604052806109716116cb565b6001600160a01b03908116825260155416602090910152905060005b6002811015610a685760008282600281106109a457fe5b60200201516001600160a01b031614610a60578181600281106109c357fe5b60200201516001600160a01b0316636a3ca383866040518263ffffffff1660e01b81526004016109f39190611c75565b60206040518083038186803b158015610a0b57600080fd5b505afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a439190611b59565b15610a6057818160028110610a5457fe5b60200201519250610a68565b60010161098d565b506001600160a01b038216610a8257600092505050610514565b600080600080856001600160a01b03166355c85269896040518263ffffffff1660e01b8152600401610ab49190611c75565b60a06040518083038186803b158015610acc57600080fd5b505afa158015610ae0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b049190611a8c565b9450945094509450506000610b18856107e1565b509050610b30610b298585846116f6565b8390611657565b9998505050505050505050565b600e5481565b610b4b61171b565b61048a8161177a565b610b5c61139c565b601580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede90600090a35050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bea57600080fd5b505af1158015610bfe573d6000803e3d6000fd5b505050506040513d6020811015610c1457600080fd5b50516001600160a01b03163314610c72576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b60405163623faf6160e01b8152602060048201908152602482018490526001600160a01b0386169163623faf619186918691908190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b158015610ce657600080fd5b505af1158015610cfa573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610d4057600080fd5b505af1158015610d54573d6000803e3d6000fd5b505050506040513d6020811015610d6a57600080fd5b50516001600160a01b03163314610dc8576040805162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015290519081900360640190fd5b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610e0357600080fd5b505af1158015610e17573d6000803e3d6000fd5b505050505050565b6000610e35610e2c611238565b600d5490611657565b90505b90565b60125481565b610e49611822565b6001600160a01b0316336001600160a01b031614610ea4576040805162461bcd60e51b815260206004820152601360248201527227b7363c9034b6b83632b6b2b73a30ba34b7b760691b604482015290519081900360640190fd5b61048a81610b4b565b6000610eb7610e1f565b600d81905543600e55905090565b6000610edd670de0b6b3a76400006107bd8486611597565b90505b92915050565b610f0f7f0000000000000000000000000000000000000000000000000000000000000000611847565b610f387f0000000000000000000000000000000000000000000000000000000000000000611847565b610f617f0000000000000000000000000000000000000000000000000000000000000000611847565b610f8a7f0000000000000000000000000000000000000000000000000000000000000000611847565b610fb37f0000000000000000000000000000000000000000000000000000000000000000611847565b610fdc7f0000000000000000000000000000000000000000000000000000000000000000611847565b6110057f0000000000000000000000000000000000000000000000000000000000000000611847565b565b6000336110126116cb565b6001600160a01b0316816001600160a01b0316148061103e57506015546001600160a01b038281169116145b61105a5760405162461bcd60e51b81526004016104b790611d95565b6000806000806000856001600160a01b03166355c85269896040518263ffffffff1660e01b815260040161108e9190611c75565b60a06040518083038186803b1580156110a657600080fd5b505afa1580156110ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110de9190611a8c565b9450945094509450945060006110f38561135b565b90506110fe85611347565b1561115357886001600160a01b0316866001600160a01b03167f9b1323a10f3955b1c9c054ffbda78edfdf49998aaf37f61d9f84776b59ac804360405160405180910390a36000975050505050505050610514565b600061116a6111638686856116f6565b8490611657565b905080156111da5761117a611948565b6001600160a01b03166340c10f1989836040518363ffffffff1660e01b81526004016111a7929190611c89565b600060405180830381600087803b1580156111c157600080fd5b505af11580156111d5573d6000803e3d6000fd5b505050505b896001600160a01b0316876001600160a01b03167fbf5617ec135b48259c44e1ae312a03606f36e174082ef2e87042b86ceebace648360405161121d9190611cad565b60405180910390a39998505050505050505050565b600d5481565b600080611250600e544361153a90919063ffffffff16565b905080611261576000915050610e38565b601454611272576000915050610e38565b600061127c611948565b90506000816001600160a01b03166370a0823161129761150f565b6040518263ffffffff1660e01b81526004016112b39190611c75565b60206040518083038186803b1580156112cb57600080fd5b505afa1580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190611c3c565b9050806113165760009350505050610e38565b6014546000906113269085611597565b905061133e826107bd83670de0b6b3a7640000611597565b94505050505090565b600090815260116020526040902054151590565b60008181526010602052604081208180611374856107e1565b6003850182905560019094019390935550909392505050565b6000546001600160a01b031681565b60008054906101000a90046001600160a01b03166001600160a01b0316634fc07d756040518163ffffffff1660e01b815260040160206040518083038186803b1580156113e857600080fd5b505afa1580156113fc573d6000803e3d6000fd5b505050506040513d602081101561141257600080fd5b50516001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601860248201527f4f6e6c7920436f6e74726f6c6c657220676f7665726e6f720000000000000000604482015290519081900360640190fd5b611478610ead565b5060148190556040517f96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c9061046e90611d6b565b6000816114ba5760006114bc565b435b600084815260116020526040908190208290555190915083907fe016102b339c3889f4967b491f3381f2c352c8fe3d4f880007807d45b124065a90611502908490611cad565b60405180910390a2505050565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600082821115611591576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6000826115a657506000610ee0565b828202828482816115b357fe5b0414610edd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e626021913960400191505060405180910390fd5b6000808211611646576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161164f57fe5b049392505050565b600082820183811015610edd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183116116c1576000610edd565b610edd838361153a565b6000610e357f000000000000000000000000000000000000000000000000000000000000000061196f565b600080611703838561153a565b90506107d2670de0b6b3a76400006107bd8388611597565b6000546001600160a01b03163314611005576040805162461bcd60e51b815260206004820152601960248201527f43616c6c6572206d75737420626520436f6e74726f6c6c657200000000000000604482015290519081900360640190fd5b6001600160a01b0381166117ce576040805162461bcd60e51b815260206004820152601660248201527510dbdb9d1c9bdb1b195c881b5d5cdd081899481cd95d60521b604482015290519081900360640190fd5b600080546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f709181900360200190a150565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6000805460408051637bb20d2f60e11b81526004810185905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b15801561189457600080fd5b505afa1580156118a8573d6000803e3d6000fd5b505050506040513d60208110156118be57600080fd5b50516000838152600160205260409020549091506001600160a01b038083169116146104ca5760008281526001602090815260409182902080546001600160a01b0319166001600160a01b0385169081179091558251908152915184927fd0e7a942b1fc38c411c4f53d153ba14fd24542a6a35ebacd9b6afca1a154e20692908290030190a25050565b6000610e357f00000000000000000000000000000000000000000000000000000000000000005b6000818152600160205260408120546001600160a01b031680610ee05760005460408051637bb20d2f60e11b81526004810186905290516001600160a01b039092169163f7641a5e91602480820192602092909190829003018186803b1580156119d857600080fd5b505afa1580156119ec573d6000803e3d6000fd5b505050506040513d6020811015611a0257600080fd5b50519392505050565b60008083601f840112611a1c578182fd5b50813567ffffffffffffffff811115611a33578182fd5b6020830191508360208083028501011115611a4d57600080fd5b9250929050565b600060208284031215611a65578081fd5b8135610edd81611e3e565b600060208284031215611a81578081fd5b8151610edd81611e3e565b600080600080600060a08688031215611aa3578081fd5b8551611aae81611e3e565b602087015160408801516060890151608090990151929a91995097965090945092505050565b60008060008060408587031215611ae9578384fd5b843567ffffffffffffffff80821115611b00578586fd5b611b0c88838901611a0b565b90965094506020870135915080821115611b24578384fd5b50611b3187828801611a0b565b95989497509550505050565b600060208284031215611b4e578081fd5b8135610edd81611e53565b600060208284031215611b6a578081fd5b8151610edd81611e53565b600060208284031215611b86578081fd5b5035919050565b60008060408385031215611b9f578182fd5b823591506020830135611bb181611e53565b809150509250929050565b600080600060408486031215611bd0578283fd5b8335611bdb81611e3e565b9250602084013567ffffffffffffffff80821115611bf7578384fd5b818601915086601f830112611c0a578384fd5b813581811115611c18578485fd5b876020828501011115611c29578485fd5b6020830194508093505050509250925092565b600060208284031215611c4d578081fd5b5051919050565b60008060408385031215611c66578182fd5b50508035926020909101359150565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b90815260200190565b6020808252601a908201527f7375626772617068417661696c6162696c6974794f7261636c65000000000000604082015260600190565b6020808252602f908201527f43616c6c6572206d75737420626520746865207375626772617068206176616960408201526e6c6162696c697479206f7261636c6560881b606082015260800190565b6020808252601590820152741b5a5b9a5b5d5b54dd5899dc985c1a14da59db985b605a1b604082015260600190565b60208082526010908201526f69737375616e6365506572426c6f636b60801b604082015260600190565b6020808252601f908201527f43616c6c6572206d757374206265206120726577617264732069737375657200604082015260600190565b602080825260079082015266042d8cadccee8d60cb1b604082015260600190565b6020808252600e908201526d139bdd08185d5d1a1bdc9a5e995960921b604082015260600190565b918252602082015260400190565b93845260208401929092526040830152606082015260800190565b6001600160a01b038116811461048a57600080fd5b801515811461048a57600080fdfe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122065ddb3a88a231d6b2a7b9fa381d5dcb967f78c91305d391f4715ef7d2c04ab4764736f6c63430007060033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager","networkInteractionId":1,"nonce":551,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"221200000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xdb2ae2bd7ac518f58197eb2cb834add2982f44ec501652d7f91d14d2eb81b8c1"},"type":"TRANSACTION_SEND"} +{"futureId":"RewardsManager#RewardsManager","hash":"0xdb2ae2bd7ac518f58197eb2cb834add2982f44ec501652d7f91d14d2eb81b8c1","networkInteractionId":1,"receipt":{"blockHash":"0xac102f4a39375b63fbd580c45c6f05f8b6e2dcdbf1a6da09221688f7ba352b1a","blockNumber":82177446,"contractAddress":"0xE7ed8F3e83a10a74CBfaDdC7596CBb79c4eccA17","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager","result":{"address":"0xE7ed8F3e83a10a74CBfaDdC7596CBb79c4eccA17","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"Controller#Controller","hash":"0x22f6e912acc9d7888fadcb3b37c4989b24c418547984408f34feccaad11edaab","networkInteractionId":1,"receipt":{"blockHash":"0xa996896b33b1bca181707ccde90c8a26fbc03834c56ac7cf50750e55d2df256f","blockNumber":82177294,"contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000000000000000000000000000000000000000000001","logIndex":0,"topics":["0x8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Controller#Controller","result":{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphTokenGateway#GraphTokenGateway","hash":"0x6aa66e37bdd03eb8836ed26d2a842176829960acf04a874f046cab24afef832e","networkInteractionId":1,"receipt":{"blockHash":"0x93aaf290de7cae94b0fc57e22f469dffbd123951fed875ea89980819f2ed1164","blockNumber":82177383,"contractAddress":"0x2f3f6fbAD807800da2d1ABC9c949c45Bc1C81541","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphTokenGateway","result":{"address":"0x2f3f6fbAD807800da2d1ABC9c949c45Bc1C81541","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","hash":"0x9c845a67136d4e880d16a43ed03ef667077148a3b543613c7c4c0db6808ca10b","networkInteractionId":1,"receipt":{"blockHash":"0xa8e51d3cec86d0a8e35e739cafa1b01be1f42ad1766275f6ccba608ab1bbfde5","blockNumber":82177414,"contractAddress":"0xF39FD65373870fcb5868F7458d8d84485E5Bf890","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#OZProxyDummy_PaymentsEscrow","result":{"address":"0xF39FD65373870fcb5868F7458d8d84485E5Bf890","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x95cED938F7991cd0dFcb48F0a06a40FA1aF46EBC"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setPauseGuardian","futureId":"Controller#Controller.setPauseGuardian","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Controller#Controller.setPauseGuardian","networkInteraction":{"data":"0x48bde20c00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Controller#Controller.setPauseGuardian","networkInteractionId":1,"nonce":552,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"222360000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x926847427742ab0047f7056be7cae6a83e0f6fc537fb430bc50cdc719059f776"},"type":"TRANSACTION_SEND"} +{"futureId":"Controller#Controller.setPauseGuardian","hash":"0x926847427742ab0047f7056be7cae6a83e0f6fc537fb430bc50cdc719059f776","networkInteractionId":1,"receipt":{"blockHash":"0xb0f86a559682a45f56cb41041d8f932d3cdc905196d94ffe5407c5154c8d51c1","blockNumber":82177476,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x","logIndex":1,"topics":["0x0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Controller#Controller.setPauseGuardian","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"transferOwnership","futureId":"Controller#Controller.transferOwnership","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Controller#Controller.transferOwnership","networkInteraction":{"data":"0xf2fde38b000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Controller#Controller.transferOwnership","networkInteractionId":1,"nonce":553,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"217900000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x8973c2ac20958068d8292af8587c979c3d504a55fb0165f835cac502918824ed"},"type":"TRANSACTION_SEND"} +{"futureId":"Controller#Controller.transferOwnership","hash":"0x8973c2ac20958068d8292af8587c979c3d504a55fb0165f835cac502918824ed","networkInteractionId":1,"receipt":{"blockHash":"0xd2308faec84b43992fc7ac43c75929ea587f9ed63dca3357d2685e11ec8f0c62","blockNumber":82177492,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x","logIndex":0,"topics":["0x76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Controller#Controller.transferOwnership","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"transferOwnership","futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","networkInteraction":{"data":"0xf2fde38b000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","networkInteractionId":1,"nonce":554,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"211820000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x94ba70c3305da1c2850e0fd0482ca86d033f91a6f82272a3fa8d7c03b1a19702"},"type":"TRANSACTION_SEND"} +{"args":["0xade6b8eb69a49b56929c1d4f4b428d791861db6f"],"artifactId":"GraphToken#GraphToken","dependencies":["GraphToken#GraphToken"],"functionName":"initialize","futureId":"GraphToken#encodeFunctionCall(GraphToken#GraphToken.initialize)","result":"0xc4d66de8000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","constructorArgs":["0x60eE16fc2C4729343C7B3Ab9B322b2C6CcfbC681","0xade6b8eb69a49b56929c1d4f4b428d791861db6f","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["HorizonProxies#OZProxyDummy_GraphPayments"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","networkInteraction":{"data":"0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610300000000000000000000000060ee16fc2c4729343c7b3ab9b322b2c6ccfbc681000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","networkInteractionId":1,"nonce":555,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"203040000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xab7001383d7cf18ec79633ba203778308bfe93999fcf5c33f100ea1eb728ffaa"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","hash":"0xab7001383d7cf18ec79633ba203778308bfe93999fcf5c33f100ea1eb728ffaa","networkInteractionId":1,"receipt":{"blockHash":"0x72df9ece6fcad9f332fc3a794990a9932c1e00ccf422e6d319961366c0383495","blockNumber":82177523,"contractAddress":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","logs":[{"address":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","data":"0x","logIndex":3,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x00000000000000000000000060ee16fc2c4729343c7b3ab9b322b2c6ccfbc681"]},{"address":"0xbb29b876AA2faCEb3af83d768CB03dd3BFF03f5e","data":"0x","logIndex":4,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f"]},{"address":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","data":"0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000bb29b876aa2faceb3af83d768cb03dd3bff03f5e","logIndex":5,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","result":{"address":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","constructorArgs":["0xF39FD65373870fcb5868F7458d8d84485E5Bf890","0xade6b8eb69a49b56929c1d4f4b428d791861db6f","0x"],"contractName":"TransparentUpgradeableProxy","dependencies":["HorizonProxies#OZProxyDummy_PaymentsEscrow"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","networkInteraction":{"data":"0x60a060405260405162000eb138038062000eb18339810160408190526200002691620003cd565b82816200003482826200009c565b505081604051620000459062000366565b6001600160a01b039091168152602001604051809103906000f08015801562000072573d6000803e3d6000fd5b506001600160a01b0316608052620000936200008d60805190565b62000102565b505050620004cb565b620000a78262000174565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620000f457620000ef8282620001f4565b505050565b620000fe62000271565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200014460008051602062000e91833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a1620001718162000293565b50565b806001600160a01b03163b600003620001b057604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002139190620004ad565b600060405180830381855af49150503d806000811462000250576040519150601f19603f3d011682016040523d82523d6000602084013e62000255565b606091505b50909250905062000268858383620002d6565b95945050505050565b3415620002915760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002bf57604051633173bdd160e11b815260006004820152602401620001a7565b8060008051602062000e91833981519152620001d3565b606082620002ef57620002e9826200033c565b62000335565b81511580156200030757506001600160a01b0384163b155b156200033257604051639996b31560e01b81526001600160a01b0385166004820152602401620001a7565b50805b9392505050565b8051156200034d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b610524806200096d83390190565b80516001600160a01b03811681146200038c57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003c4578181015183820152602001620003aa565b50506000910152565b600080600060608486031215620003e357600080fd5b620003ee8462000374565b9250620003fe6020850162000374565b60408501519092506001600160401b03808211156200041c57600080fd5b818601915086601f8301126200043157600080fd5b81518181111562000446576200044662000391565b604051601f8201601f19908116603f0116810190838211818310171562000471576200047162000391565b816040528281528960208487010111156200048b57600080fd5b6200049e836020830160208801620003a7565b80955050505050509250925092565b60008251620004c1818460208701620003a7565b9190910192915050565b608051610487620004e66000396000601001526104876000f3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361007b576000356001600160e01b03191663278f794360e11b14610071576040516334ad5dbb60e21b815260040160405180910390fd5b610079610083565b565b6100796100b2565b6000806100933660048184610312565b8101906100a09190610352565b915091506100ae82826100c2565b5050565b6100796100bd61011d565b610155565b6100cb82610179565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a28051156101155761011082826101f5565b505050565b6100ae61026b565b60006101507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e808015610174573d6000f35b3d6000fd5b806001600160a01b03163b6000036101b457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102129190610422565b600060405180830381855af49150503d806000811461024d576040519150601f19603f3d011682016040523d82523d6000602084013e610252565b606091505b509150915061026285838361028a565b95945050505050565b34156100795760405163b398979f60e01b815260040160405180910390fd5b60608261029f5761029a826102e9565b6102e2565b81511580156102b657506001600160a01b0384163b155b156102df57604051639996b31560e01b81526001600160a01b03851660048201526024016101ab565b50805b9392505050565b8051156102f95780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561032257600080fd5b8386111561032f57600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561036557600080fd5b82356001600160a01b038116811461037c57600080fd5b9150602083013567ffffffffffffffff8082111561039957600080fd5b818501915085601f8301126103ad57600080fd5b8135818111156103bf576103bf61033c565b604051601f8201601f19908116603f011681019083821181831017156103e7576103e761033c565b8160405282815288602084870101111561040057600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104435760208186018101518583015201610429565b50600092019182525091905056fea264697066735822122053869634917c3f506e9458e33de6974842d50d2f87cc565783db64cc7b8af3f264736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220c1ca14a59ae9fe8f66625b7accc22e698394cc37b875cf375a41b9ced938f75264736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103000000000000000000000000f39fd65373870fcb5868f7458d8d84485e5bf890000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","networkInteractionId":1,"nonce":556,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x4e06072395cbaa97b5684e02e90db9a90d627f28c7fba7bbc29395a6937ba71b"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","hash":"0x4e06072395cbaa97b5684e02e90db9a90d627f28c7fba7bbc29395a6937ba71b","networkInteractionId":1,"receipt":{"blockHash":"0xa7df78ebf3a95f01465193fabeb7cb5ef3c8a96b3f87bfc6e95f422b1e0a53cc","blockNumber":82177538,"contractAddress":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","logs":[{"address":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","data":"0x","logIndex":1,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x000000000000000000000000f39fd65373870fcb5868f7458d8d84485e5bf890"]},{"address":"0x6D892d831196E1Ad3779B97320b7091dE7d45053","data":"0x","logIndex":2,"topics":["0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f"]},{"address":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","data":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000006d892d831196e1ad3779b97320b7091de7d45053","logIndex":3,"topics":["0x7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","result":{"address":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","hash":"0x94ba70c3305da1c2850e0fd0482ca86d033f91a6f82272a3fa8d7c03b1a19702","networkInteractionId":1,"receipt":{"blockHash":"0x409a8676bb58a489dc722e9d4c5b33c8fb4f06cad2eec0a2e4f31013d1d32c2e","blockNumber":82177508,"logs":[{"address":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","data":"0x","logIndex":2,"topics":["0x76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphProxyAdmin#GraphProxyAdmin.transferOwnership","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"BridgeEscrow#GraphProxy","constructorArgs":["0xbC846a82491A4b6Ee5fd841c60923019d99F6D0c","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"contractName":"GraphProxy","dependencies":["BridgeEscrow#BridgeEscrow","GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"BridgeEscrow#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"BridgeEscrow#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000bc846a82491a4b6ee5fd841c60923019d99f6d0c0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"BridgeEscrow#GraphProxy","networkInteractionId":1,"nonce":557,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x6765e678edba8a194b3a5bc9fd849f45c11514154f7de24b9bf9c6d059478e35"},"type":"TRANSACTION_SEND"} +{"futureId":"BridgeEscrow#GraphProxy","hash":"0x6765e678edba8a194b3a5bc9fd849f45c11514154f7de24b9bf9c6d059478e35","networkInteractionId":1,"receipt":{"blockHash":"0xe5472a7a4abb34f9705684195f85064132ff47f6302a612573a002391ecaf5ad","blockNumber":82177562,"contractAddress":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","logs":[{"address":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","data":"0x","logIndex":2,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da"]},{"address":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","data":"0x","logIndex":3,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000bc846a82491a4b6ee5fd841c60923019d99f6d0c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"BridgeEscrow#GraphProxy","result":{"address":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa"],"artifactId":"BridgeEscrow#BridgeEscrow","dependencies":["BridgeEscrow#BridgeEscrow","Controller#Controller"],"functionName":"initialize","futureId":"BridgeEscrow#encodeFunctionCall(BridgeEscrow#BridgeEscrow.initialize)","result":"0xc4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"Curation#GraphProxy","constructorArgs":["0x73A09b3A9C5531da3374A12a1282e40C3e2B7FA0","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"contractName":"GraphProxy","dependencies":["Curation#Curation","GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"Curation#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c00000000000000000000000073a09b3a9c5531da3374a12a1282e40c3e2b7fa00000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#GraphProxy","networkInteractionId":1,"nonce":558,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xc21dba5ebc3a1b84d0e6c979e0ee3f372c87f440355fcba23e7fd115870efada"},"type":"TRANSACTION_SEND"} +{"futureId":"Curation#GraphProxy","hash":"0xc21dba5ebc3a1b84d0e6c979e0ee3f372c87f440355fcba23e7fd115870efada","networkInteractionId":1,"receipt":{"blockHash":"0x52ed4a28b2c5b4bbc55bdc895f6409ab482ec27707afb17705c82435560e8301","blockNumber":82177577,"contractAddress":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","logs":[{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x","logIndex":3,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da"]},{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x","logIndex":4,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000073a09b3a9c5531da3374a12a1282e40c3e2b7fa0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#GraphProxy","result":{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","0xF1c0D12b4b4f6f0d66CE0A18A16876c9ca6D2E92",10000,1],"artifactId":"Curation#Curation","dependencies":["Curation#Curation","Controller#Controller","Curation#GraphCurationToken"],"functionName":"initialize","futureId":"Curation#encodeFunctionCall(Curation#Curation.initialize)","result":"0x4c8c7a440000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000f1c0d12b4b4f6f0d66ce0a18a16876c9ca6d2e9200000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000001","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"EpochManager#GraphProxy","constructorArgs":["0x039B22cEd4cDbF6Cd153F38ba7ae2731471e0542","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"contractName":"GraphProxy","dependencies":["EpochManager#EpochManager","GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"EpochManager#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"EpochManager#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000039b22ced4cdbf6cd153f38ba7ae2731471e05420000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"EpochManager#GraphProxy","networkInteractionId":1,"nonce":559,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x6dc94e70324af84c4dc6148706d1bede53bef42d83fb701ebbd9149b4f26c666"},"type":"TRANSACTION_SEND"} +{"args":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa",60],"artifactId":"EpochManager#EpochManager","dependencies":["EpochManager#EpochManager","Controller#Controller"],"functionName":"initialize","futureId":"EpochManager#encodeFunctionCall(EpochManager#EpochManager.initialize)","result":"0xcd6dc6870000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000000000000000000000000000000000000000003c","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"args":["0xed734418922426bf2cc8783754bd80fc4d441a4dbe994549aee8a2f03136fcdb","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","networkInteraction":{"data":"0xe0e99292ed734418922426bf2cc8783754bd80fc4d441a4dbe994549aee8a2f03136fcdb0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","networkInteractionId":1,"nonce":560,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xf45d81ed330840d6970a16933babea25a5af19dbeee69108dc986f7158d93356"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","hash":"0xf45d81ed330840d6970a16933babea25a5af19dbeee69108dc986f7158d93356","networkInteractionId":1,"receipt":{"blockHash":"0xc00e89b3c2298ee25569d2a9c2418bacf011a87ce00ac95f67322b27ef792f43","blockNumber":82177607,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","logIndex":3,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xed734418922426bf2cc8783754bd80fc4d441a4dbe994549aee8a2f03136fcdb"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphToken#GraphProxy","constructorArgs":["0x21Ee267Efe20A7E846964D3f9E28F7e81d72547e","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"contractName":"GraphProxy","dependencies":["GraphToken#GraphToken","GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"GraphToken#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c00000000000000000000000021ee267efe20a7e846964d3f9e28f7e81d72547e0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphProxy","networkInteractionId":1,"nonce":561,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x8b106356a522f264deb4e9bf75f3f7f97fb484f8a9c9e915a591431fcdf13e56"},"type":"TRANSACTION_SEND"} +{"artifactId":"GraphTokenGateway#GraphProxy","constructorArgs":["0x2f3f6fbAD807800da2d1ABC9c949c45Bc1C81541","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"contractName":"GraphProxy","dependencies":["GraphTokenGateway#GraphTokenGateway","GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"GraphTokenGateway#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c0000000000000000000000002f3f6fbad807800da2d1abc9c949c45bc1c815410000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphProxy","networkInteractionId":1,"nonce":562,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x5dd8bf388f54a96838f1232e96a415f458b5a58ca729ce127e449de332ccbf8b"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphTokenGateway#GraphProxy","hash":"0x5dd8bf388f54a96838f1232e96a415f458b5a58ca729ce127e449de332ccbf8b","networkInteractionId":1,"receipt":{"blockHash":"0x5e42be7c912fa1eaf370a9e33204494538ec7c81f21eac861fb58673aba983bf","blockNumber":82177637,"contractAddress":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","logs":[{"address":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","data":"0x","logIndex":5,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da"]},{"address":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","data":"0x","logIndex":6,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000002f3f6fbad807800da2d1abc9c949c45bc1c81541"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphProxy","result":{"address":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa"],"artifactId":"GraphTokenGateway#GraphTokenGateway","dependencies":["GraphTokenGateway#GraphTokenGateway","Controller#Controller"],"functionName":"initialize","futureId":"GraphTokenGateway#encodeFunctionCall(GraphTokenGateway#GraphTokenGateway.initialize)","result":"0xc4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments","dependencies":["HorizonProxies#TransparentUpgradeableProxy_GraphPayments"],"emitterAddress":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","eventIndex":0,"eventName":"AdminChanged","futureId":"HorizonProxies#TransparentUpgradeableProxy_GraphPayments_AdminChanged","nameOrIndex":"newAdmin","result":"0xbb29b876AA2faCEb3af83d768CB03dd3BFF03f5e","strategy":"basic","strategyConfig":{},"txToReadFrom":"0xab7001383d7cf18ec79633ba203778308bfe93999fcf5c33f100ea1eb728ffaa","type":"READ_EVENT_ARGUMENT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","dependencies":["HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow"],"emitterAddress":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","eventIndex":0,"eventName":"AdminChanged","futureId":"HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow_AdminChanged","nameOrIndex":"newAdmin","result":"0x6D892d831196E1Ad3779B97320b7091dE7d45053","strategy":"basic","strategyConfig":{},"txToReadFrom":"0x4e06072395cbaa97b5684e02e90db9a90d627f28c7fba7bbc29395a6937ba71b","type":"READ_EVENT_ARGUMENT_EXECUTION_STATE_INITIALIZE"} +{"args":["0x88cae14a9889b95b4cfd9472fc7dcbca2da791846a1e314bac9c1f8a234cbf9f","0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","HorizonProxies#TransparentUpgradeableProxy_GraphPayments"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"HorizonProxies#setContractProxy_GraphPayments","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","networkInteraction":{"data":"0xe0e9929288cae14a9889b95b4cfd9472fc7dcbca2da791846a1e314bac9c1f8a234cbf9f000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","networkInteractionId":1,"nonce":563,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x9eb2502dab3d648c850fabd89bc1c3486fa63cbcae80944cb5db77c88bca3a63"},"type":"TRANSACTION_SEND"} +{"args":["0x628f67391f8b955553cabfadbf5f1b6a31d2a2d0fea175f5594af9d40b0bedc9","0x5904ab9c7806FCC7634F1DcDBec544eEa7490634"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","networkInteraction":{"data":"0xe0e99292628f67391f8b955553cabfadbf5f1b6a31d2a2d0fea175f5594af9d40b0bedc90000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea7490634","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","networkInteractionId":1,"nonce":564,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xaba39186fa8a30518e066c00ccd1eb3e0c2997d551988a7e530772c6c689cca1"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","hash":"0xaba39186fa8a30518e066c00ccd1eb3e0c2997d551988a7e530772c6c689cca1","networkInteractionId":1,"receipt":{"blockHash":"0x169f5fddc08f24923f0f20d168c3764088c670f6037890d2770633db034be2db","blockNumber":82177667,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea7490634","logIndex":0,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x628f67391f8b955553cabfadbf5f1b6a31d2a2d0fea175f5594af9d40b0bedc9"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#setContractProxy_PaymentsEscrow","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"RewardsManager#GraphProxy","constructorArgs":["0xE7ed8F3e83a10a74CBfaDdC7596CBb79c4eccA17","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"contractName":"GraphProxy","dependencies":["RewardsManager#RewardsManager","GraphProxyAdmin#GraphProxyAdmin"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"RewardsManager#GraphProxy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#GraphProxy","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c000000000000000000000000e7ed8f3e83a10a74cbfaddc7596cbb79c4ecca170000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#GraphProxy","networkInteractionId":1,"nonce":565,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x20d17ae698896b0c0701926e86765b8b0c3e0c0d135d955f225a48d89132404a"},"type":"TRANSACTION_SEND"} +{"futureId":"RewardsManager#GraphProxy","hash":"0x20d17ae698896b0c0701926e86765b8b0c3e0c0d135d955f225a48d89132404a","networkInteractionId":1,"receipt":{"blockHash":"0x91fde94090b56e22f4c697c17da9743e4725a227d0466217005e12085cf699f9","blockNumber":82177682,"contractAddress":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","logs":[{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x","logIndex":0,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da"]},{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x","logIndex":1,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000e7ed8f3e83a10a74cbfaddc7596cbb79c4ecca17"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#GraphProxy","result":{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa"],"artifactId":"RewardsManager#RewardsManager","dependencies":["RewardsManager#RewardsManager","Controller#Controller"],"functionName":"initialize","futureId":"RewardsManager#encodeFunctionCall(RewardsManager#RewardsManager.initialize)","result":"0xc4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"futureId":"EpochManager#GraphProxy","hash":"0x6dc94e70324af84c4dc6148706d1bede53bef42d83fb701ebbd9149b4f26c666","networkInteractionId":1,"receipt":{"blockHash":"0xe9ddf67223f99e54a8f0a3b098e73dbe71fb3286da27272e3caa0bdb8b4eb76d","blockNumber":82177592,"contractAddress":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","logs":[{"address":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","data":"0x","logIndex":4,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da"]},{"address":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","data":"0x","logIndex":5,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000039b22ced4cdbf6cd153f38ba7ae2731471e0542"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"EpochManager#GraphProxy","result":{"address":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphToken#GraphProxy","hash":"0x8b106356a522f264deb4e9bf75f3f7f97fb484f8a9c9e915a591431fcdf13e56","networkInteractionId":1,"receipt":{"blockHash":"0x4c712f556a39a58da8fe9da1d73666c45b9e98e876700dedfba09801341cb67e","blockNumber":82177622,"contractAddress":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","logs":[{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":11,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da"]},{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":12,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000021ee267efe20a7e846964d3f9e28f7e81d72547e"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphProxy","result":{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","hash":"0x9eb2502dab3d648c850fabd89bc1c3486fa63cbcae80944cb5db77c88bca3a63","networkInteractionId":1,"receipt":{"blockHash":"0x377b496e138ad2f34a156ee77243204bcb6a14392f056a80c158538b49ac07a1","blockNumber":82177652,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f","logIndex":0,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x88cae14a9889b95b4cfd9472fc7dcbca2da791846a1e314bac9c1f8a234cbf9f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#setContractProxy_GraphPayments","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"BridgeEscrow#BridgeEscrow_Instance","contractAddress":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","contractName":"BridgeEscrow_Instance","dependencies":["BridgeEscrow#GraphProxy"],"futureId":"BridgeEscrow#BridgeEscrow_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0xbC846a82491A4b6Ee5fd841c60923019d99F6D0c","0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","0xc4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","BridgeEscrow#BridgeEscrow","BridgeEscrow#GraphProxy","BridgeEscrow#encodeFunctionCall(BridgeEscrow#BridgeEscrow.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"acceptProxyAndCall","futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e000000000000000000000000bc846a82491a4b6ee5fd841c60923019d99f6d0c000000000000000000000000d7c55208d82ea44386cbae9f64d6af60c6feea7900000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":566,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x41e5f6ad996a801d1c91ce36afc151d525ee20003f423b66594a1a27d32b30b2"},"type":"TRANSACTION_SEND"} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x41e5f6ad996a801d1c91ce36afc151d525ee20003f423b66594a1a27d32b30b2","networkInteractionId":1,"receipt":{"blockHash":"0x6cd9a697e1ca8b0bdb978ae12806456e3b8950db7acfdef8a5ca2b5669cc743b","blockNumber":82177710,"logs":[{"address":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","data":"0x","logIndex":3,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000bc846a82491a4b6ee5fd841c60923019d99f6d0c"]},{"address":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","data":"0x","logIndex":4,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000bc846a82491a4b6ee5fd841c60923019d99f6d0c","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xd7c55208D82ea44386CbaE9f64D6af60c6Feea79","data":"0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","logIndex":5,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"BridgeEscrow#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"Curation#Curation_Instance","contractAddress":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","contractName":"Curation_Instance","dependencies":["Curation#GraphProxy"],"futureId":"Curation#Curation_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0x73A09b3A9C5531da3374A12a1282e40C3e2B7FA0","0x4594A5915B3AAa78CdF6273a76678855Ca675860","0x4c8c7a440000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000f1c0d12b4b4f6f0d66ce0a18a16876c9ca6d2e9200000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000001"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","Curation#Curation","Curation#GraphProxy","Curation#encodeFunctionCall(Curation#Curation.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"acceptProxyAndCall","futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e00000000000000000000000073a09b3a9c5531da3374a12a1282e40c3e2b7fa00000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000844c8c7a440000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000f1c0d12b4b4f6f0d66ce0a18a16876c9ca6d2e920000000000000000000000000000000000000000000000000000000000002710000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":567,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x83fabf287402d1e1d759e417928c911c3253f4d8d64e4af799229026902fcd37"},"type":"TRANSACTION_SEND"} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x83fabf287402d1e1d759e417928c911c3253f4d8d64e4af799229026902fcd37","networkInteractionId":1,"receipt":{"blockHash":"0xb966d585029d67d6d0e7dec84cd1fbfaca6be4335327b24e3a787066b3a58016","blockNumber":82177726,"logs":[{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x","logIndex":6,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000073a09b3a9c5531da3374a12a1282e40c3e2b7fa0"]},{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x","logIndex":7,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x00000000000000000000000073a09b3a9c5531da3374a12a1282e40c3e2b7fa0","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","logIndex":8,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]},{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001364656661756c7452657365727665526174696f00000000000000000000000000","logIndex":9,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]},{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000156375726174696f6e54617850657263656e746167650000000000000000000000","logIndex":10,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]},{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000166d696e696d756d4375726174696f6e4465706f73697400000000000000000000","logIndex":11,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]},{"address":"0x4594A5915B3AAa78CdF6273a76678855Ca675860","data":"0x000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000136375726174696f6e546f6b656e4d617374657200000000000000000000000000","logIndex":12,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Curation#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"EpochManager#EpochManager_Instance","contractAddress":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","contractName":"EpochManager_Instance","dependencies":["EpochManager#GraphProxy"],"futureId":"EpochManager#EpochManager_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0x039B22cEd4cDbF6Cd153F38ba7ae2731471e0542","0x7975475801BEf845f10Ce7784DC69aB1e0344f11","0xcd6dc6870000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000000000000000000000000000000000000000003c"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","EpochManager#EpochManager","EpochManager#GraphProxy","EpochManager#encodeFunctionCall(EpochManager#EpochManager.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"acceptProxyAndCall","futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e000000000000000000000000039b22ced4cdbf6cd153f38ba7ae2731471e05420000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f1100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000044cd6dc6870000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000000000000000000000000000000000000000003c00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":568,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x143b4fe4bb79b41128ec9ab5541f3df8378b33ff00092740a8e8be83101e0862"},"type":"TRANSACTION_SEND"} +{"args":["0x21Ee267Efe20A7E846964D3f9E28F7e81d72547e","0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","0xc4d66de8000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","GraphToken#GraphToken","GraphToken#GraphProxy","GraphToken#encodeFunctionCall(GraphToken#GraphToken.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"acceptProxyAndCall","futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e00000000000000000000000021ee267efe20a7e846964d3f9e28f7e81d72547e0000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd34070200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":569,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xbd3ff6dc735aa70e940251a37bc52d1ad0e19b308a62bea4f371d5f8e2339f6e"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0xbd3ff6dc735aa70e940251a37bc52d1ad0e19b308a62bea4f371d5f8e2339f6e","networkInteractionId":1,"receipt":{"blockHash":"0x19be0cd6a1bdb4f878577b5be434af6b01ad9c86253aa1f147ff5dc5d91d3635","blockNumber":82177756,"logs":[{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":1,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000021ee267efe20a7e846964d3f9e28f7e81d72547e"]},{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":2,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x00000000000000000000000021ee267efe20a7e846964d3f9e28f7e81d72547e","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x0000000000000000000000000000000000000000000000000000000000000000","logIndex":3,"topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f"]},{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":4,"topics":["0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6","0x000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","contractName":"GraphToken_Instance","dependencies":["GraphToken#GraphProxy"],"futureId":"GraphToken#GraphToken_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0x2f3f6fbAD807800da2d1ABC9c949c45Bc1C81541","0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","0xc4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","GraphTokenGateway#GraphTokenGateway","GraphTokenGateway#GraphProxy","GraphTokenGateway#encodeFunctionCall(GraphTokenGateway#GraphTokenGateway.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"acceptProxyAndCall","futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e0000000000000000000000002f3f6fbad807800da2d1abc9c949c45bc1c81541000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":570,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x1ad6220ccafc61a75a5666e6208851932c8d7e32dc22bcf149ac4c93abc3955a"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x1ad6220ccafc61a75a5666e6208851932c8d7e32dc22bcf149ac4c93abc3955a","networkInteractionId":1,"receipt":{"blockHash":"0x8255289694c31481a4d2f970b3fd8bd447e0e47f0d474f3a7b032b69fbdcb2d0","blockNumber":82177770,"logs":[{"address":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","data":"0x","logIndex":0,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000002f3f6fbad807800da2d1abc9c949c45bc1c81541"]},{"address":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","data":"0x","logIndex":1,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000002f3f6fbad807800da2d1abc9c949c45bc1c81541","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","data":"0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","logIndex":2,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphTokenGateway#GraphTokenGateway_Instance","contractAddress":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","contractName":"GraphTokenGateway_Instance","dependencies":["GraphTokenGateway#GraphProxy"],"futureId":"GraphTokenGateway#GraphTokenGateway_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#ProxyAdmin_GraphPayments","contractAddress":"0xbb29b876AA2faCEb3af83d768CB03dd3BFF03f5e","contractName":"ProxyAdmin","dependencies":["HorizonProxies#TransparentUpgradeableProxy_GraphPayments_AdminChanged"],"futureId":"HorizonProxies#ProxyAdmin_GraphPayments","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonProxies#ProxyAdmin_PaymentsEscrow","contractAddress":"0x6D892d831196E1Ad3779B97320b7091dE7d45053","contractName":"ProxyAdmin","dependencies":["HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow_AdminChanged"],"futureId":"HorizonProxies#ProxyAdmin_PaymentsEscrow","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":["0xE7ed8F3e83a10a74CBfaDdC7596CBb79c4eccA17","0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","0xc4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","RewardsManager#RewardsManager","RewardsManager#GraphProxy","RewardsManager#encodeFunctionCall(RewardsManager#RewardsManager.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"acceptProxyAndCall","futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteraction":{"data":"0x07ebde0e000000000000000000000000e7ed8f3e83a10a74cbfaddc7596cbb79c4ecca17000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe7500000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de80000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","networkInteractionId":1,"nonce":571,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x3b2196e0f3f04807ac248fce393cc53b39e7cd015239e5ec583dfe4c21906a2c"},"type":"TRANSACTION_SEND"} +{"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","contractName":"RewardsManager_Instance","dependencies":["RewardsManager#GraphProxy"],"futureId":"RewardsManager#RewardsManager_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x143b4fe4bb79b41128ec9ab5541f3df8378b33ff00092740a8e8be83101e0862","networkInteractionId":1,"receipt":{"blockHash":"0x73d11df25f3b7d0afc5824cf20d631705ce1dc3e84859dcda3439d9d92996599","blockNumber":82177741,"logs":[{"address":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","data":"0x","logIndex":0,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000039b22ced4cdbf6cd153f38ba7ae2731471e0542"]},{"address":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","data":"0x","logIndex":1,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000039b22ced4cdbf6cd153f38ba7ae2731471e0542","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","data":"0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","logIndex":2,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]},{"address":"0x7975475801BEf845f10Ce7784DC69aB1e0344f11","data":"0x000000000000000000000000000000000000000000000000000000000000003c","logIndex":3,"topics":["0x25ddd6f00038d5eac0051df83c6084f140a01586f092e2728d1ed781c9ce2441","0x0000000000000000000000000000000000000000000000000000000000000001"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"EpochManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","hash":"0x3b2196e0f3f04807ac248fce393cc53b39e7cd015239e5ec583dfe4c21906a2c","networkInteractionId":1,"receipt":{"blockHash":"0xea47da320ac27f7f45979aad62300a2b9cb8250a272fd16d7a766e8c1d3d8049","blockNumber":82177785,"logs":[{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x","logIndex":0,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000e7ed8f3e83a10a74cbfaddc7596cbb79c4ecca17"]},{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x","logIndex":1,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000e7ed8f3e83a10a74cbfaddc7596cbb79c4ecca17","0x0000000000000000000000000000000000000000000000000000000000000000"]},{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca","logIndex":2,"topics":["0x4ff638452bbf33c012645d18ae6f05515ff5f2d1dfb0cece8cbf018c60903f70"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#GraphProxyAdmin~GraphProxyAdmin.acceptProxyAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f","0x4594A5915B3AAa78CdF6273a76678855Ca675860"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","Curation#Curation_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_Curation","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","networkInteraction":{"data":"0xe0e99292e6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f0000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","networkInteractionId":1,"nonce":572,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xa5a9c473d42a65567e4fd38a90e0b5c15512ba417f1c4bffc4f28341f96c3e7f"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","hash":"0xa5a9c473d42a65567e4fd38a90e0b5c15512ba417f1c4bffc4f28341f96c3e7f","networkInteractionId":1,"receipt":{"blockHash":"0xdbc65ab325b085e410ad877403fdbcb21395a1bcf9ab8cd017143c23715c9c0c","blockNumber":82177811,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860","logIndex":0,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xe6876326c1291dfcbbd3864a6816d698cd591defc7aa2153d7f9c4c04016c89f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_Curation","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f67063","0x7975475801BEf845f10Ce7784DC69aB1e0344f11"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","EpochManager#EpochManager_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","networkInteraction":{"data":"0xe0e99292c713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f670630000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f11","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","networkInteractionId":1,"nonce":573,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x3d94c728a1d4175b5b2955de279f7aa3d6b1ece3c2adea3297e43238157eb1ed"},"type":"TRANSACTION_SEND"} +{"args":["0xade6b8eb69a49b56929c1d4f4b428d791861db6f",{"_kind":"bigint","value":"10000000000000000000000000000"}],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","dependencies":["GraphToken#GraphToken_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"mint","futureId":"GraphToken#GraphToken_Instance.mint","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken_Instance.mint","networkInteraction":{"data":"0x40c10f19000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f0000000000000000000000000000000000000000204fce5e3e25026110000000","id":1,"to":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken_Instance.mint","networkInteractionId":1,"nonce":574,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x2d833fa2b1148bc470e8743739c5877a34cda5b735d5014997e4d219d174804a"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphToken#GraphToken_Instance.mint","hash":"0x2d833fa2b1148bc470e8743739c5877a34cda5b735d5014997e4d219d174804a","networkInteractionId":1,"receipt":{"blockHash":"0x9f45c5fe448f38c5b686added8b8f23b09cfdc970a1546aea09f9275bd38e8be","blockNumber":82177841,"logs":[{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x0000000000000000000000000000000000000000204fce5e3e25026110000000","logIndex":0,"topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken_Instance.mint","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":[],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","dependencies":["GraphToken#GraphToken_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"renounceMinter","futureId":"GraphToken#GraphToken_Instance.renounceMinter","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","networkInteraction":{"data":"0x98650275","id":1,"to":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","networkInteractionId":1,"nonce":575,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xae0a40a2fadc29ff53ce697048a72d5e0b9a124c0c05ca4b59a56a16e9d2270b"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","hash":"0xae0a40a2fadc29ff53ce697048a72d5e0b9a124c0c05ca4b59a56a16e9d2270b","networkInteractionId":1,"receipt":{"blockHash":"0xbe7ab7e7674636bb1b28545388b6afafd829bfaaf3fb3ae86ec8a6dbcb4fe4e3","blockNumber":82177856,"logs":[{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":4,"topics":["0xe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb66692","0x000000000000000000000000ade6b8eb69a49b56929c1d4f4b428d791861db6f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken_Instance.renounceMinter","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0"],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","dependencies":["GraphToken#GraphToken_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"transferOwnership","futureId":"GraphToken#GraphToken_Instance.transferOwnership","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","networkInteraction":{"data":"0xf2fde38b000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0","id":1,"to":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","networkInteractionId":1,"nonce":576,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x45bafcda1fabc5ba82fc4aa2aa8f11fdffdf41e84f06c60aba1f521e8e393fd2"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","hash":"0x45bafcda1fabc5ba82fc4aa2aa8f11fdffdf41e84f06c60aba1f521e8e393fd2","networkInteractionId":1,"receipt":{"blockHash":"0x205ac6b84fdcc0e16b04ae8c408545384912f8ef5ba11e3bc0b461db02f8ac9e","blockNumber":82177871,"logs":[{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":0,"topics":["0x76563ad561b7036ae716b9b25cb521b21463240f104c97e12f25877f2235f33d","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ffcf8fdee72ac11b5c542428b35eef5769c409f0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#GraphToken_Instance.transferOwnership","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x95cED938F7991cd0dFcb48F0a06a40FA1aF46EBC"],"artifactId":"GraphTokenGateway#GraphTokenGateway_Instance","contractAddress":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","dependencies":["GraphTokenGateway#GraphTokenGateway_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setPauseGuardian","futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","networkInteraction":{"data":"0x48bde20c00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc","id":1,"to":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","networkInteractionId":1,"nonce":577,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x5cc12d2309f4850d5a964f46c54a07382fff89dba7e591b3d280c3e370df4268"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","hash":"0x5cc12d2309f4850d5a964f46c54a07382fff89dba7e591b3d280c3e370df4268","networkInteractionId":1,"receipt":{"blockHash":"0x823c9ca81f046e8fb494e6a777f3dae9895f9883c77d73c239920dd64c532473","blockNumber":82177886,"logs":[{"address":"0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D","data":"0x","logIndex":0,"topics":["0x0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e","0x0000000000000000000000000000000000000000000000000000000000000000","0x00000000000000000000000095ced938f7991cd0dfcb48f0a06a40fa1af46ebc"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphTokenGateway#GraphTokenGateway_Instance.setPauseGuardian","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":[{"_kind":"bigint","value":"114155251141552511415"}],"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","dependencies":["RewardsManager#RewardsManager_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setIssuancePerBlock","futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","networkInteraction":{"data":"0x1156bdc10000000000000000000000000000000000000000000000063038ec17c1be19b7","id":1,"to":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","networkInteractionId":1,"nonce":578,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x82db5ee4b00b8c346da57f15ed99ec28be01925a13982f92bf48092d6d7627be"},"type":"TRANSACTION_SEND"} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","hash":"0x82db5ee4b00b8c346da57f15ed99ec28be01925a13982f92bf48092d6d7627be","networkInteractionId":1,"receipt":{"blockHash":"0x15dfd982885eed8944fdab5e4995b31d1f2deb9eb4c4a0d07f2f9029490e6962","blockNumber":82177901,"logs":[{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001069737375616e6365506572426c6f636b00000000000000000000000000000000","logIndex":0,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager_Instance.setIssuancePerBlock","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xd03ea8624C8C5987235048901fB614fDcA89b117"],"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","dependencies":["RewardsManager#RewardsManager_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setSubgraphAvailabilityOracle","futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","networkInteraction":{"data":"0x0903c094000000000000000000000000d03ea8624c8c5987235048901fb614fdca89b117","id":1,"to":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","networkInteractionId":1,"nonce":579,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xf7cbe8cadc96b07c6986923c00168ee12c6ff1435330fed1af982858042b7852"},"type":"TRANSACTION_SEND"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","hash":"0xf7cbe8cadc96b07c6986923c00168ee12c6ff1435330fed1af982858042b7852","networkInteractionId":1,"receipt":{"blockHash":"0xf95b897a81bb7438d11c9c1bc54aa1b18a6b162126bf80e0d4a261df493391a5","blockNumber":82177916,"logs":[{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001a7375626772617068417661696c6162696c6974794f7261636c65000000000000","logIndex":3,"topics":["0x96d5a4b4edf1cefd0900c166d64447f8da1d01d1861a6a60894b5b82a2c15c3c"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphAvailabilityOracle","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x0000000000000000000000000000000000000000"],"artifactId":"RewardsManager#RewardsManager_Instance","contractAddress":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","dependencies":["RewardsManager#RewardsManager_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setSubgraphService","futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","networkInteraction":{"data":"0x93a90a1e0000000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","networkInteractionId":1,"nonce":580,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x257cb5b9342e5f80abc477541ee23abbc1598a334b3d591c8ac99110240ead2f"},"type":"TRANSACTION_SEND"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","hash":"0x257cb5b9342e5f80abc477541ee23abbc1598a334b3d591c8ac99110240ead2f","networkInteractionId":1,"receipt":{"blockHash":"0xc7e6de2316c21eb05ea2fcab1d8ed7bc112f08ef7cd934f9971311fd89bc2fc9","blockNumber":82177932,"logs":[{"address":"0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75","data":"0x","logIndex":0,"topics":["0x97befc0afcf2bace352f077aea9873c9552fc2e5ab26874f356006fdf9da4ede","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000000"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"RewardsManager#RewardsManager_Instance.setSubgraphService","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","hash":"0x3d94c728a1d4175b5b2955de279f7aa3d6b1ece3c2adea3297e43238157eb1ed","networkInteractionId":1,"receipt":{"blockHash":"0xb836f2900488a3ca46571b37ba80d65e45977a95502239d693cf7dcbad6b69e3","blockNumber":82177826,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f11","logIndex":6,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xc713c3df6d14cdf946460395d09af88993ee2b948b1a808161494e32c5f67063"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_EpochManager","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0","0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","GraphTokenGateway#GraphTokenGateway_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","networkInteraction":{"data":"0xe0e99292d362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","networkInteractionId":1,"nonce":581,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x8cf4ad7e1ae09e84d96aa3452b92113378935070c5367e6e0a52b0fcdc000ef6"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","hash":"0x8cf4ad7e1ae09e84d96aa3452b92113378935070c5367e6e0a52b0fcdc000ef6","networkInteractionId":1,"receipt":{"blockHash":"0xaa9d06da577568e972139e7f62c38d1dba246336063d014474209214cf2006a7","blockNumber":82177955,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d","logIndex":7,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0xd362cac9cb75c10d67bcc0b7eeb0b1ef48bb5420b556c092d4fd7f758816fcf0"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c53180761","0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","RewardsManager#RewardsManager_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","networkInteraction":{"data":"0xe0e99292966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c53180761000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","networkInteractionId":1,"nonce":582,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x76d9faa85811441e569c5b835ede5d416c3a3ba02921f1103d2cedaee62880fe"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","hash":"0x76d9faa85811441e569c5b835ede5d416c3a3ba02921f1103d2cedaee62880fe","networkInteractionId":1,"receipt":{"blockHash":"0xdfe1d7813754aed96a2ac85ad0df459d79472d57992a9be98a7dac6a0572c120","blockNumber":82177970,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75","logIndex":3,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x966f1e8d8d8014e05f6ec4a57138da9be1f7c5a7f802928a18072f7c53180761"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_RewardsManager","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xdC427a9aD72C0D9636c7B375E14C3dc39fFaf35D"],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","dependencies":["GraphToken#GraphToken_Instance","GraphTokenGateway#GraphTokenGateway_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"addMinter","futureId":"GraphToken#addMinterGateway","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#addMinterGateway","networkInteraction":{"data":"0x983b2d56000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d","id":1,"to":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#addMinterGateway","networkInteractionId":1,"nonce":583,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x5bb5e556b904302181aeaa326938c45e905c5db3cd189f8d90fd5697d773c8d9"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphToken#addMinterGateway","hash":"0x5bb5e556b904302181aeaa326938c45e905c5db3cd189f8d90fd5697d773c8d9","networkInteractionId":1,"receipt":{"blockHash":"0xa62b35117f728f6d68228453bfb94f84285eef0584844d0a02305fd7ca73331c","blockNumber":82177984,"logs":[{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":0,"topics":["0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6","0x000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#addMinterGateway","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xfA8c011255E691aeeB57Caa63ccD181E93BEfE75"],"artifactId":"GraphToken#GraphToken_Instance","contractAddress":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","dependencies":["GraphToken#GraphToken_Instance","RewardsManager#RewardsManager_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"addMinter","futureId":"GraphToken#addMinterRewardsManager","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphToken#addMinterRewardsManager","networkInteraction":{"data":"0x983b2d56000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75","id":1,"to":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphToken#addMinterRewardsManager","networkInteractionId":1,"nonce":584,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xb80549eb2dea0fb34554bd97601b3ad22cc6474434483c7eccfc01e978d37685"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphToken#addMinterRewardsManager","hash":"0xb80549eb2dea0fb34554bd97601b3ad22cc6474434483c7eccfc01e978d37685","networkInteractionId":1,"receipt":{"blockHash":"0xf8fa0e81638cbe4dff59d9b5e8b853b5580a1e4ae6d39df8e818e1bad443ee2a","blockNumber":82177999,"logs":[{"address":"0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702","data":"0x","logIndex":23,"topics":["0x6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f6","0x000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphToken#addMinterRewardsManager","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247","0x1A1af8B44fD59dd2bbEb456D1b7604c7bd340702"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","GraphToken#GraphToken_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","networkInteraction":{"data":"0xe0e9929245fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc192470000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd340702","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","networkInteractionId":1,"nonce":585,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x4ff4dc5450737eb36320a79880a5e365e61d244037637a250ba0569079507aaf"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","hash":"0x4ff4dc5450737eb36320a79880a5e365e61d244037637a250ba0569079507aaf","networkInteractionId":1,"receipt":{"blockHash":"0x99cc0429b200d5161fec9b32dbdcf4e708366c0ef66696660f3196a193d4817c","blockNumber":82178021,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd340702","logIndex":9,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x45fc200c7e4544e457d3c5709bfe0d520442c30bbcbdaede89e8d4a4bbc19247"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#setContractProxy_GraphToken","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphHorizon_Periphery#Dummy","constructorArgs":[],"contractName":"Dummy","dependencies":["GraphHorizon_Periphery#setContractProxy_EpochManager","GraphHorizon_Periphery#setContractProxy_RewardsManager","GraphHorizon_Periphery#setContractProxy_GraphToken","GraphHorizon_Periphery#setContractProxy_GraphTokenGateway","GraphHorizon_Periphery#setContractProxy_GraphProxyAdmin","GraphHorizon_Periphery#setContractProxy_Curation"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"GraphHorizon_Periphery#Dummy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphHorizon_Periphery#Dummy","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphHorizon_Periphery#Dummy","networkInteractionId":1,"nonce":586,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x950eac05b618a88ac09c2a5e4b022cf709ab46598bec57355323c5687fc38dd5"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphHorizon_Periphery#Dummy","hash":"0x950eac05b618a88ac09c2a5e4b022cf709ab46598bec57355323c5687fc38dd5","networkInteractionId":1,"receipt":{"blockHash":"0x810ceffc4b1418b9d282d414b465bb28e77cfe05a243c0ed7ac394255a98baed","blockNumber":82178038,"contractAddress":"0x3141000ae37361a525863D5cc4886799ed3FAFca","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphHorizon_Periphery#Dummy","result":{"address":"0x3141000ae37361a525863D5cc4886799ed3FAFca","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonProxies#GraphProxy_HorizonStaking","constructorArgs":["0x0000000000000000000000000000000000000000","0x0eb1325d7F1a188D5914fddb8566aE513A28D0da"],"contractName":"GraphProxy","dependencies":["GraphProxyAdmin#GraphProxyAdmin","GraphHorizon_Periphery#Dummy"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonProxies#GraphProxy_HorizonStaking","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","networkInteraction":{"data":"0x608060405234801561001057600080fd5b50604051610a12380380610a128339818101604052604081101561003357600080fd5b50805160209091015161004581610055565b61004e826100b3565b5050610137565b600061005f610111565b6000805160206109d2833981519152838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006100bd610124565b6000805160206109f2833981519152838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b6000805160206109d28339815191525490565b6000805160206109f28339815191525490565b61088c806101466000396000f3fe6080604052600436106100745760003560e01c80635c60da1b1161004e5780635c60da1b14610104578063623faf6114610119578063704b6c0214610196578063f851a440146101c957610083565b80633659cfe61461008b578063396f7b23146100be57806359fc20bb146100ef57610083565b36610083576100816101de565b005b6100816101de565b34801561009757600080fd5b50610081600480360360208110156100ae57600080fd5b50356001600160a01b031661029e565b3480156100ca57600080fd5b506100d36102d8565b604080516001600160a01b039092168252519081900360200190f35b3480156100fb57600080fd5b50610081610338565b34801561011057600080fd5b506100d3610393565b34801561012557600080fd5b506100816004803603602081101561013c57600080fd5b81019060208101813564010000000081111561015757600080fd5b82018360208201111561016957600080fd5b8035906020019184600183028401116401000000008311171561018b57600080fd5b5090925090506103e1565b3480156101a257600080fd5b50610081600480360360208110156101b957600080fd5b50356001600160a01b03166104f1565b3480156101d557600080fd5b506100d3610576565b6101e66105c0565b6001600160a01b0316336001600160a01b0316141561024c576040805162461bcd60e51b815260206004820152601f60248201527f43616e6e6f742066616c6c6261636b20746f2070726f78792074617267657400604482015290519081900360640190fd5b6040516001600160a01b037f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541636600083376000803684845af490503d806000843e81801561029a578184f35b8184fd5b6102a66105c0565b6001600160a01b0316336001600160a01b031614156102cd576102c8816105e5565b6102d5565b6102d56101de565b50565b60006102e26105c0565b6001600160a01b0316336001600160a01b031614806103195750610304610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610655565b9050610335565b6103356101de565b90565b6103406105c0565b6001600160a01b0316336001600160a01b031614806103775750610362610655565b6001600160a01b0316336001600160a01b0316145b156103895761038461067a565b610391565b6103916101de565b565b600061039d6105c0565b6001600160a01b0316336001600160a01b031614806103d457506103bf610655565b6001600160a01b0316336001600160a01b0316145b1561032d57610326610751565b6103e96105c0565b6001600160a01b0316336001600160a01b03161480610420575061040b610655565b6001600160a01b0316336001600160a01b0316145b156104e55761042d61067a565b6000610437610751565b6001600160a01b031683836040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610491576040519150601f19603f3d011682016040523d82523d6000602084013e610496565b606091505b50509050806104df576040805162461bcd60e51b815260206004820152601060248201526f125b5c1b0818d85b1b0819985a5b195960821b604482015290519081900360640190fd5b506104ed565b6104ed6101de565b5050565b6104f96105c0565b6001600160a01b0316336001600160a01b031614156102cd576001600160a01b03811661056d576040805162461bcd60e51b815260206004820152601e60248201527f41646d696e2063616e7420626520746865207a65726f20616464726573730000604482015290519081900360640190fd5b6102c881610776565b60006105806105c0565b6001600160a01b0316336001600160a01b031614806105b757506105a2610655565b6001600160a01b0316336001600160a01b0316145b1561032d576103265b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b60006105ef610655565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c838155604051919250906001600160a01b0380851691908416907f980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a190600090a3505050565b7f9e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c5490565b6000610684610655565b90506001600160a01b0381166106e1576040805162461bcd60e51b815260206004820152601b60248201527f496d706c2063616e6e6f74206265207a65726f20616464726573730000000000604482015290519081900360640190fd5b336001600160a01b0382161461073e576040805162461bcd60e51b815260206004820152601b60248201527f4f6e6c792070656e64696e6720696d706c656d656e746174696f6e0000000000604482015290519081900360640190fd5b610747816107e6565b6102d560006105e5565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b60006107806105c0565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103838155604051919250906001600160a01b0380851691908416907f101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b90600090a3505050565b60006107f0610751565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc838155604051919250906001600160a01b0380851691908416907faa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da90600090a350505056fea264697066735822122041ce882775d17ef838c17f08249aa48a5f3ea1c65b581e69896452640b274de264736f6c63430007060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039e5eddc59e0b171f57125ab86bee043d9128098c3a6b9adb4f2e86333c2f6f8c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","networkInteractionId":1,"nonce":587,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x2d859ae24fcf0fad0c418daaeea6271d89dddb28d7c157b9f891cd5490ddb447"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","hash":"0x2d859ae24fcf0fad0c418daaeea6271d89dddb28d7c157b9f891cd5490ddb447","networkInteractionId":1,"receipt":{"blockHash":"0xb2fd4096ee4b0f99459c54fbca3166ea7a62c56bf16a5d3a649118a6c38a7bc5","blockNumber":82178055,"contractAddress":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","logs":[{"address":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","data":"0x","logIndex":1,"topics":["0x101b8081ff3b56bbf45deb824d86a3b0fd38b7e3dd42421105cf8abe9106db0b","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da"]},{"address":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","data":"0x","logIndex":2,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x0000000000000000000000000000000000000000000000000000000000000000"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#GraphProxy_HorizonStaking","result":{"address":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":["0x1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d167034","0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf"],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller","HorizonProxies#GraphProxy_HorizonStaking"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setContractProxy","futureId":"HorizonProxies#setContractProxy_HorizonStaking","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","networkInteraction":{"data":"0xe0e992921df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d1670340000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","networkInteractionId":1,"nonce":588,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xf80cfd15f181d133ae11a665d442403850ae1e33cece70ef661f41d35bac6103"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","hash":"0xf80cfd15f181d133ae11a665d442403850ae1e33cece70ef661f41d35bac6103","networkInteractionId":1,"receipt":{"blockHash":"0x2387a28cc054f3b0ae34f813d79b89f79132d42ed78f6ae45a2db8dcc69f5154","blockNumber":82178072,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","logIndex":0,"topics":["0x937cf566d78d4769ff0211a7d87a6bea51e1fc026fd4d3d8cd589f0e99b983bd","0x1df41cd916959d1163dc8f0671a666ea8a3e434c13e40faef527133b5d167034"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#setContractProxy_HorizonStaking","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonProxies#RegisteredDummy","constructorArgs":[],"contractName":"Dummy","dependencies":["HorizonProxies#setContractProxy_HorizonStaking","HorizonProxies#setContractProxy_GraphPayments","HorizonProxies#setContractProxy_PaymentsEscrow"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonProxies#RegisteredDummy","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonProxies#RegisteredDummy","networkInteraction":{"data":"0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220e9552d0bd17028a389e7fe001355f436a4c48f8bbc01c19b8c400850f5a6b5ac64736f6c634300081b0033","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonProxies#RegisteredDummy","networkInteractionId":1,"nonce":589,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xf8a3e92f747810a08eb6de451a84bfe638e548cec635ce6d5ed37368d7443994"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonProxies#RegisteredDummy","hash":"0xf8a3e92f747810a08eb6de451a84bfe638e548cec635ce6d5ed37368d7443994","networkInteractionId":1,"receipt":{"blockHash":"0x3d27c72dbf1468c20f60dd1c2fe28285bfd46e925b7cbb073490b7b4dd0fb906","blockNumber":82178088,"contractAddress":"0xbDc6798b71a3B57fc79eF346d065de7477D3c366","logs":[],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonProxies#RegisteredDummy","result":{"address":"0xbDc6798b71a3B57fc79eF346d065de7477D3c366","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphPayments#GraphPayments","constructorArgs":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa",10000],"contractName":"GraphPayments","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"GraphPayments#GraphPayments","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphPayments#GraphPayments","networkInteraction":{"data":"0x6101e060405234801561001157600080fd5b5060405161132f38038061132f833981016040819052610030916104ee565b816001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b290610372565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e590610372565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e90610372565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015890610372565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019090610372565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb90610372565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020990610372565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024590610372565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a90610372565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a45061033a81620f4240101590565b819061035c5760405163d3097bcb60e01b815260040161007191815260200190565b506101c081905261036b610420565b505061058a565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103ad91815260200190565b602060405180830381865afa1580156103ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ee919061051a565b9050826001600160a01b0382166104195760405163218f5add60e11b8152600401610071919061053c565b5092915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff16156104705760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146104cf5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b80516001600160a01b03811681146104e957600080fd5b919050565b6000806040838503121561050157600080fd5b61050a836104d2565b9150602083015190509250929050565b60006020828403121561052c57600080fd5b610535826104d2565b9392505050565b602081526000825180602084015260005b8181101561056a576020818601810151604086840101520161054d565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c051610d086106276000396000818160560152610104015260005050600050506000505060005050600050506000505060005050600050506000818161012e015281816102c1015261035401526000818160d5015281816102220152818161025a0152818161029201526103f50152610d086000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80631d526e50146100515780636c69783a1461008b5780638129fc1c146100a0578063ac9650d8146100a8575b600080fd5b6100787f000000000000000000000000000000000000000000000000000000000000000081565b6040519081526020015b60405180910390f35b61009e6100993660046109ab565b6100c8565b005b61009e61047f565b6100bb6100b6366004610a06565b61058d565b6040516100829190610aa1565b6100fc6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163385610676565b6000610128847f0000000000000000000000000000000000000000000000000000000000000000610733565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316637573ef4f87868a6040518463ffffffff1660e01b815260040161017c93929190610b21565b602060405180830381865afa158015610199573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101bd9190610b65565b905060006101cb8683610733565b90506000816101da8686610b94565b6101e49190610b94565b905086818082101561021757604051638bd93bad60e01b8152600481019290925260248201526044015b60405180910390fd5b5050610253846102447f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b0316906107a1565b61028a86867f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190610806565b81156103e0577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303816000875af115801561032d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103519190610ba7565b507f000000000000000000000000000000000000000000000000000000000000000060405163ca94b0e960e01b81526001600160a01b038a81166004830152888116602483015260448201859052919091169063ca94b0e990606401600060405180830381600087803b1580156103c757600080fd5b505af11580156103db573d6000803e3d6000fd5b505050505b60006103ec8289610bc9565b905061041989827f000000000000000000000000000000000000000000000000000000000000000061027a565b6040805182815260208101859052908101879052606081018690526001600160a01b0380891691908b169033907fb6dba03dcdcd7b7167b22bd6f1462a936eb55f4218b1d4dddff20bdec5703ca39060800160405180910390a450505050505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156104c55750825b905060008267ffffffffffffffff1660011480156104e25750303b155b9050811580156104f0575080155b1561050e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561053857845460ff60401b1916600160401b1785555b610540610841565b831561058657845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6040805160008152602081019091526060908267ffffffffffffffff8111156105b8576105b8610bdc565b6040519080825280602002602001820160405280156105eb57816020015b60608152602001906001900390816105d65790505b50915060005b8381101561066d576106483086868481811061060f5761060f610bf2565b90506020028101906106219190610c08565b8560405160200161063493929190610c56565b60405160208183030381529060405261084b565b83828151811061065a5761065a610bf2565b60209081029190910101526001016105f1565b50505b92915050565b801561072e576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156106d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106f69190610ba7565b61072e5760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161020e565b505050565b600061074283620f4240101590565b80610755575061075582620f4240101590565b8383909161077f5760405163768bf0eb60e11b81526004810192909252602482015260440161020e565b50620f424090506107908385610c7d565b61079a9190610c94565b9392505050565b801561080257604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156107e957600080fd5b505af11580156107fd573d6000803e3d6000fd5b505050505b5050565b801561072e5760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016106b3565b6108496108c1565b565b6060600080846001600160a01b0316846040516108689190610cb6565b600060405180830381855af49150503d80600081146108a3576040519150601f19603f3d011682016040523d82523d6000602084013e6108a8565b606091505b50915091506108b885838361090a565b95945050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661084957604051631afcd79f60e31b815260040160405180910390fd5b60608261091f5761091a82610966565b61079a565b815115801561093657506001600160a01b0384163b155b1561095f57604051639996b31560e01b81526001600160a01b038516600482015260240161020e565b5092915050565b8051156109765780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146109a657600080fd5b919050565b600080600080600060a086880312156109c357600080fd5b8535600381106109d257600080fd5b94506109e06020870161098f565b9350604086013592506109f56060870161098f565b949793965091946080013592915050565b60008060208385031215610a1957600080fd5b823567ffffffffffffffff811115610a3057600080fd5b8301601f81018513610a4157600080fd5b803567ffffffffffffffff811115610a5857600080fd5b8560208260051b8401011115610a6d57600080fd5b6020919091019590945092505050565b60005b83811015610a98578181015183820152602001610a80565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610b1557603f1987860301845281518051808752610af2816020890160208501610a7d565b601f01601f19169590950160209081019550938401939190910190600101610ac9565b50929695505050505050565b6001600160a01b038481168252831660208201526060810160038310610b5757634e487b7160e01b600052602160045260246000fd5b826040830152949350505050565b600060208284031215610b7757600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561067057610670610b7e565b600060208284031215610bb957600080fd5b8151801515811461079a57600080fd5b8181038181111561067057610670610b7e565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610c1f57600080fd5b83018035915067ffffffffffffffff821115610c3a57600080fd5b602001915036819003821315610c4f57600080fd5b9250929050565b828482376000838201600081528351610c73818360208801610a7d565b0195945050505050565b808202811582820484141761067057610670610b7e565b600082610cb157634e487b7160e01b600052601260045260246000fd5b500490565b60008251610cc8818460208701610a7d565b919091019291505056fea2646970667358221220014e32010460d303e4961788506a40f57bf919f7e64f17c1db1f5dcfec869fbd64736f6c634300081b00330000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca0000000000000000000000000000000000000000000000000000000000002710","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphPayments#GraphPayments","networkInteractionId":1,"nonce":590,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x9c9f5448c154a8d46b3d5935177638b8b3ad68325521636b16887406b2ba5048"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphPayments#GraphPayments","hash":"0x9c9f5448c154a8d46b3d5935177638b8b3ad68325521636b16887406b2ba5048","networkInteractionId":1,"receipt":{"blockHash":"0x2d9565b9d4e1f9fe534a94a47254da24c94f579027f4e9467e8012e7b11b350f","blockNumber":82178104,"contractAddress":"0xf5B3661BbB8CD48571C7f41ba2D896a3589C9753","logs":[{"address":"0xf5B3661BbB8CD48571C7f41ba2D896a3589C9753","data":"0x000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f0000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea74906340000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f11000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da0000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860","logIndex":1,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x0000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd340702","0x0000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"]},{"address":"0xf5B3661BbB8CD48571C7f41ba2D896a3589C9753","data":"0x000000000000000000000000000000000000000000000000ffffffffffffffff","logIndex":2,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphPayments#GraphPayments","result":{"address":"0xf5B3661BbB8CD48571C7f41ba2D896a3589C9753","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"GraphPayments#GraphPayments_Instance","contractAddress":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","contractName":"GraphPayments","dependencies":["HorizonProxies#TransparentUpgradeableProxy_GraphPayments"],"futureId":"GraphPayments#GraphPayments_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonStakingExtension#HorizonStakingExtension","constructorArgs":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","0x0000000000000000000000000000000000000000"],"contractName":"HorizonStakingExtension","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy","HorizonStakingExtension#ExponentialRebates"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonStakingExtension#HorizonStakingExtension","futureType":"CONTRACT_DEPLOYMENT","libraries":{"ExponentialRebates":"0x5Ab8e4eDb2d068C9c1ab9c96bfb3abCAb96e1534"},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","networkInteraction":{"data":"0x6101e060405234801561001157600080fd5b5060405161396738038061396783398101604081905261003091610411565b818181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610347565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610347565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610347565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610347565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610347565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610347565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610347565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610347565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610347565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b03166101c052506104b4915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038291815260200190565b602060405180830381865afa15801561039f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c39190610444565b9050826001600160a01b0382166103ee5760405163218f5add60e11b81526004016100749190610466565b5092915050565b80516001600160a01b038116811461040c57600080fd5b919050565b6000806040838503121561042457600080fd5b61042d836103f5565b915061043b602084016103f5565b90509250929050565b60006020828403121561045657600080fd5b61045f826103f5565b9392505050565b602081526000825180602084015260005b818110156104945760208186018101516040868401015201610477565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516133d761059060003960008181611c3601528181611e3601526123f00152600061205b015260005050600061178501526000818161213d0152818161280501526129080152600081816112c70152611b6f015260008181610bbf01528181610cbc01528181610ed601526116dc015260005050600050506000505060008181611044015281816111fa01528181612023015281816121b20152818161239a015281816124c2015261263201526133d76000f3fe6080604052600436106101f25760003560e01c806398c657dc1161010d578063b6363cf2116100a0578063e2e1e8e91161006f578063e2e1e8e914610a0b578063e73e14bf14610a38578063f1d60d6614610a70578063fb744cc014610a90578063fc54fb2714610ab057600080fd5b8063b6363cf2146108dd578063b7ca724114610927578063c0641994146109c1578063ccebcabb146109dc57600080fd5b8063a4c0ed36116100dc578063a4c0ed3614610837578063a784d49814610857578063ac9650d814610877578063ae4fe67a146108a457600080fd5b806398c657dc1461072d5780639ce7abe51461075a578063a212daf81461077a578063a2594d821461081757600080fd5b8063561285e411610185578063872d048911610154578063872d04891461064c5780638cc01c861461066c5780638d3c100a146106ed5780639054e3431461070d57600080fd5b8063561285e4146105a95780636a3ca383146105fc5780637573ef4f1461062c5780637a7664601461031157600080fd5b806325d9897e116101c157806325d9897e1461036957806339514ad21461047957806344c32a61146104ab57806355c85269146104cb57600080fd5b806308ce5f68146102495780630e0229231461027c5780631787e69f146103115780631ae720451461034757600080fd5b366102445760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b600080fd5b34801561025557600080fd5b50610269610264366004612bec565b610ac8565b6040519081526020015b60405180910390f35b34801561028857600080fd5b5061029c610297366004612c25565b610add565b604051610273919060006101208201905060018060a01b0383511682526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e083015160e083015261010083015161010083015292915050565b34801561031d57600080fd5b5061026961032c366004612c25565b6001600160a01b03166000908152600e602052604090205490565b34801561035357600080fd5b50610367610362366004612c25565b610bbd565b005b34801561037557600080fd5b5061046c610384366004612bec565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516102739190612c42565b34801561048557600080fd5b50601a546001600160401b03165b6040516001600160401b039091168152602001610273565b3480156104b757600080fd5b506103676104c6366004612cd2565b610cba565b3480156104d757600080fd5b506105776104e6366004612c25565b6001600160a01b039081166000908152600f602090815260408083208151610120810183528154909516808652600182015493860184905260028201549286018390526003820154606087015260048201546080870152600582015460a0870152600682015460c0870152600782015460e08701819052600890920154610100909601959095529394919390929091565b604080516001600160a01b0390961686526020860194909452928401919091526060830152608082015260a001610273565b3480156105b557600080fd5b506105c96105c4366004612bec565b610d68565b60405161027391908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561060857600080fd5b5061061c610617366004612c25565b610df6565b6040519015158152602001610273565b34801561063857600080fd5b50610269610647366004612cfe565b610e1b565b34801561065857600080fd5b50610269610667366004612d4d565b610e7f565b34801561067857600080fd5b506106d2610687366004612c25565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b60408051825181526020928301519281019290925201610273565b3480156106f957600080fd5b50610367610708366004612d96565b610ed4565b34801561071957600080fd5b50610269610728366004612dbb565b6113a0565b34801561073957600080fd5b5061074d610748366004612c25565b611488565b6040516102739190612e11565b34801561076657600080fd5b50610367610775366004612e81565b611493565b34801561078657600080fd5b506105c9610795366004612dbb565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561082357600080fd5b50610367610832366004612c25565b6115be565b34801561084357600080fd5b50610367610852366004612ed5565b6116da565b34801561086357600080fd5b50610269610872366004612c25565b6118e7565b34801561088357600080fd5b50610897610892366004612f30565b6118f2565b6040516102739190612fc9565b3480156108b057600080fd5b5061061c6108bf366004612c25565b6001600160a01b031660009081526022602052604090205460ff1690565b3480156108e957600080fd5b5061061c6108f8366004612bec565b6001600160a01b0380821660009081526015602090815260408083209386168352929052205460ff1692915050565b34801561093357600080fd5b50610996610942366004613049565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b0316908201529181015190820152606001610273565b3480156109cd57600080fd5b50600d5463ffffffff16610493565b3480156109e857600080fd5b506109fc6109f7366004612dbb565b6119d9565b60405190518152602001610273565b348015610a1757600080fd5b50610269610a26366004613049565b60009081526010602052604090205490565b348015610a4457600080fd5b5061061c610a53366004612c25565b6001600160a01b03166000908152600e6020526040902054151590565b348015610a7c57600080fd5b5061061c610a8b366004612c25565b611a2b565b348015610a9c57600080fd5b50610269610aab366004612bec565b611a50565b348015610abc57600080fd5b5060205460ff1661061c565b6000610ad48383611a5c565b90505b92915050565b610b3860405180610120016040528060006001600160a01b0316815260200160008019168152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b506001600160a01b039081166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e08301526008015461010082015290565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3f9190613062565b6001600160a01b0316336001600160a01b031614610c7057604051635d9044cd60e01b815260040160405180910390fd5b601880546001600160a01b0319166001600160a01b0383169081179091556040517f690e9b982dc9aefaa1cfed186a2d2045a638013d658104102c9437235bee4b6090600090a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d3c919061307f565b15610d5a57604051632b37d9d160e21b815260040160405180910390fd5b610d648282611a94565b5050565b610d936040518060800160405280600081526020016000815260200160008152602001600081525090565b610dbe6040518060800160405280600081526020016000815260200160008152602001600081525090565b6000610dca8585611e32565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b60006001610e0383611eb6565b6002811115610e1457610e14612dfb565b1492915050565b6001600160a01b038084166000908152601c60209081526040808320938616835292905290812081836002811115610e5557610e55612dfb565b6002811115610e6657610e66612dfb565b81526020019081526020016000205490505b9392505050565b600080610e8c8585611a5c565b90506000610e9a8686611f0f565b90506000610eae63ffffffff8616846130b7565b90506000610ebc8383611f3a565b9050610ec881856130ce565b98975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f56919061307f565b15610f7457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038116610fb35760405162461bcd60e51b815260206004820152600660248201526521616c6c6f6360d01b604482015260640161023b565b6000610fbe82611eb6565b90506000816002811115610fd457610fd4612dfb565b0361100c5760405162461bcd60e51b81526020600482015260086024820152670858dbdb1b1958dd60c21b604482015260640161023b565b8260000361101957505050565b6001600160a01b0382166000908152600f6020526040812060018101549091859080808061107333867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169190611f51565b600d5461108e908690600160401b900463ffffffff1661200e565b935061109a84866130e1565b600d549095506110bb9087908790640100000000900463ffffffff16612047565b92506110c783866130e1565b94508487600501546110d991906130ce565b6005880155600287015460009015806110ff5750601954600160a01b900463ffffffff16155b6111ca5760058801546002890154600d546019546040516349484d8160e01b81526004810194909452602484019290925263ffffffff600160a01b80830482166044860152600160c01b928390048216606486015283048116608485015291041660a4820152735Ab8e4eDb2d068C9c1ab9c96bfb3abCAb96e1534906349484d819060c401602060405180830381865af41580156111a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c591906130f4565b6111cd565b60005b90506111dd81896008015461225a565b92506111e98387611f3a565b92506112296111f884886130e1565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690612274565b82156112915782886008015461123f91906130ce565b60088901558754611259906001600160a01b0316846122bc565b915061126582846130e1565b88546001600160a01b03908116600081815260176020526040902054929550611291928692161561234e565b5086546001600160a01b038a8116918891167ff5ded07502b6feba4c13b19a0c6646efd4b4119f439bcbd49076e4f0ed1eec4b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611323573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061134791906130f4565b604080516001600160a01b039093168352602083019190915281018f9052606081018990526080810188905260a081018a905260c0810187905260e081018690526101000160405180910390a450505050505050505050565b6001600160a01b038084166000908152601e60209081526040808320868516845282528083209385168352929052908120600381015482036113e6576000915050610e78565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b801561147c576000818152601d602052604090206001810154426001600160401b039091161161146b5760028301546001840154825461145091906130b7565b61145a919061310d565b61146490856130ce565b9350611471565b5061147c565b600201549050611410565b50909695505050505050565b6000610ad782611eb6565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f89190613062565b6001600160a01b0316336001600160a01b0316146115585760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611586908690869060040161312f565b600060405180830381600087803b1580156115a057600080fd5b505af11580156115b4573d6000803e3d6000fd5b5050505050505050565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af11580156115ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116239190613062565b6001600160a01b0316336001600160a01b0316146116835760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e0000604482015260640161023b565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156116be57600080fd5b505af11580156116d2573d6000803e3d6000fd5b505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611738573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175c919061307f565b1561177a57604051632b37d9d160e21b815260040160405180910390fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117e15760405162461bcd60e51b815260206004820152600c60248201526b4f4e4c595f4741544557415960a01b604482015260640161023b565b6018546001600160a01b0385811691161461183e5760405162461bcd60e51b815260206004820152601e60248201527f4f4e4c595f4c315f5354414b494e475f5448524f5547485f4252494447450000604482015260640161023b565b60008061184d838501856131a4565b909250905060ff8216611882576000818060200190518101906118709190613255565b905061187c86826123c4565b506116d2565b60001960ff8316016118b0576000818060200190518101906118a491906132a2565b905061187c86826123d0565b60405162461bcd60e51b815260206004820152600c60248201526b494e56414c49445f434f444560a01b604482015260640161023b565b6000610ad782612740565b604080516000815260208101909152606090826001600160401b0381111561191c5761191c61315e565b60405190808252806020026020018201604052801561194f57816020015b606081526020019060019003908161193a5790505b50915060005b838110156119d1576119ac3086868481811061197357611973613302565b90506020028101906119859190613318565b856040516020016119989392919061335e565b60405160208183030381529060405261278b565b8382815181106119be576119be613302565b6020908102919091010152600101611955565b505092915050565b6040805160208101909152600081526040805160208101909152600081526000611a038686611e32565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b600080611a3783611eb6565b6002811115611a4857611a48612dfb565b141592915050565b6000610ad48383611f0f565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610ad491906130e1565b6000611a9f83611eb6565b90506001816002811115611ab557611ab5612dfb565b14611aec5760405162461bcd60e51b81526020600482015260076024820152662161637469766560c81b604482015260640161023b565b6001600160a01b038381166000908152600f6020908152604091829020825161012081018452815490941684526001810154918401919091526002810154918301919091526003810154606083015260048101546080830152600581015460a0830152600681015460c0830152600781015460e0830152600801546101008201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bef91906130f4565b608082018190526060820151600091611c079161225a565b9050600082600001516001600160a01b0316336001600160a01b03161480611c78575082516001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600090815260156020908152604080832093909416825291909152205460ff165b600d54909150600160801b900463ffffffff1682111580611c9b57506040830151155b15611cd55780611cd55760405162461bcd60e51b8152602060048201526005602482015264042c2eae8d60db1b604482015260640161023b565b60808301516001600160a01b0387166000908152600f6020526040908190206004019190915583015115611db957808015611d0f57508415155b15611d2757611d22868460000151612801565b611d36565b611d3483602001516128e7565b505b60408084015184516001600160a01b03166000908152600e6020529190912060010154611d6391906130e1565b83516001600160a01b03166000908152600e602090815260408083206001019390935582860151818701518352601090915291902054611da391906130e1565b6020808501516000908152601090915260409020555b60208084015184516080808701516040808901518151928352958201959095523394810194909452606084018990528415908401526001600160a01b03808a16939116907ff6725dd105a6fc88bb79a6e4627f128577186c567a17c94818d201c2a4ce14039060a00160405180910390a4505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603611e8b57506001600160a01b0382166000908152601460205260409020610ad7565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610ad7565b6001600160a01b038082166000908152600f6020526040812080549192909116611ee35750600092915050565b600381015415801590611ef857506004810154155b15611f065750600192915050565b50600292915050565b600080611f1c8484611e32565b905080600501548160020154611f3291906130e1565b949350505050565b600081831115611f4a5781610ad4565b5090919050565b8015612009576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af1158015611fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd1919061307f565b6120095760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b604482015260640161023b565b505050565b60008061201b8484612975565b9050610ad4817f000000000000000000000000000000000000000000000000000000000000000061121a565b60008260000361205957506000610e78565b7f00000000000000000000000000000000000000000000000000000000000000006000831580159061209357506001600160a01b03821615155b90508080156121065750604051634c4ea0ed60e01b8152600481018790526001600160a01b03831690634c4ea0ed90602401602060405180830381865afa1580156120e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612106919061307f565b1561224e5760006121178686612975565b90508015612244576040516307470bfb60e21b8152600481018890526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631d1c2fec906024016020604051808303816000875af1158015612186573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121aa91906130f4565b506121e283827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906129c7565b60405163102ae65160e31b815260048101889052602481018290526001600160a01b03841690638157328890604401600060405180830381600087803b15801561222b57600080fd5b505af115801561223f573d6000803e3d6000fd5b505050505b9250610e78915050565b50600095945050505050565b600081831161226a576000610ad4565b610ad482846130e1565b8015610d6457604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b1580156116be57600080fd5b6001600160a01b03821660009081526014602052604081206002810154829190158015906122fb57508054600160401b900463ffffffff16620f424010155b156123465780546000906123219063ffffffff600160401b9091048116908790612a0216565b905061232d81866130e1565b925082826002015461233f91906130ce565b6002830155505b509392505050565b8260000361235b57505050565b801561236b576120098284612a69565b6001600160a01b03808316600090815260176020526040902054166123be81156123955781612397565b835b857f00000000000000000000000000000000000000000000000000000000000000006121d2565b50505050565b80516120098184612a69565b80516001600160a01b039081166000908152601b602090815260408083207f0000000000000000000000000000000000000000000000000000000000000000909416835292905290812060030154600160601b90046001600160401b031690036124695760405162461bcd60e51b815260206004820152600a60248201526910b83937bb34b9b4b7b760b11b604482015260640161023b565b80516001600160a01b03908116600090815260146020908152604080832082860151909416835260048401909152902060028201541580156124bb575060038201541515806124bb5750600682015415155b156125b5577f0000000000000000000000000000000000000000000000000000000000000000602084015160405163a9059cbb60e01b81526001600160a01b0391821660048201526024810187905291169063a9059cbb906044016020604051808303816000875af1158015612535573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612559919061307f565b5082602001516001600160a01b031683600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de866040516125a791815260200190565b60405180910390a350505050565b60008260020154600014806125d1575082600501548360020154145b61260757826005015483600201546125e991906130e1565b60038401546125f890876130b7565b612602919061310d565b612609565b845b905080158061261f5750670de0b6b3a764000085105b156126ae576126548460200151866121d27f000000000000000000000000000000000000000000000000000000000000000090565b83602001516001600160a01b031684600001516001600160a01b03167f0921ebf1ba63d93aed0e18402fa38cb5515048daf6a04549c1bd1c1f560d72de876040516126a191815260200190565b60405180910390a3612739565b8483600201546126be91906130ce565b600284015560038301546126d39082906130ce565b600384015581546126e59082906130ce565b82556020808501518551604080518981529384018590526001600160a01b039283169391909216917fcd0366dce5247d874ffc60a762aa7abbb82c1695bbb171609c1b8861e279eb73910160405180910390a35b5050505050565b6001600160a01b0381166000908152600e6020526040812060028101546001820154600483015492549192909161277791906130e1565b61278191906130e1565b610ad791906130e1565b6060600080846001600160a01b0316846040516127a89190613385565b600060405180830381855af49150503d80600081146127e3576040519150601f19603f3d011682016040523d82523d6000602084013e6127e8565b606091505b50915091506127f8858383612ae8565b95945050505050565b60007f0000000000000000000000000000000000000000000000000000000000000000604051636dba849360e11b81526001600160a01b038581166004830152919091169063db750926906024016020604051808303816000875af115801561286e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289291906130f4565b9050806000036128a157505050565b60006128ad8383612b44565b905060006128bb82846130e1565b6001600160a01b038086166000908152601760205260409020549192506127399183918791161561234e565b6040516377561f0760e11b8152600481018290526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063eeac3e0e906024016020604051808303816000875af1158015612951573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad791906130f4565b600061298482620f4240101590565b82906129a657604051633dc311df60e01b815260040161023b91815260200190565b506129bd6129b783620f42406130e1565b84612a02565b610ad490846130e1565b80156120095760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb90604401611f8e565b6000612a1183620f4240101590565b80612a245750612a2482620f4240101590565b83839091612a4e5760405163768bf0eb60e11b81526004810192909252602482015260440161023b565b50620f42409050612a5f83856130b7565b610ad4919061310d565b6001600160a01b0382166000908152600e6020526040902054612a8d9082906130ce565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc290612adc9084815260200190565b60405180910390a25050565b606082612afd57612af882612bab565b610e78565b8151158015612b1457506001600160a01b0384163b155b15612b3d57604051639996b31560e01b81526001600160a01b038516600482015260240161023b565b5080610e78565b6001600160a01b0382166000908152601460205260408120600281015482919015801590612b8457508054640100000000900463ffffffff16620f424010155b156123465780546000906123219063ffffffff6401000000009091048116908790612a0216565b805115612bbb5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b0381168114612bd457600080fd5b60008060408385031215612bff57600080fd5b8235612c0a81612bd7565b91506020830135612c1a81612bd7565b809150509250929050565b600060208284031215612c3757600080fd5b8135610ad481612bd7565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151612cb060c084018263ffffffff169052565b5060e0830151612ccb60e08401826001600160401b03169052565b5092915050565b60008060408385031215612ce557600080fd5b8235612cf081612bd7565b946020939093013593505050565b600080600060608486031215612d1357600080fd5b8335612d1e81612bd7565b92506020840135612d2e81612bd7565b9150604084013560038110612d4257600080fd5b809150509250925092565b600080600060608486031215612d6257600080fd5b8335612d6d81612bd7565b92506020840135612d7d81612bd7565b9150604084013563ffffffff81168114612d4257600080fd5b60008060408385031215612da957600080fd5b823591506020830135612c1a81612bd7565b600080600060608486031215612dd057600080fd5b8335612ddb81612bd7565b92506020840135612deb81612bd7565b91506040840135612d4281612bd7565b634e487b7160e01b600052602160045260246000fd5b6020810160038310612e3357634e487b7160e01b600052602160045260246000fd5b91905290565b60008083601f840112612e4b57600080fd5b5081356001600160401b03811115612e6257600080fd5b602083019150836020828501011115612e7a57600080fd5b9250929050565b600080600060408486031215612e9657600080fd5b8335612ea181612bd7565b925060208401356001600160401b03811115612ebc57600080fd5b612ec886828701612e39565b9497909650939450505050565b60008060008060608587031215612eeb57600080fd5b8435612ef681612bd7565b93506020850135925060408501356001600160401b03811115612f1857600080fd5b612f2487828801612e39565b95989497509550505050565b60008060208385031215612f4357600080fd5b82356001600160401b03811115612f5957600080fd5b8301601f81018513612f6a57600080fd5b80356001600160401b03811115612f8057600080fd5b8560208260051b8401011115612f9557600080fd5b6020919091019590945092505050565b60005b83811015612fc0578181015183820152602001612fa8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561303d57603f198786030184528151805180875261301a816020890160208501612fa5565b601f01601f19169590950160209081019550938401939190910190600101612ff1565b50929695505050505050565b60006020828403121561305b57600080fd5b5035919050565b60006020828403121561307457600080fd5b8151610ad481612bd7565b60006020828403121561309157600080fd5b81518015158114610ad457600080fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610ad757610ad76130a1565b80820180821115610ad757610ad76130a1565b81810381811115610ad757610ad76130a1565b60006020828403121561310657600080fd5b5051919050565b60008261312a57634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561319c5761319c61315e565b604052919050565b600080604083850312156131b757600080fd5b823560ff811681146131c857600080fd5b915060208301356001600160401b038111156131e357600080fd5b8301601f810185136131f457600080fd5b80356001600160401b0381111561320d5761320d61315e565b613220601f8201601f1916602001613174565b81815286602083850101111561323557600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312801561326857600080fd5b50604051602081016001600160401b038111828210171561328b5761328b61315e565b604052825161329981612bd7565b81529392505050565b600060408284031280156132b557600080fd5b50604080519081016001600160401b03811182821017156132d8576132d861315e565b60405282516132e681612bd7565b815260208301516132f681612bd7565b60208201529392505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261332f57600080fd5b8301803591506001600160401b0382111561334957600080fd5b602001915036819003821315612e7a57600080fd5b82848237600083820160008152835161337b818360208801612fa5565b0195945050505050565b60008251613397818460208701612fa5565b919091019291505056fea264697066735822122038ad83d20c219353421029f1ad8c4f7667d5f0e86af1579c64603bb56827d86064736f6c634300081b00330000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca0000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","networkInteractionId":1,"nonce":591,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xdc3e61147eae510ca156b998d535ab74b7b47007e313416d6b17a88048f1f51f"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","hash":"0xdc3e61147eae510ca156b998d535ab74b7b47007e313416d6b17a88048f1f51f","networkInteractionId":1,"receipt":{"blockHash":"0x5d0f2b163e68c20fa939b3e9f4e15938d06b356a60c7ff1c52692fa839b9206b","blockNumber":82178120,"contractAddress":"0xf203161Ba7e25263deB79a4478BE18644C2c5446","logs":[{"address":"0xf203161Ba7e25263deB79a4478BE18644C2c5446","data":"0x000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f0000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea74906340000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f11000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da0000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860","logIndex":0,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x0000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd340702","0x0000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStakingExtension#HorizonStakingExtension","result":{"address":"0xf203161Ba7e25263deB79a4478BE18644C2c5446","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"PaymentsEscrow#PaymentsEscrow","constructorArgs":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa",10000,10000],"contractName":"PaymentsEscrow","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"PaymentsEscrow#PaymentsEscrow","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"PaymentsEscrow#PaymentsEscrow","networkInteraction":{"data":"0x61020060405234801561001157600080fd5b506040516120c73803806120c78339810160408190526100309161046b565b826001600160a01b03811661007a5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b2906103a1565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e5906103a1565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261011e906103a1565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b6020820152610158906103a1565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b6020820152610190906103a1565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101cb906103a1565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b6020820152610209906103a1565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b6020820152610245906103a1565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027a906103a1565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103249790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450816276a7008082111561035c57604051635c0f65a160e01b815260048101929092526024820152604401610071565b508190506276a7008082111561038e57604051635c0f65a160e01b815260048101929092526024820152604401610071565b50506101c0919091526101e05250610510565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b81526004016103dc91815260200190565b602060405180830381865afa1580156103f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041d91906104a0565b9050826001600160a01b0382166104485760405163218f5add60e11b815260040161007191906104c2565b5092915050565b80516001600160a01b038116811461046657600080fd5b919050565b60008060006060848603121561048057600080fd5b6104898461044f565b602085015160409095015190969495509392505050565b6000602082840312156104b257600080fd5b6104bb8261044f565b9392505050565b602081526000825180602084015260005b818110156104f057602081860181015160408684010152016104d3565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051611ad26105f5600039600081816101e00152610abb015260008181610193015261039d01526000505060005050600050506000505060005050600081816102fa0152818161041601528181610589015281816106380152818161076e0152818161094901528181610b2d01528181610d71015261131b01526000505060008181610fa6015261104e015260005050600081816108da01528181610eea01528181610f77015281816110c401526114130152611ad26000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806378a24c54116100a257806388e584431161007157806388e584431461021d578063ac9650d81461026e578063beb6eceb1461028e578063d4fac45d146102d2578063f213159c146102e557600080fd5b806378a24c54146101c85780637b8ae6cf146101db5780638129fc1c1461020257806387dbfe821461020a57600080fd5b80634f9d392e116100de5780634f9d392e1461016857806351cff8d91461017b5780636cd476561461018e57806371ece3aa146101b557600080fd5b8063071b214c146101105780630ee36be31461012d57806332825b811461014257806347e7ef2414610155575b600080fd5b61011a6276a70081565b6040519081526020015b60405180910390f35b61014061013b3660046116df565b6102f8565b005b6101406101503660046116df565b610414565b6101406101633660046116fa565b610587565b6101406101763660046116fa565b610636565b6101406101893660046116df565b61076c565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b6101406101c33660046116fa565b610947565b6101406101d63660046116df565b610b2b565b61011a7f000000000000000000000000000000000000000000000000000000000000000081565b610140610c61565b610140610218366004611724565b610d6f565b61025361022b366004611792565b6001602081815260009384526040808520909152918352912080549181015460029091015483565b60408051938452602084019290925290820152606001610124565b61028161027c3660046117c5565b6111ee565b6040516101249190611860565b6102bd61029c366004611792565b60006020818152928152604080822090935290815220805460019091015482565b60408051928352602083019190915201610124565b61011a6102e0366004611792565b6112d7565b6101406102f33660046118e0565b611319565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610356573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037a919061191d565b1561039857604051639e68cf0b60e01b815260040160405180910390fd5b6103c27f000000000000000000000000000000000000000000000000000000000000000042611955565b336000818152602081815260408083206001600160a01b03871680855292528083206001019490945592517f47c16ea40fc834cf4be3dc9ec160a1ff77ba18b1231e9e6886e3231c708326ff9190a350565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610496919061191d565b156104b457604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0385168452909152812060018101549091036104fa57604051638cbd172f60e01b815260040160405180910390fd5b6001810154429081811061052f57604051633c50db7960e11b8152600481019290925260248201526044015b60405180910390fd5b5050336000818152602081815260408083206001600160a01b0387168085529252808320838155600101839055519092917f3d7c3b7414bb2ce0675b85ea842ee937d10fe3b291f1cb2dc3361510bd113d9091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105e5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610609919061191d565b1561062757604051639e68cf0b60e01b815260040160405180910390fd5b6106323383836113c9565b5050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b8919061191d565b156106d657604051639e68cf0b60e01b815260040160405180910390fd5b806000036106f757604051633aff1f3760e21b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b0386168452909152812080549091839183919061072c908490611955565b90915550506040516001600160a01b0384169033907f747c06b7cbf7a0f7fcab1fdf4f7429ac2afcdf5f0af97b9ef717110eef00eb9990600090a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee919061191d565b1561080c57604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b03851684529091528120600281015490910361085457604051638cbd172f60e01b815260040160405180910390fd5b6002810154429081811061088457604051633c50db7960e11b815260048101929092526024820152604401610526565b5050600081600001548260010154116108a15781600101546108a4565b81545b9050808260000160008282546108ba9190611968565b909155505060006001830181905560028301556109016001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016338361147f565b6040518181526001600160a01b0384169033907f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb906020015b60405180910390a3505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c9919061191d565b156109e757604051639e68cf0b60e01b815260040160405180910390fd5b3360009081526001602090815260408083206001600160a01b0386168452909152812090829003610a80578060010154600003610a3757604051638cbd172f60e01b815260040160405180910390fd5b600060018201819055600282018190556040516001600160a01b0385169133917fb2486c13d5da6cdbddffe9f9ec53350f7f15033cec803877fd75ff89d734c9489190a3505050565b80548280821015610aad57604051633db4e69160e01b815260048101929092526024820152604401610526565b505060018101829055610ae07f000000000000000000000000000000000000000000000000000000000000000042611955565b600282018190556040805184815260208101929092526001600160a01b0385169133917fe0158cfeff9c2315fdbefe5851ad77d36eb492293f2b6b3861a73fb4dff82451910161093a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bad919061191d565b15610bcb57604051639e68cf0b60e01b815260040160405180910390fd5b336000908152602081815260408083206001600160a01b03851684529091528120600101549003610c0f57604051638cbd172f60e01b815260040160405180910390fd5b336000818152602081815260408083206001600160a01b0386168085529252808320600101839055519092917f988de7a3afe0d801be198872279c1fd9771d8013712ee4f00652354c8a6ec27d91a350565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610ca75750825b905060008267ffffffffffffffff166001148015610cc45750303b155b905081158015610cd2575080155b15610cf05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d1a57845460ff60401b1916600160401b1785555b610d22611531565b8315610d6857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df1919061191d565b15610e0f57604051639e68cf0b60e01b815260040160405180910390fd5b6001600160a01b038516600090815260208181526040808320338452909152902080548480821015610e5d5760405163b0b503e760e01b815260048101929092526024820152604401610526565b50506001600160a01b03808716600090815260016020908152604080832093891683529290522080548580821015610eb157604051633db4e69160e01b815260048101929092526024820152604401610526565b505084826000016000828254610ec79190611968565b9091555050805485908290600090610ee0908490611968565b90915550600090507f00000000000000000000000000000000000000000000000000000000000000006040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015610f4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f73919061197b565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663095ea7b37f00000000000000000000000000000000000000000000000000000000000000006040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018990526044016020604051808303816000875af1158015611012573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611036919061191d565b50604051633634bc1d60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636c69783a9061108b908c908b908b908b908b90600401611994565b600060405180830381600087803b1580156110a557600080fd5b505af11580156110b9573d6000803e3d6000fd5b5050505060006110e67f000000000000000000000000000000000000000000000000000000000000000090565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa15801561112c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611150919061197b565b905061115c8188611955565b821482828990919261119257604051631f82726b60e21b8152600481019390935260248301919091526044820152606401610526565b505050876001600160a01b0316896001600160a01b03167f8b0d8feeba4c6c21a8b1c772ccc0ec89892541c94a76b356c6a1035ec8f5b40d896040516111da91815260200190565b60405180910390a350505050505050505050565b6040805160008152602081019091526060908267ffffffffffffffff811115611219576112196119df565b60405190808252806020026020018201604052801561124c57816020015b60608152602001906001900390816112375790505b50915060005b838110156112ce576112a930868684818110611270576112706119f5565b90506020028101906112829190611a0b565b8560405160200161129593929190611a59565b60405160208183030381529060405261153b565b8382815181106112bb576112bb6119f5565b6020908102919091010152600101611252565b50505b92915050565b6001600160a01b03808316600090815260016020818152604080842094861684529390529181209182015482549192916113119190611968565b949350505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139b919061191d565b156113b957604051639e68cf0b60e01b815260040160405180910390fd5b6113c48383836113c9565b505050565b6001600160a01b03808416600090815260016020908152604080832093861683529290529081208054839290611400908490611955565b9091555061143a90506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633836115b1565b816001600160a01b0316836001600160a01b03167f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f628360405161093a91815260200190565b80156113c45760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044015b6020604051808303816000875af11580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f9919061191d565b6113c45760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b6044820152606401610526565b6115396115f2565b565b6060600080846001600160a01b0316846040516115589190611a80565b600060405180830381855af49150503d8060008114611593576040519150601f19603f3d011682016040523d82523d6000602084013e611598565b606091505b50915091506115a885838361163b565b95945050505050565b80156113c4576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064016114b6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661153957604051631afcd79f60e31b815260040160405180910390fd5b6060826116505761164b8261169a565b611693565b815115801561166757506001600160a01b0384163b155b1561169057604051639996b31560e01b81526001600160a01b0385166004820152602401610526565b50805b9392505050565b8051156116aa5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146116da57600080fd5b919050565b6000602082840312156116f157600080fd5b611693826116c3565b6000806040838503121561170d57600080fd5b611716836116c3565b946020939093013593505050565b60008060008060008060c0878903121561173d57600080fd5b86356003811061174c57600080fd5b955061175a602088016116c3565b9450611768604088016116c3565b93506060870135925061177d608088016116c3565b9598949750929591949360a090920135925050565b600080604083850312156117a557600080fd5b6117ae836116c3565b91506117bc602084016116c3565b90509250929050565b600080602083850312156117d857600080fd5b823567ffffffffffffffff8111156117ef57600080fd5b8301601f8101851361180057600080fd5b803567ffffffffffffffff81111561181757600080fd5b8560208260051b840101111561182c57600080fd5b6020919091019590945092505050565b60005b8381101561185757818101518382015260200161183f565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b828110156118d457603f19878603018452815180518087526118b181602089016020850161183c565b601f01601f19169590950160209081019550938401939190910190600101611888565b50929695505050505050565b6000806000606084860312156118f557600080fd5b6118fe846116c3565b925061190c602085016116c3565b929592945050506040919091013590565b60006020828403121561192f57600080fd5b8151801515811461169357600080fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156112d1576112d161193f565b818103818111156112d1576112d161193f565b60006020828403121561198d57600080fd5b5051919050565b60a08101600387106119b657634e487b7160e01b600052602160045260246000fd5b9581526001600160a01b0394851660208201526040810193909352921660608201526080015290565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611a2257600080fd5b83018035915067ffffffffffffffff821115611a3d57600080fd5b602001915036819003821315611a5257600080fd5b9250929050565b828482376000838201600081528351611a7681836020880161183c565b0195945050505050565b60008251611a9281846020870161183c565b919091019291505056fea2646970667358221220c747a690c4d61350849293110a4c3ac2070e62afe88696f58021adec428f19e564736f6c634300081b00330000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca00000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000002710","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"PaymentsEscrow#PaymentsEscrow","networkInteractionId":1,"nonce":592,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x51d4e4c47fba62927e62668113a50c544749571902b2aff50096816224ec219b"},"type":"TRANSACTION_SEND"} +{"futureId":"PaymentsEscrow#PaymentsEscrow","hash":"0x51d4e4c47fba62927e62668113a50c544749571902b2aff50096816224ec219b","networkInteractionId":1,"receipt":{"blockHash":"0x6127edf707f7a533633004ad6ee427c65b06b5e5460f588388e56a540fe758b5","blockNumber":82178135,"contractAddress":"0x09B985a2042848A08bA59060EaF0f07c6F5D4d54","logs":[{"address":"0x09B985a2042848A08bA59060EaF0f07c6F5D4d54","data":"0x000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f0000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea74906340000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f11000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da0000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860","logIndex":0,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x0000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd340702","0x0000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"PaymentsEscrow#PaymentsEscrow","result":{"address":"0x09B985a2042848A08bA59060EaF0f07c6F5D4d54","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"artifactId":"PaymentsEscrow#PaymentsEscrow_Instance","contractAddress":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","contractName":"PaymentsEscrow","dependencies":["HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow"],"futureId":"PaymentsEscrow#PaymentsEscrow_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"TAPCollector#TAPCollector","constructorArgs":["TAPCollector","1","0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa"],"contractName":"TAPCollector","dependencies":["Controller#Controller","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"TAPCollector#TAPCollector","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"TAPCollector#TAPCollector","networkInteraction":{"data":"0x6102a060405234801561001157600080fd5b506040516119ae3803806119ae833981016040819052610030916105d9565b80838361003e8260006103db565b6101205261004d8160016103db565b61014052815160208084019190912060e052815190820120610100524660a0526100da60e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60805250503060c0526001600160a01b03811661012c5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101e05260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526101649061040e565b6001600160a01b0316610160526040805180820190915260078152665374616b696e6760c81b60208201526101989061040e565b6001600160a01b03166101805260408051808201909152600d81526c47726170685061796d656e747360981b60208201526101d29061040e565b6001600160a01b03166101a05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261020d9061040e565b6001600160a01b03166101c05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b60208201526102469061040e565b6001600160a01b03166102005260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526102819061040e565b6001600160a01b0316610220526040805180820190915260118152704772617068546f6b656e4761746577617960781b60208201526102bf9061040e565b6001600160a01b03166102405260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b60208201526102fb9061040e565b6001600160a01b03166102605260408051808201909152600881526721bab930ba34b7b760c11b60208201526103309061040e565b6001600160a01b039081166102808190526101e05161018051610160516101a0516101c0516102005161022051610240516102605160408051968c168752948b166020870152928a1685850152908916606085015288166080840152871660a083015260c0820195909552935192851694918216939116917fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a439181900360e00190a45050505061081e565b60006020835110156103f7576103f0836104bc565b9050610408565b8161040284826106db565b5060ff90505b92915050565b6000806101e0516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161044991815260200190565b602060405180830381865afa158015610466573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048a9190610799565b9050826001600160a01b0382166104b55760405163218f5add60e11b815260040161012391906107e7565b5092915050565b600080829050601f815111156104e7578260405163305a27a960e01b815260040161012391906107e7565b80516104f2826107fa565b179392505050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561052b578181015183820152602001610513565b50506000910152565b600082601f83011261054557600080fd5b81516001600160401b0381111561055e5761055e6104fa565b604051601f8201601f19908116603f011681016001600160401b038111828210171561058c5761058c6104fa565b6040528181528382016020018510156105a457600080fd5b6105b5826020830160208701610510565b949350505050565b80516001600160a01b03811681146105d457600080fd5b919050565b6000806000606084860312156105ee57600080fd5b83516001600160401b0381111561060457600080fd5b61061086828701610534565b602086015190945090506001600160401b0381111561062e57600080fd5b61063a86828701610534565b925050610649604085016105bd565b90509250925092565b600181811c9082168061066657607f821691505b60208210810361068657634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156106d657806000526020600020601f840160051c810160208510156106b35750805b601f840160051c820191505b818110156106d357600081556001016106bf565b50505b505050565b81516001600160401b038111156106f4576106f46104fa565b610708816107028454610652565b8461068c565b6020601f82116001811461073c57600083156107245750848201515b600019600385901b1c1916600184901b1784556106d3565b600084815260208120601f198516915b8281101561076c578785015182556020948501946001909201910161074c565b508482101561078a5786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b6000602082840312156107ab57600080fd5b6107b4826105bd565b9392505050565b600081518084526107d3816020860160208601610510565b601f01601f19169290920160200192915050565b6020815260006107b460208301846107bb565b805160208083015191908110156106865760001960209190910360031b1b16919050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e05161020051610220516102405161026051610280516110e36108cb600039600050506000505060005050600050506000505060005050600061024f0152600050506000505060005050600061049201526000610460015260006108940152600061086c015260006107c7015260006107f10152600061081b01526110e36000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80631ef518f21461005c5780637f07d2831461008c57806384b0196e146100ad5780638821603c146100c8578063cfdb35bd146100db575b600080fd5b61006f61006a3660046109dc565b61010c565b6040516001600160a01b0390911681526020015b60405180910390f35b61009f61009a366004610b23565b610125565b604051908152602001610083565b6100b5610372565b6040516100839796959493929190610bc6565b61009f6100d6366004610c5e565b6103b8565b61009f6100e9366004610cb0565b600260209081526000938452604080852082529284528284209052825290205481565b600061011f61011a83610db8565b6103cb565b92915050565b60008060008380602001905181019061013e9190610e75565b815151919350915033906001600160a01b0381168214610189576040516347666ba360e11b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50508151516000610199846103cb565b84516020808201516060909201516001600160a01b038087166000908152600284526040808220838716835285528082209287168252919093529091205492935090916001600160801b03909116908181808211610213576040516308e467d960e31b815260048101929092526024820152604401610180565b50600090506102228284610fb1565b9050600061023082896103f2565b905081156102f3576040516343edff4160e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906387dbfe829061028e908f908a908a9088908e908990600401610fda565b600060405180830381600087803b1580156102a857600080fd5b505af11580156102bc573d6000803e3d6000fd5b5050506001600160a01b0380891660009081526002602090815260408083208a851684528252808320938b16835292905220859055505b866001600160a01b0316866001600160a01b03168d600281111561031957610319610fc4565b604080516001600160a01b038a168152602081018790529081018590527ffadd34108e3c00b000a046b272ee080bb1755b91078c0ef5200c0b7da6132bd19060600160405180910390a4509a9950505050505050505050565b600060608060008060006060610386610459565b61038e61048b565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b600061011f6103c68361102e565b6104b8565b6000806103db83600001516104b8565b90506103eb81846020015161056f565b9392505050565b600061040183620f4240101590565b80610414575061041482620f4240101590565b8383909161043e5760405163768bf0eb60e11b815260048101929092526024820152604401610180565b50620f4240905061044f838561103a565b6103eb9190611051565b60606104867f00000000000000000000000000000000000000000000000000000000000000006000610599565b905090565b60606104867f00000000000000000000000000000000000000000000000000000000000000006001610599565b600061011f7fe502a96d6aaed328ceacc76a5f627b9823162f5a205dab5a702b40073a6778428360000151846020015185604001518660600151876080015180519060200120604051602001610554969594939291909586526001600160a01b0394851660208701529290931660408501526001600160401b031660608401526001600160801b0391909116608083015260a082015260c00190565b60405160208183030381529060405280519060200120610644565b60008060008061057f8686610671565b92509250925061058f82826106be565b5090949350505050565b606060ff83146105b3576105ac8361077b565b905061011f565b8180546105bf90611073565b80601f01602080910402602001604051908101604052809291908181526020018280546105eb90611073565b80156106385780601f1061060d57610100808354040283529160200191610638565b820191906000526020600020905b81548152906001019060200180831161061b57829003601f168201915b5050505050905061011f565b600061011f6106516107ba565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600083516041036106ab5760208401516040850151606086015160001a61069d888285856108e5565b9550955095505050506106b7565b50508151600091506002905b9250925092565b60008260038111156106d2576106d2610fc4565b036106db575050565b60018260038111156106ef576106ef610fc4565b0361070d5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561072157610721610fc4565b036107425760405163fce698f760e01b815260048101829052602401610180565b600382600381111561075657610756610fc4565b03610777576040516335e2f38360e21b815260048101829052602401610180565b5050565b60606000610788836109b4565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561081357507f000000000000000000000000000000000000000000000000000000000000000046145b1561083d57507f000000000000000000000000000000000000000000000000000000000000000090565b610486604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561092057506000915060039050826109aa565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610974573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166109a0575060009250600191508290506109aa565b9250600091508190505b9450945094915050565b600060ff8216601f81111561011f57604051632cd44ac360e21b815260040160405180910390fd5b6000602082840312156109ee57600080fd5b81356001600160401b03811115610a0457600080fd5b8201604081850312156103eb57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715610a4e57610a4e610a16565b60405290565b604080519081016001600160401b0381118282101715610a4e57610a4e610a16565b604051601f8201601f191681016001600160401b0381118282101715610a9e57610a9e610a16565b604052919050565b60006001600160401b03821115610abf57610abf610a16565b50601f01601f191660200190565b600082601f830112610ade57600080fd5b8135610af1610aec82610aa6565b610a76565b818152846020838601011115610b0657600080fd5b816020850160208301376000918101602001919091529392505050565b60008060408385031215610b3657600080fd5b823560038110610b4557600080fd5b915060208301356001600160401b03811115610b6057600080fd5b610b6c85828601610acd565b9150509250929050565b60005b83811015610b91578181015183820152602001610b79565b50506000910152565b60008151808452610bb2816020860160208601610b76565b601f01601f19169290920160200192915050565b60ff60f81b8816815260e060208201526000610be560e0830189610b9a565b8281036040840152610bf78189610b9a565b606084018890526001600160a01b038716608085015260a0840186905283810360c08501528451808252602080870193509091019060005b81811015610c4d578351835260209384019390920191600101610c2f565b50909b9a5050505050505050505050565b600060208284031215610c7057600080fd5b81356001600160401b03811115610c8657600080fd5b820160a081850312156103eb57600080fd5b6001600160a01b0381168114610cad57600080fd5b50565b600080600060608486031215610cc557600080fd5b8335610cd081610c98565b92506020840135610ce081610c98565b91506040840135610cf081610c98565b809150509250925092565b6001600160401b0381168114610cad57600080fd5b6001600160801b0381168114610cad57600080fd5b600060a08284031215610d3757600080fd5b610d3f610a2c565b90508135610d4c81610c98565b81526020820135610d5c81610c98565b60208201526040820135610d6f81610cfb565b60408201526060820135610d8281610d10565b606082015260808201356001600160401b03811115610da057600080fd5b610dac84828501610acd565b60808301525092915050565b600060408236031215610dca57600080fd5b610dd2610a54565b82356001600160401b03811115610de857600080fd5b610df436828601610d25565b82525060208301356001600160401b03811115610e1057600080fd5b610e1c36828601610acd565b60208301525092915050565b600082601f830112610e3957600080fd5b8151610e47610aec82610aa6565b818152846020838601011115610e5c57600080fd5b610e6d826020830160208701610b76565b949350505050565b60008060408385031215610e8857600080fd5b82516001600160401b03811115610e9e57600080fd5b830160408186031215610eb057600080fd5b610eb8610a54565b81516001600160401b03811115610ece57600080fd5b820160a08188031215610ee057600080fd5b610ee8610a2c565b8151610ef381610c98565b81526020820151610f0381610c98565b60208201526040820151610f1681610cfb565b60408201526060820151610f2981610d10565b606082015260808201516001600160401b03811115610f4757600080fd5b610f5389828501610e28565b60808301525082525060208201516001600160401b03811115610f7557600080fd5b610f8187828501610e28565b602083810191909152959095015190969095509350505050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561011f5761011f610f9b565b634e487b7160e01b600052602160045260246000fd5b60c0810160038810610ffc57634e487b7160e01b600052602160045260246000fd5b9681526001600160a01b03958616602082015293851660408501526060840192909252909216608082015260a0015290565b600061011f3683610d25565b808202811582820484141761011f5761011f610f9b565b60008261106e57634e487b7160e01b600052601260045260246000fd5b500490565b600181811c9082168061108757607f821691505b6020821081036110a757634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212204ea11b7f590e7303a0b1850b4cd59148c357bb48498bdb2606c6e97c057012e264736f6c634300081b0033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000000000000000000000000000000000000000000c544150436f6c6c6563746f72000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013100000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"TAPCollector#TAPCollector","networkInteractionId":1,"nonce":593,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xea63076f31f70c31ffd7c170d6d50962f7f5f465c5e556d221e4de6dbdc8175e"},"type":"TRANSACTION_SEND"} +{"futureId":"TAPCollector#TAPCollector","hash":"0xea63076f31f70c31ffd7c170d6d50962f7f5f465c5e556d221e4de6dbdc8175e","networkInteractionId":1,"receipt":{"blockHash":"0x683c27716ab788fe88104bd8ab560e75e6279df88f2ce4cd4072769e69bde2b1","blockNumber":82178150,"contractAddress":"0xacC71844EF6beEF70106ABe6E51013189A1f3738","logs":[{"address":"0xacC71844EF6beEF70106ABe6E51013189A1f3738","data":"0x000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f0000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea74906340000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f11000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da0000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860","logIndex":0,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x0000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd340702","0x0000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"TAPCollector#TAPCollector","result":{"address":"0xacC71844EF6beEF70106ABe6E51013189A1f3738","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":[],"artifactId":"GraphPayments#GraphPayments","dependencies":["GraphPayments#GraphPayments"],"functionName":"initialize","futureId":"GraphPayments#encodeFunctionCall(GraphPayments#GraphPayments.initialize)","result":"0x8129fc1c","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"artifactId":"HorizonStaking#HorizonStaking","constructorArgs":["0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","0xf203161Ba7e25263deB79a4478BE18644C2c5446","0x0000000000000000000000000000000000000000"],"contractName":"HorizonStaking","dependencies":["Controller#Controller","HorizonStakingExtension#HorizonStakingExtension","GraphHorizon_Periphery#Dummy","HorizonProxies#RegisteredDummy"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","futureId":"HorizonStaking#HorizonStaking","futureType":"CONTRACT_DEPLOYMENT","libraries":{},"strategy":"basic","strategyConfig":{},"type":"DEPLOYMENT_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStaking#HorizonStaking","networkInteraction":{"data":"0x61020060405234801561001157600080fd5b50604051615b2c380380615b2c8339810160408190526100309161041b565b828181806001600160a01b03811661007d5760405163218f5add60e11b815260206004820152600a60248201526921b7b73a3937b63632b960b11b60448201526064015b60405180910390fd5b6001600160a01b0381166101005260408051808201909152600a81526923b930b8342a37b5b2b760b11b60208201526100b590610351565b6001600160a01b03166080526040805180820190915260078152665374616b696e6760c81b60208201526100e890610351565b6001600160a01b031660a05260408051808201909152600d81526c47726170685061796d656e747360981b602082015261012190610351565b6001600160a01b031660c05260408051808201909152600e81526d5061796d656e7473457363726f7760901b602082015261015b90610351565b6001600160a01b031660e05260408051808201909152600c81526b22b837b1b426b0b730b3b2b960a11b602082015261019390610351565b6001600160a01b03166101205260408051808201909152600e81526d2932bbb0b93239a6b0b730b3b2b960911b60208201526101ce90610351565b6001600160a01b0316610140526040805180820190915260118152704772617068546f6b656e4761746577617960781b602082015261020c90610351565b6001600160a01b03166101605260408051808201909152600f81526e23b930b834283937bc3ca0b236b4b760891b602082015261024890610351565b6001600160a01b03166101805260408051808201909152600881526721bab930ba34b7b760c11b602082015261027d90610351565b6001600160a01b039081166101a08190526101005160a05160805160c05160e05161012051610140516101605161018051604051988b169a9788169996909716977fef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43976103279790916001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405180910390a450506001600160a01b039081166101c052929092166101e052506104ce915050565b600080610100516001600160a01b031663f7641a5e84805190602001206040518263ffffffff1660e01b815260040161038c91815260200190565b602060405180830381865afa1580156103a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103cd919061045e565b9050826001600160a01b0382166103f85760405163218f5add60e11b81526004016100749190610480565b5092915050565b80516001600160a01b038116811461041657600080fd5b919050565b60008060006060848603121561043057600080fd5b610439846103ff565b9250610447602085016103ff565b9150610455604085016103ff565b90509250925092565b60006020828403121561047057600080fd5b610479826103ff565b9392505050565b602081526000825180602084015260005b818110156104ae5760208186018101516040868401015201610491565b506000604082850101526040601f19601f83011684010191505092915050565b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e0516155836105a960003960006102fb015260008181610dbf015281816115b60152818161166801528181612f5401528181613e120152614172015260005050600050506000505060005050600050506000612f0d015260005050600050506000505060008181610d89015281816117cd015281816125b2015281816128c80152818161295f01528181612ac00152818161380b015281816139cb01528181613d88015261401e01526155836000f3fe6080604052600436106102975760003560e01c80638cc01c861161015a578063b7ca7241116100c1578063ee6a17441161007a578063ee6a174414610b5a578063ef58bd6714610b7a578063f93f1cd014610b8f578063fb744cc014610baf578063fc54fb2714610bcf578063fecc9cc114610be7576102e9565b8063b7ca724114610a1c578063bc735d9014610ab6578063ca94b0e914610ad6578063ccebcabb14610af6578063e473522a14610b25578063e76fede614610b3a576102e9565b8063a2a3172211610113578063a2a3172214610936578063a694fc3a14610956578063a784d49814610976578063ac9650d814610996578063ad4d35b5146109c3578063ae4fe67a146109e3576102e9565b80638cc01c86146107985780639054e343146108195780639ce7abe514610839578063a02b942614610859578063a212daf814610879578063a2594d8214610916576102e9565b80634d99dd16116101fe5780637573ef4f116101b75780637573ef4f146106b25780637a766460146106d25780637c145cc71461070857806381e21b561461073857806382d66cb814610758578063872d048914610778576102e9565b80634d99dd16146105bf57806351a60b02146105df578063561285e4146105ff5780636230001a1461065257806372f2c2b5146106725780637461209214610692576102e9565b80632e17de78116102505780632e17de781461050257806339514ad2146105225780633a78b7321461054a5780633ccfd60b1461056a57806342c516931461057f5780634ca7ac221461059f576102e9565b8063010167e51461033f578063026e402b1461035f57806308ce5f681461037f57806321195373146103b2578063259bc435146103d257806325d9897e146103f2576102e9565b366102e95760405162461bcd60e51b815260206004820152601760248201527f524543454956455f4554485f4e4f545f414c4c4f57454400000000000000000060448201526064015b60405180910390fd5b3480156102f557600080fd5b506040517f00000000000000000000000000000000000000000000000000000000000000009036600082376000803683855af43d806000843e818015610339578184f35b8184fd5b005b34801561034b57600080fd5b5061033d61035a366004614caf565b610c07565b34801561036b57600080fd5b5061033d61037a366004614d11565b610cda565b34801561038b57600080fd5b5061039f61039a366004614d3d565b610dea565b6040519081526020015b60405180910390f35b3480156103be57600080fd5b5061033d6103cd366004614d76565b610dff565b3480156103de57600080fd5b5061033d6103ed366004614db7565b610ece565b3480156103fe57600080fd5b506104f561040d366004614d3d565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810191909152506001600160a01b039182166000908152601b602090815260408083209390941682529182528290208251610100810184528154815260018201549281019290925260028101549282019290925260039091015463ffffffff808216606084015264010000000082046001600160401b039081166080850152600160601b8304811660a0850152600160a01b830490911660c0840152600160c01b9091041660e082015290565b6040516103a99190614dd2565b34801561050e57600080fd5b5061033d61051d366004614e62565b610fbd565b34801561052e57600080fd5b50601a546040516001600160401b0390911681526020016103a9565b34801561055657600080fd5b5061033d610565366004614e7b565b611050565b34801561057657600080fd5b5061033d6111ec565b34801561058b57600080fd5b5061033d61059a366004614ea7565b61127e565b3480156105ab57600080fd5b5061033d6105ba366004614f04565b61142f565b3480156105cb57600080fd5b5061033d6105da366004614d11565b611529565b3480156105eb57600080fd5b5061033d6105fa366004614d3d565b6115db565b34801561060b57600080fd5b5061061f61061a366004614d3d565b611690565b6040516103a991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b34801561065e57600080fd5b5061033d61066d366004614f32565b61171e565b34801561067e57600080fd5b5061033d61068d366004614f78565b611803565b34801561069e57600080fd5b5061033d6106ad366004614d76565b611917565b3480156106be57600080fd5b5061039f6106cd366004614fd3565b6119b3565b3480156106de57600080fd5b5061039f6106ed366004614e7b565b6001600160a01b03166000908152600e602052604090205490565b34801561071457600080fd5b5061072861072336600461501a565b611a17565b60405190151581526020016103a9565b34801561074457600080fd5b5061033d610753366004615065565b611a2c565b34801561076457600080fd5b5061033d610773366004614caf565b611c38565b34801561078457600080fd5b5061039f6107933660046150bd565b611d49565b3480156107a457600080fd5b506107fe6107b3366004614e7b565b60408051808201825260008082526020918201819052825180840184528181528083018281526001600160a01b03959095168252600e90925291909120805482526004015490915290565b604080518251815260209283015192810192909252016103a9565b34801561082557600080fd5b5061039f61083436600461501a565b611d9e565b34801561084557600080fd5b5061033d6108543660046150fb565b611e86565b34801561086557600080fd5b5061039f610874366004614d76565b611fb1565b34801561088557600080fd5b5061061f61089436600461501a565b60408051608080820183526000808352602080840182905283850182905260609384018290526001600160a01b039788168252601e815284822096881682529586528381209490961686529284529381902081519283018252805483526001810154938301939093526002830154908201526003909101549181019190915290565b34801561092257600080fd5b5061033d610931366004614e7b565b612045565b34801561094257600080fd5b5061033d610951366004614d11565b612161565b34801561096257600080fd5b5061033d610971366004614e62565b6121f2565b34801561098257600080fd5b5061039f610991366004614e7b565b612283565b3480156109a257600080fd5b506109b66109b1366004615180565b61228e565b6040516103a99190615219565b3480156109cf57600080fd5b5061033d6109de366004615299565b612375565b3480156109ef57600080fd5b506107286109fe366004614e7b565b6001600160a01b031660009081526022602052604090205460ff1690565b348015610a2857600080fd5b50610a8b610a37366004614e62565b604080516060808201835260008083526020808401829052928401819052938452601d825292829020825193840183528054845260018101546001600160401b031691840191909152600201549082015290565b60408051825181526020808401516001600160401b03169082015291810151908201526060016103a9565b348015610ac257600080fd5b5061033d610ad1366004615299565b61244e565b348015610ae257600080fd5b5061033d610af1366004614d76565b6124e0565b348015610b0257600080fd5b50610b16610b1136600461501a565b612629565b604051905181526020016103a9565b348015610b3157600080fd5b5061033d61267b565b348015610b4657600080fd5b5061033d610b553660046152d9565b61274d565b348015610b6657600080fd5b5061033d610b75366004614f78565b612bf3565b348015610b8657600080fd5b5061033d612c87565b348015610b9b57600080fd5b5061039f610baa366004614d76565b612d63565b348015610bbb57600080fd5b5061039f610bca366004614d3d565b612e37565b348015610bdb57600080fd5b5060205460ff16610728565b348015610bf357600080fd5b5061033d610c02366004614d76565b612e43565b610c0f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c4c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c709190615323565b15610c8e57604051632b37d9d160e21b815260040160405180910390fd5b8484610c9b338383612f2f565b338383909192610cc157604051630c76b97b60e41b81526004016102e093929190615340565b505050610cd18786888787612ff3565b50505050505050565b610ce2612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d439190615323565b15610d6157604051632b37d9d160e21b815260040160405180910390fd5b80600003610d8257604051630a2a4e5b60e11b815260040160405180910390fd5b610db933827f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b03169190613369565b610de6827f0000000000000000000000000000000000000000000000000000000000000000836000613421565b5050565b6000610df68383613656565b90505b92915050565b8282610e0c338383612f2f565b338383909192610e3257604051630c76b97b60e41b81526004016102e093929190615340565b505050610e3d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e7a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9e9190615323565b15610ebc57604051632b37d9d160e21b815260040160405180910390fd5b610ec785858561368e565b5050505050565b610ed6612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f379190615363565b6001600160a01b0316336001600160a01b031614610f6857604051635d9044cd60e01b815260040160405180910390fd5b601a805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f9060200160405180910390a150565b610fc5612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611002573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110269190615323565b1561104457604051632b37d9d160e21b815260040160405180910390fd5b61104d8161376b565b50565b611058612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611095573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110b99190615323565b156110d757604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0381166000908152601b602090815260408083203380855292529091206003810154600160a01b810463ffffffff908116911614158061113d57506003810154600160c01b81046001600160401b039081166401000000009092041614155b156111e7576003810180546401000000006001600160401b03600160c01b63ffffffff19841663ffffffff600160a01b8604811691821792909204831684026bffffffffffffffffffffffff199095161793909317938490556040805193851684529190930490921660208201526001600160a01b0384811692908616917fa4c005afae9298a5ca51e7710c334ac406fb3d914588ade970850f917cedb1c6910160405180910390a35b505050565b6111f4612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611231573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112559190615323565b1561127357604051632b37d9d160e21b815260040160405180910390fd5b61127c3361393e565b565b611286612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e79190615323565b1561130557604051632b37d9d160e21b815260040160405180910390fd5b8383611312338383612f2f565b33838390919261133857604051630c76b97b60e41b81526004016102e093929190615340565b50505061134883620f4240101590565b839061136a57604051631504950160e21b81526004016102e091815260200190565b506001600160a01b038087166000908152601c60209081526040808320938916835292905290812084918660028111156113a6576113a6615380565b60028111156113b7576113b7615380565b81526020810191909152604001600020558360028111156113da576113da615380565b856001600160a01b0316876001600160a01b03167f3474eba30406cacbfbc5a596a7e471662bbcccf206f8d244dbb6f4cc578c52208660405161141f91815260200190565b60405180910390a4505050505050565b611437612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611474573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114989190615363565b6001600160a01b0316336001600160a01b0316146114c957604051635d9044cd60e01b815260040160405180910390fd5b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f4542960abc7f2d26dab244fc440acf511e3dd0f5cefad571ca802283b4751bbb91015b60405180910390a25050565b611531612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561156e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115929190615323565b156115b057604051632b37d9d160e21b815260040160405180910390fd5b6111e7827f000000000000000000000000000000000000000000000000000000000000000083613a37565b6115e3612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611620573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116449190615323565b1561166257604051632b37d9d160e21b815260040160405180910390fd5b610de6827f000000000000000000000000000000000000000000000000000000000000000083600080613cc8565b6116bb6040518060800160405280600081526020016000815260200160008152602001600081525090565b6116e66040518060800160405280600081526020016000815260200160008152602001600081525090565b60006116f28585613e0e565b600281015483526003810154602084015260058101546040840152600601546060830152509392505050565b611726612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117879190615323565b156117a557604051632b37d9d160e21b815260040160405180910390fd5b816000036117c657604051630a2a4e5b60e11b815260040160405180910390fd5b6117f133837f0000000000000000000000000000000000000000000000000000000000000000610da9565b6117fd84848484613421565b50505050565b61180b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190615323565b1561188a57604051632b37d9d160e21b815260040160405180910390fd5b8484611897338383612f2f565b3383839091926118bd57604051630c76b97b60e41b81526004016102e093929190615340565b50505086856118cd338383612f2f565b3383839091926118f357604051630c76b97b60e41b81526004016102e093929190615340565b50505061190189898761368e565b61190c898888613e92565b505050505050505050565b61191f612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190615323565b1561199e57604051632b37d9d160e21b815260040160405180910390fd5b6119a88382613ff6565b6111e7838383613e92565b6001600160a01b038084166000908152601c602090815260408083209386168352929052908120818360028111156119ed576119ed615380565b60028111156119fe576119fe615380565b81526020019081526020016000205490505b9392505050565b6000611a24848484612f2f565b949350505050565b611a34612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a71573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a959190615323565b15611ab357604051632b37d9d160e21b815260040160405180910390fd5b8383611ac0338383612f2f565b338383909192611ae657604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038681166000908152601b60209081526040808320938916835292905220600381015487908790600160601b90046001600160401b0316611b57576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600381015463ffffffff868116600160a01b90920416141580611b93575060038101546001600160401b03858116600160c01b9092041614155b15610cd1576003810180546001600160401b038616600160c01b026001600160c01b0363ffffffff8916600160a01b02166001600160a01b039283161717909155604051878216918916907fe89cbb9d63ba60af555547b12dde6817283e88cbdd45feb2059f2ba71ea346ba90611c27908990899063ffffffff9290921682526001600160401b0316602082015260400190565b60405180910390a350505050505050565b611c40612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ca19190615323565b15611cbf57604051632b37d9d160e21b815260040160405180910390fd5b8484611ccc338383612f2f565b338383909192611cf257604051630c76b97b60e41b81526004016102e093929190615340565b5050506001600160a01b038616600090815260226020526040902054869060ff16611d3b57604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b50610cd18786888787612ff3565b600080611d568585613656565b90506000611d64868661404c565b90506000611d7863ffffffff8616846153ac565b90506000611d86838361406f565b9050611d9281856153c3565b98975050505050505050565b6001600160a01b038084166000908152601e6020908152604080832086851684528252808320938516835292905290812060038101548203611de4576000915050611a10565b6001600160a01b038086166000908152601b60209081526040808320938816835292905290812082545b8015611e7a576000818152601d602052604090206001810154426001600160401b0390911611611e6957600283015460018401548254611e4e91906153ac565b611e5891906153d6565b611e6290856153c3565b9350611e6f565b50611e7a565b600201549050611e0e565b50909695505050505050565b82806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb9190615363565b6001600160a01b0316336001600160a01b031614611f4b5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b60405163623faf6160e01b81526001600160a01b0385169063623faf6190611f7990869086906004016153f8565b600060405180830381600087803b158015611f9357600080fd5b505af1158015611fa7573d6000803e3d6000fd5b5050505050505050565b6000611fbb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ff8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201c9190615323565b1561203a57604051632b37d9d160e21b815260040160405180910390fd5b611a24848484613a37565b80806001600160a01b031663f851a4406040518163ffffffff1660e01b81526004016020604051808303816000875af1158015612086573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120aa9190615363565b6001600160a01b0316336001600160a01b03161461210a5760405162461bcd60e51b815260206004820152601e60248201527f43616c6c6572206d757374206265207468652070726f78792061646d696e000060448201526064016102e0565b816001600160a01b03166359fc20bb6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561214557600080fd5b505af1158015612159573d6000803e3d6000fd5b505050505050565b612169612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ca9190615323565b156121e857604051632b37d9d160e21b815260040160405180910390fd5b610de68282613ff6565b6121fa612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612237573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061225b9190615323565b1561227957604051632b37d9d160e21b815260040160405180910390fd5b61104d3382613ff6565b6000610df982614086565b604080516000815260208101909152606090826001600160401b038111156122b8576122b861543a565b6040519080825280602002602001820160405280156122eb57816020015b60608152602001906001900390816122d65790505b50915060005b8381101561236d576123483086868481811061230f5761230f615450565b90506020028101906123219190615466565b85604051602001612334939291906154ac565b6040516020818303038152906040526140d1565b83828151811061235a5761235a615450565b60209081029190910101526001016122f1565b505092915050565b61237d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123de9190615323565b156123fc57604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b038216600090815260226020526040902054829060ff1661244257604051622920f760e21b81526001600160a01b0390911660048201526024016102e0565b506111e7838383614147565b612456612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612493573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124b79190615323565b156124d557604051632b37d9d160e21b815260040160405180910390fd5b6111e7838383614147565b6124e8612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612525573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125499190615323565b1561256757604051632b37d9d160e21b815260040160405180910390fd5b8060000361258857604051630a2a4e5b60e11b815260040160405180910390fd5b60006125948484613e0e565b90508181600201546125a691906153c3565b60028201556125d633837f0000000000000000000000000000000000000000000000000000000000000000610da9565b826001600160a01b0316846001600160a01b03167f673007a04e501145e79f59aea5e0413b6e88344fdaf10326254530d6a15115308460405161261b91815260200190565b60405180910390a350505050565b60408051602081019091526000815260408051602081019091526000815260006126538686613e0e565b6001600160a01b03851660009081526004909101602052604090205482525090509392505050565b612683612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e49190615363565b6001600160a01b0316336001600160a01b03161461271557604051635d9044cd60e01b815260040160405180910390fd5b600d805463ffffffff191690556040517f93be484d290d119d9cf99cce69d173c732f9403333ad84f69c807b590203d10990600090a1565b612755612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612792573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127b69190615323565b156127d457604051632b37d9d160e21b815260040160405180910390fd5b6001600160a01b0384166000908152601b60209081526040808320338085529252822090916128038784613e0e565b905060008160020154836000015461281b91906153c3565b90508087816128465760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506000612854888361406f565b9050600061286685600001548361406f565b90508015612a9d57600385015460009061288b90839063ffffffff9081169061427716565b90508881818110156128b957604051632f514d5760e21b8152600481019290925260248201526044016102e0565b50508815612950576128f8888a7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031691906142de565b876001600160a01b0316876001600160a01b03168c6001600160a01b03167f95ff4196cd75fa49180ba673948ea43935f59e7c4ba101fa09b9fe0ec266d5828c60405161294791815260200190565b60405180910390a45b61298e61295d8a84615427565b7f00000000000000000000000000000000000000000000000000000000000000005b6001600160a01b031690614319565b85546000906129a5670de0b6b3a7640000856153ac565b6129af91906153d6565b9050670de0b6b3a76400006129c48282615427565b88600101546129d391906153ac565b6129dd91906153d6565b600188015586546129ef908490615427565b87556001600160a01b038c166000908152600e6020526040902060040154612a18908490615427565b6001600160a01b038d166000908152600e60205260409020600481019190915554612a44908490615427565b6001600160a01b038d81166000818152600e60209081526040918290209490945551868152918b169290917fe7b110f13cde981d5079ab7faa4249c5f331f5c292dbc6031969d2ce694188a3910160405180910390a350505b612aa78183615427565b91508115612be75760205460ff1615612b9957612ae4827f000000000000000000000000000000000000000000000000000000000000000061297f565b6002840154600090612afe670de0b6b3a7640000856153ac565b612b0891906153d6565b9050828560020154612b1a9190615427565b6002860155670de0b6b3a7640000612b328282615427565b8660050154612b4191906153ac565b612b4b91906153d6565b60058601556040518381526001600160a01b0380891691908d16907fc5d16dbb577cf07678b577232717c9a606197a014f61847e623d47fc6bf6b7719060200160405180910390a350612be7565b856001600160a01b03168a6001600160a01b03167fdce44f0aeed2089c75db59f5a517b9a19a734bf0213412fa129f0d0434126b2484604051612bde91815260200190565b60405180910390a35b50505050505050505050565b612bfb612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612c38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c5c9190615323565b15612c7a57604051632b37d9d160e21b815260040160405180910390fd5b610ec78585858585613cc8565b612c8f612f0b565b6001600160a01b0316634fc07d756040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cf09190615363565b6001600160a01b0316336001600160a01b031614612d2157604051635d9044cd60e01b815260040160405180910390fd5b6020805460ff1916600190811782556040519081527f78bd9090b1ff40fc9c2d6056a25fb880530a766f5b0595d77f3cf33fe189c194910160405180910390a1565b6000612d6d612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612daa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dce9190615323565b15612dec57604051632b37d9d160e21b815260040160405180910390fd5b8383612df9338383612f2f565b338383909192612e1f57604051630c76b97b60e41b81526004016102e093929190615340565b505050612e2d868686614361565b9695505050505050565b6000610df6838361404c565b612e4b612f0b565b6001600160a01b0316635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eac9190615323565b15612eca57604051632b37d9d160e21b815260040160405180910390fd5b8282612ed7338383612f2f565b338383909192612efd57604051630c76b97b60e41b81526004016102e093929190615340565b505050610ec7858585613e92565b7f000000000000000000000000000000000000000000000000000000000000000090565b6000826001600160a01b0316846001600160a01b031603612f5257506001611a10565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603612fba57506001600160a01b0380831660009081526015602090815260408083209387168352929052205460ff16611a10565b506001600160a01b038083166000908152601f60209081526040808320858516845282528083209387168352929052205460ff16611a10565b6000841161301457604051630a2a4e5b60e11b815260040160405180910390fd5b81620f424063ffffffff821681101561305057604051633a50e6ff60e01b815263ffffffff9283166004820152911660248201526044016102e0565b5050601a5481906001600160401b039081169082168110156130985760405163ee5602e160e01b81526001600160401b039283166004820152911660248201526044016102e0565b50506001600160a01b038581166000908152601b6020908152604080832093871683529290522060030154600160601b90046001600160401b0316156130f157604051632b542c0d60e11b815260040160405180910390fd5b60006130fc86614086565b905084818082111561312a5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b505060405180610100016040528086815260200160008152602001600081526020018463ffffffff168152602001836001600160401b03168152602001426001600160401b031681526020018463ffffffff168152602001836001600160401b0316815250601b6000886001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548163ffffffff021916908363ffffffff16021790555060808201518160030160046101000a8154816001600160401b0302191690836001600160401b0316021790555060a082015181600301600c6101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160030160146101000a81548163ffffffff021916908363ffffffff16021790555060e08201518160030160186101000a8154816001600160401b0302191690836001600160401b031602179055509050506000600e6000886001600160a01b03166001600160a01b03168152602001908152602001600020905085816004015461330691906153c3565b60048201556040805187815263ffffffff861660208201526001600160401b038516918101919091526001600160a01b0380871691908916907f88b4c2d08cea0f01a24841ff5d14814ddb5b14ac44b05e0835fcc0dcd8c7bc2590606001611c27565b80156111e7576040516323b872dd60e01b81526001600160a01b038381166004830152306024830152604482018390528416906323b872dd906064015b6020604051808303816000875af11580156133c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133e99190615323565b6111e75760405162461bcd60e51b815260206004820152600960248201526810ba3930b739b332b960b91b60448201526064016102e0565b81670de0b6b3a7640000808210156134555760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038481166000908152601b602090815260408083209387168352929052206003015484908490600160601b90046001600160401b03166134c4576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b505060006134d28585613e0e565b33600090815260048201602052604090206002820154919250901515806135085750600382015415801561350857506006820154155b8686909161353c57604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b5050600082600201546000148061355a575082600501548360020154145b61359057826005015483600201546135729190615427565b600384015461358190876153ac565b61358b91906153d6565b613592565b845b905080158015906135a35750838110155b818590916135cd57604051635d88e8d160e01b8152600481019290925260248201526044016102e0565b50508483600201546135df91906153c3565b600284015560038301546135f49082906153c3565b600384015581546136069082906153c3565b825560405185815233906001600160a01b0388811691908a16907feaefa9a428d7aa0b99b7ac8aec4885d6304a78cc8d6a78a6c99dd29e9693cdf49060200160405180910390a450505050505050565b6001600160a01b038281166000908152601b60209081526040808320938516835292905290812060018101549054610df69190615427565b6001600160a01b038084166000908152601b602090815260408083209386168352929052908120600281015460018201549192916136d087878184868a6144d6565b8654929550935091506136e4908490615427565b845560028401829055600184018190556001600160a01b0387166000908152600e60205260408120600401805485929061371f908490615427565b92505081905550856001600160a01b0316876001600160a01b03167f9008d731ddfbec70bc364780efd63057c6877bee8027c4708a104b365395885d85604051611c2791815260200190565b33600082900361378e57604051630a2a4e5b60e11b815260040160405180910390fd5b600061379982614086565b90508281808211156137c75760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50506001600160a01b0382166000908152600e602052604081208054600d549192909163ffffffff1690819003613877576138028683615427565b835561382f85877f00000000000000000000000000000000000000000000000000000000000000006128e8565b846001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc8760405161386a91815260200190565b60405180910390a2612159565b60028301541580159061388e575082600301544310155b1561389c5761389c8561393e565b6002830154156138c6576138c36138b7846003015443614616565b84600201548389614630565b90505b8583600201546138d691906153c3565b60028401556138e581436153c3565b6003840181905560028401546040805191825260208201929092526001600160a01b038716917fa5ae833d0bb1dcd632d98a8b70973e8516812898e19bf27b70071ebc8dc52c01910160405180910390a2505050505050565b6001600160a01b0381166000908152600e602052604081206002810154909181900361397d57604051630a2a4e5b60e11b815260040160405180910390fd5b6003820154438111156139a657604051631d222f1b60e31b81526004016102e091815260200190565b50600060028301819055600383015581546139c2908290615427565b82556139ef83827f00000000000000000000000000000000000000000000000000000000000000006128e8565b826001600160a01b03167f8108595eb6bad3acefa9da467d90cc2217686d5c5ac85460f8b7849c840645fc82604051613a2a91815260200190565b60405180910390a2505050565b6000808211613a5957604051637318ad9960e01b815260040160405180910390fd5b6000613a658585613e0e565b33600090815260048201602052604090208054919250908480821015613aa75760405163ab99793560e01b8152600481019290925260248201526044016102e0565b5050600282015486908690613ae257604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000826003015483600501548460020154613aff9190615427565b613b0990876153ac565b613b1391906153d6565b905060008360050154600014613b465760058401546006850154613b3790846153ac565b613b4191906153d6565b613b48565b815b6001600160a01b038981166000908152601b60209081526040808320938c1683529290529081206003015491925090613b929064010000000090046001600160401b0316426153c3565b9050868560030154613ba49190615427565b60038601556005850154613bb99084906153c3565b60058601556006850154613bce9083906153c3565b60068601558354613be0908890615427565b80855515613c53576000856003015486600501548760020154613c039190615427565b8654613c0f91906153ac565b613c1991906153d6565b905080670de0b6b3a764000080821015613c4f5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b5050505b6000613c628a8a338686614684565b9050336001600160a01b0316896001600160a01b03168b6001600160a01b03167f50d19209821f5d69c0884b007c6ba9ffde612c0cff5dd3234d0c6baf2c4556aa87604051613cb391815260200190565b60405180910390a49998505050505050505050565b6000613cd48686613e0e565b905080600201546000141586869091613d1357604051631984edef60e31b81526001600160a01b039283166004820152911660248201526044016102e0565b50506006810154600582015460009190613d3189893384868a6144d6565b600287015492955093509150613d48908490615427565b600285015560068401829055600584018190558215613dac576001600160a01b03871615613d8157613d7c87898589613421565b613dac565b613dac33847f00000000000000000000000000000000000000000000000000000000000000006128e8565b336001600160a01b0316886001600160a01b03168a6001600160a01b03167f305f519d8909c676ffd870495d4563032eb0b506891a6dd9827490256cc9914e86604051613dfb91815260200190565b60405180910390a4505050505050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031603613e6757506001600160a01b0382166000908152601460205260409020610df9565b506001600160a01b038083166000908152602160209081526040808320938516835292905220610df9565b6001600160a01b038084166000908152601b60209081526040808320938616835292905290812090829003613eda57604051630a2a4e5b60e11b815260040160405180910390fd5b600381015484908490600160601b90046001600160401b0316613f23576040516330acea0d60e11b81526001600160a01b039283166004820152911660248201526044016102e0565b50506000613f3085614086565b9050828180821115613f5e5760405163ccaf28a960e01b8152600481019290925260248201526044016102e0565b50508154613f6d9084906153c3565b82556001600160a01b0385166000908152600e6020526040902060040154613f969084906153c3565b6001600160a01b038681166000818152600e602090815260409182902060040194909455518681529187169290917feaf6ea3a42ed2fd1b6d575f818cbda593af9524aa94bd30e65302ac4dc234745910160405180910390a35050505050565b8060000361401757604051630a2a4e5b60e11b815260040160405180910390fd5b61404233827f0000000000000000000000000000000000000000000000000000000000000000610da9565b610de68282614824565b6000806140598484613e0e565b905080600501548160020154611a249190615427565b60008183111561407f5781610df6565b5090919050565b6001600160a01b0381166000908152600e602052604081206002810154600182015460048301549254919290916140bd9190615427565b6140c79190615427565b610df99190615427565b6060600080846001600160a01b0316846040516140ee91906154d3565b600060405180830381855af49150503d8060008114614129576040519150601f19603f3d011682016040523d82523d6000602084013e61412e565b606091505b509150915061413e858383614897565b95945050505050565b336001600160a01b0384160361417057604051630123065360e01b815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036141dd573360009081526015602090815260408083206001600160a01b03871684529091529020805460ff1916821515179055614219565b336000908152601f602090815260408083206001600160a01b03868116855290835281842090871684529091529020805460ff19168215151790555b816001600160a01b0316836001600160a01b0316336001600160a01b03167faa5a59b38e8f68292982382bf635c2f263ca37137bbc52956acd808fd7bf976f8460405161426a911515815260200190565b60405180910390a4505050565b600061428683620f4240101590565b80614299575061429982620f4240101590565b838390916142c35760405163768bf0eb60e11b8152600481019290925260248201526044016102e0565b50620f424090506142d483856153ac565b610df691906153d6565b80156111e75760405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016133a6565b8015610de657604051630852cd8d60e31b8152600481018290526001600160a01b038316906342966c6890602401600060405180830381600087803b15801561214557600080fd5b60008160000361438457604051630a2a4e5b60e11b815260040160405180910390fd5b60006143908585613656565b90508083808210156143be5760405163587ab9ab60e11b8152600481019290925260248201526044016102e0565b50506001600160a01b038086166000908152601b60209081526040808320938816835292905290812060028101549091901561441857816001015485836002015461440991906153ac565b61441391906153d6565b61441a565b845b60038301549091506000906144409064010000000090046001600160401b0316426153c3565b905085836001015461445291906153c3565b600184015560028301546144679083906153c3565b6002840155600061447b8989818686614684565b9050876001600160a01b0316896001600160a01b03167f3b81913739097ced1e7fa748c6058d34e2c00b961fb501094543b397b198fdaa896040516144c291815260200190565b60405180910390a398975050505050505050565b6001600160a01b038087166000908152601e6020908152604080832089851684528252808320938816835292905290812060038101548291829161452d576040516307e332c560e31b815260040160405180910390fd5b6000808061457e6148f3614908614a43868e8e604051602001614563939291909283526020830191909152604082015260600190565b60408051601f1981840301815291905288939291908d614a6d565b915091508080602001905181019061459691906154ef565b809b50819c508295505050508a6001600160a01b03168c6001600160a01b03168e6001600160a01b03167f9de822a9c144d03cad4a18bc322e9a3d91ffa99463d22e5c25da2a41d4c354d585876040516145fa929190918252602082015260400190565b60405180910390a450909b979a50959850959650505050505050565b6000818311614626576000610df6565b610df68284615427565b600061463c82856153c3565b600161464884876153c3565b6146529190615427565b61465c84866153ac565b61466687896153ac565b61467091906153c3565b61467a91906153c3565b61413e91906153d6565b6001600160a01b038086166000908152601e6020908152604080832088851684528252808320938716835292905290812060038101546064116146da5760405163332b852b60e11b815260040160405180910390fd5b60028101546040516bffffffffffffffffffffffff1960608a811b8216602084015289811b8216603484015288901b166048820152605c810191909152600090607c0160408051808303601f1901815282825280516020918201206060840183528884526001600160401b038881168386019081526000868601818152848252601d9095529490942094518555925160018501805467ffffffffffffffff19169190941617909255516002909201919091556003830154909150156147b35760018201546000908152601d602052604090206002018190555b6147bd8282614b27565b604080518681526001600160401b03861660208201529081018290526001600160a01b0380881691898216918b16907f434422e55cc9ab3bcca23cbf515724bbad83af8dd645832a1abd3db5e641dea59060600160405180910390a4979650505050505050565b6001600160a01b0382166000908152600e60205260409020546148489082906153c3565b6001600160a01b0383166000818152600e6020526040908190209290925590517f0a7bb2e28cc4698aac06db79cf9163bfcc20719286cf59fa7d492ceda1b8edc29061151d9084815260200190565b6060826148ac576148a782614bba565b611a10565b81511580156148c357506001600160a01b0384163b155b156148ec57604051639996b31560e01b81526001600160a01b03851660048201526024016102e0565b5080611a10565b6000908152601d602052604090206002015490565b6000828152601d60205260408120600181015460609190426001600160401b03909116111561494b57505060408051602081019091526000815260019150614a3c565b60008060008680602001905181019061496491906154ef565b92509250925060008183866000015461497d91906153ac565b61498791906153d6565b90506149938184615427565b85549093506149a29083615427565b91506149ae81856153c3565b855460018701546040805185815260208101939093526001600160401b0390911682820152519195508a917f65662212afe828a9d3832eda69b6b7b2fb6a756c0f2a7420bf8b290dad84470f9181900360600190a260408051602081018690529081018490526060810183905260800160405160208183030381529060405297506000889650965050505050505b9250929050565b6000908152601d6020526040812081815560018101805467ffffffffffffffff1916905560020155565b600060608760030154831115614a9657604051634a411b9d60e11b815260040160405180910390fd5b60008315614aa45783614aaa565b88600301545b89549094505b8015801590614abf5750600085115b15614b1857600080614ad583898c63ffffffff16565b915091508115614ae6575050614b18565b965086614af48c8c8b614be3565b925086614b008161551d565b9750508380614b0e90615534565b9450505050614ab0565b50989397509295505050505050565b612710826003015410614b4d576040516303a8c56b60e61b815260040160405180910390fd5b80614b6b57604051638f4a893d60e01b815260040160405180910390fd5b6001808301829055600283018054600090614b879084906153c3565b90915550506003820154600003614b9c578082555b6001826003016000828254614bb191906153c3565b90915550505050565b805115614bca5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b600080846003015411614c095760405163ddaf8f2160e01b815260040160405180910390fd5b6000614c1c85600001548563ffffffff16565b9050614c2f85600001548463ffffffff16565b6001856003016000828254614c449190615427565b90915550508085556003850154600003614c6057600060018601555b5050915492915050565b6001600160a01b038116811461104d57600080fd5b803563ffffffff81168114614c9357600080fd5b919050565b80356001600160401b0381168114614c9357600080fd5b600080600080600060a08688031215614cc757600080fd5b8535614cd281614c6a565b94506020860135614ce281614c6a565b935060408601359250614cf760608701614c7f565b9150614d0560808701614c98565b90509295509295909350565b60008060408385031215614d2457600080fd5b8235614d2f81614c6a565b946020939093013593505050565b60008060408385031215614d5057600080fd5b8235614d5b81614c6a565b91506020830135614d6b81614c6a565b809150509250929050565b600080600060608486031215614d8b57600080fd5b8335614d9681614c6a565b92506020840135614da681614c6a565b929592945050506040919091013590565b600060208284031215614dc957600080fd5b610df682614c98565b60006101008201905082518252602083015160208301526040830151604083015263ffffffff60608401511660608301526001600160401b0360808401511660808301526001600160401b0360a08401511660a083015260c0830151614e4060c084018263ffffffff169052565b5060e0830151614e5b60e08401826001600160401b03169052565b5092915050565b600060208284031215614e7457600080fd5b5035919050565b600060208284031215614e8d57600080fd5b8135611a1081614c6a565b803560038110614c9357600080fd5b60008060008060808587031215614ebd57600080fd5b8435614ec881614c6a565b93506020850135614ed881614c6a565b9250614ee660408601614e98565b9396929550929360600135925050565b801515811461104d57600080fd5b60008060408385031215614f1757600080fd5b8235614f2281614c6a565b91506020830135614d6b81614ef6565b60008060008060808587031215614f4857600080fd5b8435614f5381614c6a565b93506020850135614f6381614c6a565b93969395505050506040820135916060013590565b600080600080600060a08688031215614f9057600080fd5b8535614f9b81614c6a565b94506020860135614fab81614c6a565b93506040860135614fbb81614c6a565b94979396509394606081013594506080013592915050565b600080600060608486031215614fe857600080fd5b8335614ff381614c6a565b9250602084013561500381614c6a565b915061501160408501614e98565b90509250925092565b60008060006060848603121561502f57600080fd5b833561503a81614c6a565b9250602084013561504a81614c6a565b9150604084013561505a81614c6a565b809150509250925092565b6000806000806080858703121561507b57600080fd5b843561508681614c6a565b9350602085013561509681614c6a565b92506150a460408601614c7f565b91506150b260608601614c98565b905092959194509250565b6000806000606084860312156150d257600080fd5b83356150dd81614c6a565b925060208401356150ed81614c6a565b915061501160408501614c7f565b60008060006040848603121561511057600080fd5b833561511b81614c6a565b925060208401356001600160401b0381111561513657600080fd5b8401601f8101861361514757600080fd5b80356001600160401b0381111561515d57600080fd5b86602082840101111561516f57600080fd5b939660209190910195509293505050565b6000806020838503121561519357600080fd5b82356001600160401b038111156151a957600080fd5b8301601f810185136151ba57600080fd5b80356001600160401b038111156151d057600080fd5b8560208260051b84010111156151e557600080fd5b6020919091019590945092505050565b60005b838110156152105781810151838201526020016151f8565b50506000910152565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b8281101561528d57603f198786030184528151805180875261526a8160208901602085016151f5565b601f01601f19169590950160209081019550938401939190910190600101615241565b50929695505050505050565b6000806000606084860312156152ae57600080fd5b83356152b981614c6a565b925060208401356152c981614c6a565b9150604084013561505a81614ef6565b600080600080608085870312156152ef57600080fd5b84356152fa81614c6a565b93506020850135925060408501359150606085013561531881614c6a565b939692955090935050565b60006020828403121561533557600080fd5b8151611a1081614ef6565b6001600160a01b0393841681529183166020830152909116604082015260600190565b60006020828403121561537557600080fd5b8151611a1081614c6a565b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610df957610df9615396565b80820180821115610df957610df9615396565b6000826153f357634e487b7160e01b600052601260045260246000fd5b500490565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b81810381811115610df957610df9615396565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e1984360301811261547d57600080fd5b8301803591506001600160401b0382111561549757600080fd5b602001915036819003821315614a3c57600080fd5b8284823760008382016000815283516154c98183602088016151f5565b0195945050505050565b600082516154e58184602087016151f5565b9190910192915050565b60008060006060848603121561550457600080fd5b5050815160208301516040909301519094929350919050565b60008161552c5761552c615396565b506000190190565b60006001820161554657615546615396565b506001019056fea264697066735822122006c6e4bfdc1de64a080ef26443cebb679f74b45bd0aaa62e574320a49283676164736f6c634300081b00330000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca000000000000000000000000f203161ba7e25263deb79a4478be18644c2c54460000000000000000000000000000000000000000000000000000000000000000","id":1,"type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStaking#HorizonStaking","networkInteractionId":1,"nonce":594,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xe526d7a57dfcc3b35230960b0593a00429db265e885d76401885b5365d11ad82"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonStaking#HorizonStaking","hash":"0xe526d7a57dfcc3b35230960b0593a00429db265e885d76401885b5365d11ad82","networkInteractionId":1,"receipt":{"blockHash":"0x00aa4ab5d6b7e6d197d4e4a85b88f7663d5576fb0db3cef71211da87839c2aed","blockNumber":82178167,"contractAddress":"0xFf2Ee30de92F276018642A59Fb7Be95b3F9088Af","logs":[{"address":"0xFf2Ee30de92F276018642A59Fb7Be95b3F9088Af","data":"0x000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f0000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea74906340000000000000000000000007975475801bef845f10ce7784dc69ab1e0344f11000000000000000000000000fa8c011255e691aeeb57caa63ccd181e93befe75000000000000000000000000dc427a9ad72c0d9636c7b375e14c3dc39ffaf35d0000000000000000000000000eb1325d7f1a188d5914fddb8566ae513a28d0da0000000000000000000000004594a5915b3aaa78cdf6273a76678855ca675860","logIndex":2,"topics":["0xef5021414834d86e36470f5c1cecf6544fb2bb723f2ca51a4c86fcd8c5919a43","0x0000000000000000000000001a1af8b44fd59dd2bbeb456d1b7604c7bd340702","0x0000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","0x0000000000000000000000004dbe1b10bc15d0f53ff508be01942198262ddfca"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStaking#HorizonStaking","result":{"address":"0xFf2Ee30de92F276018642A59Fb7Be95b3F9088Af","type":"SUCCESS"},"type":"DEPLOYMENT_EXECUTION_STATE_COMPLETE"} +{"args":[],"artifactId":"PaymentsEscrow#PaymentsEscrow","dependencies":["PaymentsEscrow#PaymentsEscrow"],"functionName":"initialize","futureId":"PaymentsEscrow#encodeFunctionCall(PaymentsEscrow#PaymentsEscrow.initialize)","result":"0x8129fc1c","strategy":"basic","strategyConfig":{},"type":"ENCODE_FUNCTION_CALL_EXECUTION_STATE_INITIALIZE"} +{"args":["0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","0xf5B3661BbB8CD48571C7f41ba2D896a3589C9753","0x8129fc1c"],"artifactId":"HorizonProxies#ProxyAdmin_GraphPayments","contractAddress":"0xbb29b876AA2faCEb3af83d768CB03dd3BFF03f5e","dependencies":["HorizonProxies#ProxyAdmin_GraphPayments","HorizonProxies#TransparentUpgradeableProxy_GraphPayments","GraphPayments#GraphPayments","GraphPayments#encodeFunctionCall(GraphPayments#GraphPayments.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"upgradeAndCall","futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","networkInteraction":{"data":"0x9623609d000000000000000000000000c2d72de802dedc8a539f7fd9ff39ad1aa89f7b3f000000000000000000000000f5b3661bbb8cd48571c7f41ba2d896a3589c9753000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000","id":1,"to":"0xbb29b876AA2faCEb3af83d768CB03dd3BFF03f5e","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","networkInteractionId":1,"nonce":595,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xed1cf6b814c8a31532b003821d02f969f902b550cd17a4df4f1119963222ff8f"},"type":"TRANSACTION_SEND"} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","hash":"0xed1cf6b814c8a31532b003821d02f969f902b550cd17a4df4f1119963222ff8f","networkInteractionId":1,"receipt":{"blockHash":"0xa69bfc6af51ef4a1230b0cbaa09adcecf9ad2216d6f5c4c3a373bd0ebfee8ef8","blockNumber":82178183,"logs":[{"address":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","data":"0x","logIndex":0,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x000000000000000000000000f5b3661bbb8cd48571c7f41ba2d896a3589c9753"]},{"address":"0xC2D72de802deDC8A539F7FD9fF39aD1aA89F7b3f","data":"0x0000000000000000000000000000000000000000000000000000000000000001","logIndex":1,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"GraphPayments#HorizonProxies~ProxyAdmin_GraphPayments.upgradeAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","0xFf2Ee30de92F276018642A59Fb7Be95b3F9088Af"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","HorizonProxies#GraphProxy_HorizonStaking","HorizonStaking#HorizonStaking"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"upgrade","futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","networkInteraction":{"data":"0x99a88ec40000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf000000000000000000000000ff2ee30de92f276018642a59fb7be95b3f9088af","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","networkInteractionId":1,"nonce":596,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x7cf329f1474b4fe182d4364502f16e2b42ae1670df0a0b92efdf02f130612a28"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","hash":"0x7cf329f1474b4fe182d4364502f16e2b42ae1670df0a0b92efdf02f130612a28","networkInteractionId":1,"receipt":{"blockHash":"0x6a5bdf09bd426cb6eff2de4b276f8f7651b9f3545e439f1a09940361fc6d0db7","blockNumber":82178196,"logs":[{"address":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","data":"0x","logIndex":1,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ff2ee30de92f276018642a59fb7be95b3f9088af"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","0x09B985a2042848A08bA59060EaF0f07c6F5D4d54","0x8129fc1c"],"artifactId":"HorizonProxies#ProxyAdmin_PaymentsEscrow","contractAddress":"0x6D892d831196E1Ad3779B97320b7091dE7d45053","dependencies":["HorizonProxies#ProxyAdmin_PaymentsEscrow","HorizonProxies#TransparentUpgradeableProxy_PaymentsEscrow","PaymentsEscrow#PaymentsEscrow","PaymentsEscrow#encodeFunctionCall(PaymentsEscrow#PaymentsEscrow.initialize)"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"upgradeAndCall","futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","networkInteraction":{"data":"0x9623609d0000000000000000000000005904ab9c7806fcc7634f1dcdbec544eea749063400000000000000000000000009b985a2042848a08ba59060eaf0f07c6f5d4d54000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000048129fc1c00000000000000000000000000000000000000000000000000000000","id":1,"to":"0x6D892d831196E1Ad3779B97320b7091dE7d45053","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","networkInteractionId":1,"nonce":597,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x7f98e4168aa1e6306b2f3c93e340752a0cbaba45cc354d7a2703b943e5a370b4"},"type":"TRANSACTION_SEND"} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","hash":"0x7f98e4168aa1e6306b2f3c93e340752a0cbaba45cc354d7a2703b943e5a370b4","networkInteractionId":1,"receipt":{"blockHash":"0x6b4134d93d6088ca8f3c0c972217fc205da35723b88fc2c626a366cfae70b5da","blockNumber":82178210,"logs":[{"address":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","data":"0x","logIndex":0,"topics":["0xbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b","0x00000000000000000000000009b985a2042848a08ba59060eaf0f07c6f5d4d54"]},{"address":"0x5904ab9c7806FCC7634F1DcDBec544eEa7490634","data":"0x0000000000000000000000000000000000000000000000000000000000000001","logIndex":1,"topics":["0xc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"PaymentsEscrow#HorizonProxies~ProxyAdmin_PaymentsEscrow.upgradeAndCall","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":["0xFf2Ee30de92F276018642A59Fb7Be95b3F9088Af","0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf"],"artifactId":"GraphProxyAdmin#GraphProxyAdmin","contractAddress":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","dependencies":["GraphProxyAdmin#GraphProxyAdmin","HorizonStaking#HorizonStaking","HorizonProxies#GraphProxy_HorizonStaking","HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.upgrade"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"acceptProxy","futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","networkInteraction":{"data":"0xeb451a02000000000000000000000000ff2ee30de92f276018642a59fb7be95b3f9088af0000000000000000000000003f53f9f9a5d7f36dcc869f8d2f227499c411c0cf","id":1,"to":"0x0eb1325d7F1a188D5914fddb8566aE513A28D0da","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","networkInteractionId":1,"nonce":598,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x35fbdfb81b5a57e9dfd298d6b34183a2c34a929f83149518964bff0e6eefb8da"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","hash":"0x35fbdfb81b5a57e9dfd298d6b34183a2c34a929f83149518964bff0e6eefb8da","networkInteractionId":1,"receipt":{"blockHash":"0xe266d5efaaf677777116f93a2f74d85ba61e8da75da4e8ed8f4856bfc382faf5","blockNumber":82178231,"logs":[{"address":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","data":"0x","logIndex":0,"topics":["0xaa3f731066a578e5f39b4215468d826cdd15373cbc0dfc9cb9bdc649718ef7da","0x0000000000000000000000000000000000000000000000000000000000000000","0x000000000000000000000000ff2ee30de92f276018642a59fb7be95b3f9088af"]},{"address":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","data":"0x","logIndex":1,"topics":["0x980c0d30fe97457c47903527d88b7009a1643be6de24d2af664214919f0540a1","0x000000000000000000000000ff2ee30de92f276018642a59fb7be95b3f9088af","0x0000000000000000000000000000000000000000000000000000000000000000"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"artifactId":"HorizonStaking#HorizonStaking_Instance","contractAddress":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","contractName":"HorizonStaking","dependencies":["HorizonStaking#GraphProxyAdmin~GraphProxyAdmin.acceptProxy","HorizonProxies#GraphProxy_HorizonStaking"],"futureId":"HorizonStaking#HorizonStaking_Instance","futureType":"CONTRACT_AT","strategy":"basic","strategyConfig":{},"type":"CONTRACT_AT_EXECUTION_STATE_INITIALIZE"} +{"args":[2419200],"artifactId":"HorizonStaking#HorizonStaking_Instance","contractAddress":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","dependencies":["HorizonStaking#HorizonStaking_Instance"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setMaxThawingPeriod","futureId":"HorizonStaking#HorizonStaking_Instance.setMaxThawingPeriod","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"HorizonStaking#HorizonStaking_Instance.setMaxThawingPeriod","networkInteraction":{"data":"0x259bc435000000000000000000000000000000000000000000000000000000000024ea00","id":1,"to":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"HorizonStaking#HorizonStaking_Instance.setMaxThawingPeriod","networkInteractionId":1,"nonce":601,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0x9fd8876526dfaba8d3a68beec3849237f3c28e5f1456bec14dc462633b3c14b5"},"type":"TRANSACTION_SEND"} +{"futureId":"HorizonStaking#HorizonStaking_Instance.setMaxThawingPeriod","hash":"0x9fd8876526dfaba8d3a68beec3849237f3c28e5f1456bec14dc462633b3c14b5","networkInteractionId":1,"receipt":{"blockHash":"0xcd3553308f6e624653fa73232c1576e4e71fc925645eed70469412d5e3b2561b","blockNumber":83711037,"logs":[{"address":"0x3F53F9f9a5d7F36dCC869f8D2F227499c411c0cf","data":"0x000000000000000000000000000000000000000000000000000000000024ea00","logIndex":6,"topics":["0xe8526be46fa99b6313d439293c9be3491ffb067741bc8fce9d30c270cbb8459f"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"HorizonStaking#HorizonStaking_Instance.setMaxThawingPeriod","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} +{"args":[false],"artifactId":"Controller#Controller","contractAddress":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","dependencies":["Controller#Controller"],"from":"0xade6b8eb69a49b56929c1d4f4b428d791861db6f","functionName":"setPaused","futureId":"Controller#Controller.setPaused","strategy":"basic","strategyConfig":{},"type":"CALL_EXECUTION_STATE_INITIALIZE","value":{"_kind":"bigint","value":"0"}} +{"futureId":"Controller#Controller.setPaused","networkInteraction":{"data":"0x16c38b3c0000000000000000000000000000000000000000000000000000000000000000","id":1,"to":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","type":"ONCHAIN_INTERACTION","value":{"_kind":"bigint","value":"0"}},"type":"NETWORK_INTERACTION_REQUEST"} +{"futureId":"Controller#Controller.setPaused","networkInteractionId":1,"nonce":602,"transaction":{"fees":{"maxFeePerGas":{"_kind":"bigint","value":"200000000"},"maxPriorityFeePerGas":{"_kind":"bigint","value":"0"}},"hash":"0xd75a4e87b6a1b53ab1d9e9c010fc33ad70bb11812a9c7b7f2a590cfbf9fa82b6"},"type":"TRANSACTION_SEND"} +{"futureId":"Controller#Controller.setPaused","hash":"0xd75a4e87b6a1b53ab1d9e9c010fc33ad70bb11812a9c7b7f2a590cfbf9fa82b6","networkInteractionId":1,"receipt":{"blockHash":"0x7a0e9751569815a889ab35f9384aa9784369c8a50f4a3d8fb23568093e1ff514","blockNumber":83746020,"logs":[{"address":"0x4DbE1B10bc15D0F53fF508BE01942198262ddfCa","data":"0x0000000000000000000000000000000000000000000000000000000000000000","logIndex":3,"topics":["0x8fb6c181ee25a520cf3dd6565006ef91229fcfe5a989566c2a3b8c115570cec5"]}],"status":"SUCCESS"},"type":"TRANSACTION_CONFIRM"} +{"futureId":"Controller#Controller.setPaused","result":{"type":"SUCCESS"},"type":"CALL_EXECUTION_STATE_COMPLETE"} \ No newline at end of file diff --git a/packages/horizon/ignition/modules/core.ts b/packages/horizon/ignition/modules/core.ts new file mode 100644 index 000000000..eb949e475 --- /dev/null +++ b/packages/horizon/ignition/modules/core.ts @@ -0,0 +1,15 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphPaymentsModule from './core/GraphPayments' +import HorizonStakingModule from './core/HorizonStaking' +import PaymentsEscrowModule from './core/PaymentsEscrow' +import TAPCollectorModule from './core/TAPCollector' + +export default buildModule('GraphHorizon_Core', (m) => { + const { HorizonStaking } = m.useModule(HorizonStakingModule) + const { GraphPayments } = m.useModule(GraphPaymentsModule) + const { PaymentsEscrow } = m.useModule(PaymentsEscrowModule) + const { TAPCollector } = m.useModule(TAPCollectorModule) + + return { HorizonStaking, GraphPayments, PaymentsEscrow, TAPCollector } +}) diff --git a/packages/horizon/ignition/modules/core/GraphPayments.ts b/packages/horizon/ignition/modules/core/GraphPayments.ts new file mode 100644 index 000000000..43fcf5b55 --- /dev/null +++ b/packages/horizon/ignition/modules/core/GraphPayments.ts @@ -0,0 +1,31 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphPeripheryModule from '../periphery' +import HorizonProxiesModule from './HorizonProxies' + +import GraphPaymentsArtifact from '../../../build/contracts/contracts/payments/GraphPayments.sol/GraphPayments.json' + +// TODO: transfer ownership of ProxyAdmin??? +export default buildModule('GraphPayments', (m) => { + const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) + const { GraphPaymentsProxyAdmin, GraphPaymentsProxy, HorizonRegistered } = m.useModule(HorizonProxiesModule) + + const protocolPaymentCut = m.getParameter('protocolPaymentCut') + + // Deploy GraphPayments implementation + const GraphPaymentsImplementation = m.contract('GraphPayments', + GraphPaymentsArtifact, + [Controller, protocolPaymentCut], + { + after: [PeripheryRegistered, HorizonRegistered], + }, + ) + + // Upgrade proxy to implementation contract + m.call(GraphPaymentsProxyAdmin, 'upgradeAndCall', [GraphPaymentsProxy, GraphPaymentsImplementation, m.encodeFunctionCall(GraphPaymentsImplementation, 'initialize', [])]) + + // Load contract with implementation ABI + const GraphPayments = m.contractAt('GraphPayments', GraphPaymentsArtifact, GraphPaymentsProxy, { id: 'GraphPayments_Instance' }) + + return { GraphPayments } +}) diff --git a/packages/horizon/ignition/modules/core/HorizonProxies.ts b/packages/horizon/ignition/modules/core/HorizonProxies.ts new file mode 100644 index 000000000..8656571af --- /dev/null +++ b/packages/horizon/ignition/modules/core/HorizonProxies.ts @@ -0,0 +1,42 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' +import { deployWithOZProxy } from '../proxy/TransparentUpgradeableProxy' +import { ethers } from 'ethers' + +import GraphPeripheryModule from '../periphery' +import GraphProxyAdminModule from '../periphery/GraphProxyAdmin' + +import DummyArtifact from '../../../build/contracts/contracts/mocks/Dummy.sol/Dummy.json' +import GraphProxyArtifact from '@graphprotocol/contracts/build/contracts/contracts/upgrades/GraphProxy.sol/GraphProxy.json' + +const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000' + +// HorizonStaking, GraphPayments and PaymentsEscrow use GraphDirectory but they also in the directory. +// So we need to deploy their proxies, register them in the controller before being able to deploy the implementations +export default buildModule('HorizonProxies', (m) => { + const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) + const { GraphProxyAdmin } = m.useModule(GraphProxyAdminModule) + + // Deploy HorizonStaking proxy without an implementation + const HorizonStakingProxy = m.contract('GraphProxy', GraphProxyArtifact, [ZERO_ADDRESS, GraphProxyAdmin], { after: [PeripheryRegistered], id: 'GraphProxy_HorizonStaking' }) + + // Deploy proxies for payments contracts using OZ TransparentUpgradeableProxy + const { Proxy: GraphPaymentsProxy, ProxyAdmin: GraphPaymentsProxyAdmin } = deployWithOZProxy(m, 'GraphPayments') + const { Proxy: PaymentsEscrowProxy, ProxyAdmin: PaymentsEscrowProxyAdmin } = deployWithOZProxy(m, 'PaymentsEscrow') + + // Register the proxies in the controller + const setProxyHorizonStaking = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('Staking')), HorizonStakingProxy], { id: 'setContractProxy_HorizonStaking' }) + const setProxyGraphPayments = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphPayments')), GraphPaymentsProxy], { id: 'setContractProxy_GraphPayments' }) + const setProxyPaymentsEscrow = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('PaymentsEscrow')), PaymentsEscrowProxy], { id: 'setContractProxy_PaymentsEscrow' }) + + // Deploy dummy contract to signal that all periphery contracts are registered + const HorizonRegistered = m.contract('Dummy', DummyArtifact, [], { + id: 'RegisteredDummy', + after: [ + setProxyHorizonStaking, + setProxyGraphPayments, + setProxyPaymentsEscrow, + ], + }) + + return { HorizonStakingProxy, GraphPaymentsProxy, PaymentsEscrowProxy, HorizonRegistered, GraphPaymentsProxyAdmin, PaymentsEscrowProxyAdmin } +}) diff --git a/packages/horizon/ignition/modules/core/HorizonStaking.ts b/packages/horizon/ignition/modules/core/HorizonStaking.ts new file mode 100644 index 000000000..c412af887 --- /dev/null +++ b/packages/horizon/ignition/modules/core/HorizonStaking.ts @@ -0,0 +1,38 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphPeripheryModule from '../periphery' +import HorizonProxiesModule from './HorizonProxies' +import HorizonStakingExtensionModule from './HorizonStakingExtension' + +import HorizonStakingArtifact from '../../../build/contracts/contracts/staking/HorizonStaking.sol/HorizonStaking.json' + +export default buildModule('HorizonStaking', (m) => { + const { Controller, GraphProxyAdmin, PeripheryRegistered } = m.useModule(GraphPeripheryModule) + const { HorizonStakingProxy, HorizonRegistered } = m.useModule(HorizonProxiesModule) + const { HorizonStakingExtension } = m.useModule(HorizonStakingExtensionModule) + + const subgraphServiceAddress = m.getParameter('subgraphServiceAddress') + + // Deploy HorizonStaking implementation + const HorizonStakingImplementation = m.contract('HorizonStaking', + HorizonStakingArtifact, + [ + Controller, + HorizonStakingExtension, + subgraphServiceAddress, + ], + { + after: [PeripheryRegistered, HorizonRegistered], + }, + ) + + // Upgrade proxy to implementation contract + const upgradeCall = m.call(GraphProxyAdmin, 'upgrade', [HorizonStakingProxy, HorizonStakingImplementation]) + const acceptCall = m.call(GraphProxyAdmin, 'acceptProxy', [HorizonStakingImplementation, HorizonStakingProxy], { after: [upgradeCall] }) + + // Load contract with implementation ABI + const HorizonStaking = m.contractAt('HorizonStaking', HorizonStakingArtifact, HorizonStakingProxy, { after: [acceptCall], id: 'HorizonStaking_Instance' }) + m.call(HorizonStaking, 'setMaxThawingPeriod', [m.getParameter('maxThawingPeriod')]) + + return { HorizonStakingProxy, HorizonStakingImplementation, HorizonStaking } +}) diff --git a/packages/horizon/ignition/modules/core/HorizonStakingExtension.ts b/packages/horizon/ignition/modules/core/HorizonStakingExtension.ts new file mode 100644 index 000000000..f1da04286 --- /dev/null +++ b/packages/horizon/ignition/modules/core/HorizonStakingExtension.ts @@ -0,0 +1,26 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphPeripheryModule from '../periphery' +import HorizonProxiesModule from './HorizonProxies' + +import ExponentialRebatesArtifact from '../../../build/contracts/contracts/staking/libraries/ExponentialRebates.sol/ExponentialRebates.json' +import HorizonStakingExtensionArtifact from '../../../build/contracts/contracts/staking/HorizonStakingExtension.sol/HorizonStakingExtension.json' + +export default buildModule('HorizonStakingExtension', (m) => { + const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) + const { HorizonRegistered } = m.useModule(HorizonProxiesModule) + + const subgraphServiceAddress = m.getParameter('subgraphServiceAddress') + + const ExponentialRebates = m.library('ExponentialRebates', ExponentialRebatesArtifact) + const HorizonStakingExtension = m.contract('HorizonStakingExtension', + HorizonStakingExtensionArtifact, + [Controller, subgraphServiceAddress], { + libraries: { + ExponentialRebates: ExponentialRebates, + }, + after: [PeripheryRegistered, HorizonRegistered], + }) + + return { HorizonStakingExtension } +}) diff --git a/packages/horizon/ignition/modules/core/PaymentsEscrow.ts b/packages/horizon/ignition/modules/core/PaymentsEscrow.ts new file mode 100644 index 000000000..1dbd07088 --- /dev/null +++ b/packages/horizon/ignition/modules/core/PaymentsEscrow.ts @@ -0,0 +1,32 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphPeripheryModule from '../periphery' +import HorizonProxiesModule from './HorizonProxies' + +import PaymentsEscrowArtifact from '../../../build/contracts/contracts/payments/PaymentsEscrow.sol/PaymentsEscrow.json' + +// TODO: transfer ownership of ProxyAdmin??? +export default buildModule('PaymentsEscrow', (m) => { + const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) + const { PaymentsEscrowProxyAdmin, PaymentsEscrowProxy, HorizonRegistered } = m.useModule(HorizonProxiesModule) + + const revokeCollectorThawingPeriod = m.getParameter('revokeCollectorThawingPeriod') + const withdrawEscrowThawingPeriod = m.getParameter('withdrawEscrowThawingPeriod') + + // Deploy PaymentsEscrow implementation + const PaymentsEscrowImplementation = m.contract('PaymentsEscrow', + PaymentsEscrowArtifact, + [Controller, revokeCollectorThawingPeriod, withdrawEscrowThawingPeriod], + { + after: [PeripheryRegistered, HorizonRegistered], + }, + ) + + // Upgrade proxy to implementation contract + m.call(PaymentsEscrowProxyAdmin, 'upgradeAndCall', [PaymentsEscrowProxy, PaymentsEscrowImplementation, m.encodeFunctionCall(PaymentsEscrowImplementation, 'initialize', [])]) + + // Load contract with implementation ABI + const PaymentsEscrow = m.contractAt('PaymentsEscrow', PaymentsEscrowArtifact, PaymentsEscrowProxy, { id: 'PaymentsEscrow_Instance' }) + + return { PaymentsEscrow } +}) diff --git a/packages/horizon/ignition/modules/core/TAPCollector.ts b/packages/horizon/ignition/modules/core/TAPCollector.ts new file mode 100644 index 000000000..429dc5083 --- /dev/null +++ b/packages/horizon/ignition/modules/core/TAPCollector.ts @@ -0,0 +1,18 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphPeripheryModule from '../periphery' +import HorizonProxiesModule from './HorizonProxies' + +import TAPCollectorArtifact from '../../../build/contracts/contracts/payments/collectors/TAPCollector.sol/TAPCollector.json' + +export default buildModule('TAPCollector', (m) => { + const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) + const { HorizonRegistered } = m.useModule(HorizonProxiesModule) + + const name = m.getParameter('eip712Name') + const version = m.getParameter('eip712Version') + + const TAPCollector = m.contract('TAPCollector', TAPCollectorArtifact, [name, version, Controller], { after: [PeripheryRegistered, HorizonRegistered] }) + + return { TAPCollector } +}) diff --git a/packages/horizon/ignition/modules/horizon.ts b/packages/horizon/ignition/modules/horizon.ts new file mode 100644 index 000000000..c68ce88b4 --- /dev/null +++ b/packages/horizon/ignition/modules/horizon.ts @@ -0,0 +1,31 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphHorizonCoreModule from './core' +import GraphPeripheryModule from './periphery' + +export default buildModule('GraphHorizon', (m) => { + const { + BridgeEscrow, + Controller, + EpochManager, + GraphProxyAdmin, + GraphTokenGateway, + RewardsManager, + Curation, + } = m.useModule(GraphPeripheryModule) + const { HorizonStaking, GraphPayments, PaymentsEscrow, TAPCollector } = m.useModule(GraphHorizonCoreModule) + + return { + BridgeEscrow, + Controller, + Curation, + EpochManager, + GraphProxyAdmin, + GraphTokenGateway, + RewardsManager, + HorizonStaking, + GraphPayments, + PaymentsEscrow, + TAPCollector, + } +}) diff --git a/packages/horizon/ignition/modules/periphery.ts b/packages/horizon/ignition/modules/periphery.ts new file mode 100644 index 000000000..2c358c74f --- /dev/null +++ b/packages/horizon/ignition/modules/periphery.ts @@ -0,0 +1,57 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' +import { ethers } from 'ethers' + +import BridgeEscrowModule from './periphery/BridgeEscrow' +import ControllerModule from './periphery/Controller' +import CurationModule from './periphery/Curation' +import EpochManagerModule from './periphery/EpochManager' +import GraphProxyAdminModule from './periphery/GraphProxyAdmin' +import GraphTokenGatewayModule from './periphery/GraphTokenGateway' +import GraphTokenModule from './periphery/GraphToken' +import RewardsManagerModule from './periphery/RewardsManager' + +import DummyArtifact from '../../build/contracts/contracts/mocks/Dummy.sol/Dummy.json' + +export default buildModule('GraphHorizon_Periphery', (m) => { + const { BridgeEscrow } = m.useModule(BridgeEscrowModule) + const { Controller } = m.useModule(ControllerModule) + const { EpochManager } = m.useModule(EpochManagerModule) + const { GraphProxyAdmin } = m.useModule(GraphProxyAdminModule) + const { GraphTokenGateway } = m.useModule(GraphTokenGatewayModule) + const { RewardsManager } = m.useModule(RewardsManagerModule) + const { GraphToken } = m.useModule(GraphTokenModule) + const { Curation } = m.useModule(CurationModule) + + // Register contracts in the Controller + const setProxyEpochManager = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('EpochManager')), EpochManager], { id: 'setContractProxy_EpochManager' }) + const setProxyRewardsManager = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('RewardsManager')), RewardsManager], { id: 'setContractProxy_RewardsManager' }) + const setProxyGraphToken = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphToken')), GraphToken], { id: 'setContractProxy_GraphToken' }) + const setProxyGraphTokenGateway = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphTokenGateway')), GraphTokenGateway], { id: 'setContractProxy_GraphTokenGateway' }) + // eslint-disable-next-line no-secrets/no-secrets + const setProxyGraphProxyAdmin = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphProxyAdmin')), GraphProxyAdmin], { id: 'setContractProxy_GraphProxyAdmin' }) + const setProxyCuration = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('Curation')), Curation], { id: 'setContractProxy_Curation' }) + + // Deploy dummy contract to signal that all periphery contracts are registered + const PeripheryRegistered = m.contract('Dummy', DummyArtifact, [], { + after: [ + setProxyEpochManager, + setProxyRewardsManager, + setProxyGraphToken, + setProxyGraphTokenGateway, + setProxyGraphProxyAdmin, + setProxyCuration, + ], + }) + + return { + BridgeEscrow, + Controller, + Curation, + EpochManager, + GraphProxyAdmin, + GraphToken, + GraphTokenGateway, + RewardsManager, + PeripheryRegistered, + } +}) diff --git a/packages/horizon/ignition/modules/periphery/BridgeEscrow.ts b/packages/horizon/ignition/modules/periphery/BridgeEscrow.ts new file mode 100644 index 000000000..6d9dd32ee --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/BridgeEscrow.ts @@ -0,0 +1,18 @@ +import { buildModule } from '@nomicfoundation/ignition-core' + +import { deployWithGraphProxy } from '../proxy/GraphProxy' + +import BridgeEscrowArtifact from '@graphprotocol/contracts/build/contracts/contracts/gateway/BridgeEscrow.sol/BridgeEscrow.json' +import ControllerModule from '../periphery/Controller' + +export default buildModule('BridgeEscrow', (m) => { + const { Controller } = m.useModule(ControllerModule) + + const { instance: BridgeEscrow } = deployWithGraphProxy(m, { + name: 'BridgeEscrow', + artifact: BridgeEscrowArtifact, + args: [Controller], + }) + + return { BridgeEscrow } +}) diff --git a/packages/horizon/ignition/modules/periphery/Controller.ts b/packages/horizon/ignition/modules/periphery/Controller.ts new file mode 100644 index 000000000..41a3e6484 --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/Controller.ts @@ -0,0 +1,17 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import ControllerArtifact from '@graphprotocol/contracts/build/contracts/contracts/governance/Controller.sol/Controller.json' + +// TODO: Ownership transfer is a two step process, the new owner needs to accept it by calling acceptOwnership +export default buildModule('Controller', (m) => { + const governor = m.getParameter('governor') + const pauseGuardian = m.getParameter('pauseGuardian') + + const Controller = m.contract('Controller', ControllerArtifact) + + m.call(Controller, 'setPauseGuardian', [pauseGuardian]) + m.call(Controller, 'transferOwnership', [governor]) + m.call(Controller, 'setPaused', [false]) + + return { Controller } +}) diff --git a/packages/horizon/ignition/modules/periphery/Curation.ts b/packages/horizon/ignition/modules/periphery/Curation.ts new file mode 100644 index 000000000..2a1516168 --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/Curation.ts @@ -0,0 +1,23 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' +import { deployWithGraphProxy } from '../proxy/GraphProxy' + +import ControllerModule from './Controller' +import CurationArtifact from '@graphprotocol/contracts/build/contracts/contracts/l2/curation/L2Curation.sol/L2Curation.json' +import GraphCurationTokenArtifact from '@graphprotocol/contracts/build/contracts/contracts/curation/GraphCurationToken.sol/GraphCurationToken.json' + +export default buildModule('Curation', (m) => { + const { Controller } = m.useModule(ControllerModule) + + const curationTaxPercentage = m.getParameter('curationTaxPercentage') + const minimumCurationDeposit = m.getParameter('minimumCurationDeposit') + + const GraphCurationToken = m.contract('GraphCurationToken', GraphCurationTokenArtifact, []) + + const { instance: Curation } = deployWithGraphProxy(m, { + name: 'Curation', + artifact: CurationArtifact, + args: [Controller, GraphCurationToken, curationTaxPercentage, minimumCurationDeposit], + }) + + return { Curation } +}) diff --git a/packages/horizon/ignition/modules/periphery/EpochManager.ts b/packages/horizon/ignition/modules/periphery/EpochManager.ts new file mode 100644 index 000000000..e05792171 --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/EpochManager.ts @@ -0,0 +1,19 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' +import { deployWithGraphProxy } from '../proxy/GraphProxy' + +import ControllerModule from './Controller' +import EpochManagerArtifact from '@graphprotocol/contracts/build/contracts/contracts/epochs/EpochManager.sol/EpochManager.json' + +export default buildModule('EpochManager', (m) => { + const { Controller } = m.useModule(ControllerModule) + + const epochLength = m.getParameter('epochLength') + + const { instance: EpochManager } = deployWithGraphProxy(m, { + name: 'EpochManager', + artifact: EpochManagerArtifact, + args: [Controller, epochLength], + }) + + return { EpochManager } +}) diff --git a/packages/horizon/ignition/modules/periphery/GraphProxyAdmin.ts b/packages/horizon/ignition/modules/periphery/GraphProxyAdmin.ts new file mode 100644 index 000000000..8715316c8 --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/GraphProxyAdmin.ts @@ -0,0 +1,13 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import GraphProxyAdminArtifact from '@graphprotocol/contracts/build/contracts/contracts/upgrades/GraphProxyAdmin.sol/GraphProxyAdmin.json' + +// TODO: Ownership transfer is a two step process, the new owner needs to accept it by calling acceptOwnership +export default buildModule('GraphProxyAdmin', (m) => { + const governor = m.getParameter('governor') + const GraphProxyAdmin = m.contract('GraphProxyAdmin', GraphProxyAdminArtifact) + + m.call(GraphProxyAdmin, 'transferOwnership', [governor]) + + return { GraphProxyAdmin } +}) diff --git a/packages/horizon/ignition/modules/periphery/GraphToken.ts b/packages/horizon/ignition/modules/periphery/GraphToken.ts new file mode 100644 index 000000000..955d95edb --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/GraphToken.ts @@ -0,0 +1,33 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' +import { deployWithGraphProxy } from '../proxy/GraphProxy' + +import GraphTokenGatewayModule from '../periphery/GraphTokenGateway' +import RewardsManagerModule from '../periphery/RewardsManager' + +import GraphTokenArtifact from '@graphprotocol/contracts/build/contracts/contracts/l2/token/L2GraphToken.sol/L2GraphToken.json' + +// TODO: Ownership transfer is a two step process, the new owner needs to accept it by calling acceptOwnership +export default buildModule('GraphToken', (m) => { + const { RewardsManager } = m.useModule(RewardsManagerModule) + const { GraphTokenGateway } = m.useModule(GraphTokenGatewayModule) + + const deployer = m.getAccount(0) + const governor = m.getParameter('governor') + const initialSupply = m.getParameter('initialSupply') + + const { instance: GraphToken } = deployWithGraphProxy(m, { + name: 'GraphToken', + artifact: GraphTokenArtifact, + args: [deployer], + }) + + // TODO: move this mint to a testnet only module + // Note that this next mint would only be done in L1 + m.call(GraphToken, 'mint', [deployer, initialSupply]) + m.call(GraphToken, 'renounceMinter', []) + m.call(GraphToken, 'addMinter', [RewardsManager], { id: 'addMinterRewardsManager' }) + m.call(GraphToken, 'addMinter', [GraphTokenGateway], { id: 'addMinterGateway' }) + m.call(GraphToken, 'transferOwnership', [governor]) + + return { GraphToken } +}) diff --git a/packages/horizon/ignition/modules/periphery/GraphTokenGateway.ts b/packages/horizon/ignition/modules/periphery/GraphTokenGateway.ts new file mode 100644 index 000000000..2bb13a78e --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/GraphTokenGateway.ts @@ -0,0 +1,22 @@ +import { buildModule } from '@nomicfoundation/ignition-core' + +import { deployWithGraphProxy } from '../proxy/GraphProxy' + +import ControllerModule from '../periphery/Controller' +import GraphTokenGatewayArtifact from '@graphprotocol/contracts/build/contracts/contracts/l2/gateway/L2GraphTokenGateway.sol/L2GraphTokenGateway.json' + +export default buildModule('GraphTokenGateway', (m) => { + const { Controller } = m.useModule(ControllerModule) + + const pauseGuardian = m.getParameter('pauseGuardian') + + const { instance: GraphTokenGateway } = deployWithGraphProxy(m, { + name: 'GraphTokenGateway', + artifact: GraphTokenGatewayArtifact, + args: [Controller], + }) + + m.call(GraphTokenGateway, 'setPauseGuardian', [pauseGuardian]) + + return { GraphTokenGateway } +}) diff --git a/packages/horizon/ignition/modules/periphery/RewardsManager.ts b/packages/horizon/ignition/modules/periphery/RewardsManager.ts new file mode 100644 index 000000000..3773933e9 --- /dev/null +++ b/packages/horizon/ignition/modules/periphery/RewardsManager.ts @@ -0,0 +1,26 @@ +import { buildModule } from '@nomicfoundation/ignition-core' + +import { deployWithGraphProxy } from '../proxy/GraphProxy' + +import ControllerModule from '../periphery/Controller' +import RewardsManagerArtifact from '@graphprotocol/contracts/build/contracts/contracts/rewards/RewardsManager.sol/RewardsManager.json' + +export default buildModule('RewardsManager', (m) => { + const { Controller } = m.useModule(ControllerModule) + + const issuancePerBlock = m.getParameter('issuancePerBlock') + const subgraphAvailabilityOracle = m.getParameter('subgraphAvailabilityOracle') + const subgraphServiceAddress = m.getParameter('subgraphServiceAddress') + + const { instance: RewardsManager } = deployWithGraphProxy(m, { + name: 'RewardsManager', + artifact: RewardsManagerArtifact, + args: [Controller], + }) + + m.call(RewardsManager, 'setSubgraphAvailabilityOracle', [subgraphAvailabilityOracle]) + m.call(RewardsManager, 'setIssuancePerBlock', [issuancePerBlock]) + m.call(RewardsManager, 'setSubgraphService', [subgraphServiceAddress]) + + return { RewardsManager } +}) diff --git a/packages/horizon/ignition/modules/proxy/GraphProxy.ts b/packages/horizon/ignition/modules/proxy/GraphProxy.ts new file mode 100644 index 000000000..85455977f --- /dev/null +++ b/packages/horizon/ignition/modules/proxy/GraphProxy.ts @@ -0,0 +1,36 @@ +import { ArgumentType, Artifact, ContractOptions, IgnitionModuleBuilder } from '@nomicfoundation/ignition-core' + +import GraphProxyAdminModule from '../periphery/GraphProxyAdmin' +import GraphProxyArtifact from '@graphprotocol/contracts/build/contracts/contracts/upgrades/GraphProxy.sol/GraphProxy.json' + +export function deployWithGraphProxy(m: IgnitionModuleBuilder, contract: { name: string, artifact?: Artifact, args?: ArgumentType[] }, options?: ContractOptions) { + const { GraphProxyAdmin } = m.useModule(GraphProxyAdminModule) + + options = options || {} + + // Deploy implementation + let implementation + if (contract.artifact === undefined) { + implementation = m.contract(contract.name, [], options) + } else { + implementation = m.contract(contract.name, contract.artifact, [], options) + } + + // Deploy proxy and initialize + const proxy = m.contract('GraphProxy', GraphProxyArtifact, [implementation, GraphProxyAdmin], options) + if (contract.args === undefined) { + m.call(GraphProxyAdmin, 'acceptProxy', [implementation, proxy], options) + } else { + m.call(GraphProxyAdmin, 'acceptProxyAndCall', [implementation, proxy, m.encodeFunctionCall(implementation, 'initialize', contract.args)], options) + } + + // Load proxy with implementation ABI + let instance + if (contract.artifact === undefined) { + instance = m.contractAt(contract.name, proxy, options) + } else { + instance = m.contractAt(`${contract.name}_Instance`, contract.artifact, proxy, options) + } + + return { proxy, implementation, instance } +} diff --git a/packages/horizon/ignition/modules/proxy/TransparentUpgradeableProxy.ts b/packages/horizon/ignition/modules/proxy/TransparentUpgradeableProxy.ts new file mode 100644 index 000000000..6de1f28ee --- /dev/null +++ b/packages/horizon/ignition/modules/proxy/TransparentUpgradeableProxy.ts @@ -0,0 +1,33 @@ +import { IgnitionModuleBuilder } from '@nomicfoundation/ignition-core' + +import DummyArtifact from '../../../build/contracts/contracts/mocks/Dummy.sol/Dummy.json' +import ProxyAdminArtifact from '@openzeppelin/contracts/build/contracts/ProxyAdmin.json' +import TransparentUpgradeableProxyArtifact from '@openzeppelin/contracts/build/contracts/TransparentUpgradeableProxy.json' + +// Deploy a TransparentUpgradeableProxy +// Note that this module uses a dummy contract as the implementation as the proxy requires a valid contract +// address to be deployed +export function deployWithOZProxy(m: IgnitionModuleBuilder, contractName: string) { + const deployer = m.getAccount(0) + + const dummy = m.contract('Dummy', DummyArtifact, [], { id: `OZProxyDummy_${contractName}` }) + const Proxy = m.contract('TransparentUpgradeableProxy', TransparentUpgradeableProxyArtifact, [ + dummy, + deployer, + '0x', + ], + { id: `TransparentUpgradeableProxy_${contractName}` }) + + const proxyAdminAddress = m.readEventArgument( + Proxy, + 'AdminChanged', + 'newAdmin', + { + id: `TransparentUpgradeableProxy_${contractName}_AdminChanged`, + }, + ) + + const ProxyAdmin = m.contractAt('ProxyAdmin', ProxyAdminArtifact, proxyAdminAddress, { id: `ProxyAdmin_${contractName}` }) + + return { ProxyAdmin, Proxy } +} diff --git a/packages/horizon/package.json b/packages/horizon/package.json index 064e7e1db..4c6624051 100644 --- a/packages/horizon/package.json +++ b/packages/horizon/package.json @@ -9,17 +9,20 @@ "lint:sol": "prettier --write contracts/**/*.sol && solhint --noPrompt --fix contracts/**/*.sol --config node_modules/solhint-graph-config/index.js", "lint": "yarn lint:ts && yarn lint:sol", "clean": "rm -rf build cache typechain-types", - "build": "forge build contracts && hardhat compile", - "test": "FOUNDRY_PROFILE=test forge test -vvv && hardhat test" + "build": "forge build && hardhat compile", + "test": "forge test && hardhat test" }, "devDependencies": { "@graphprotocol/contracts": "workspace:^7.0.0", "@nomicfoundation/hardhat-chai-matchers": "^2.0.0", - "@nomicfoundation/hardhat-ethers": "^3.0.0", + "@nomicfoundation/hardhat-ethers": "^3.0.8", "@nomicfoundation/hardhat-foundry": "^1.1.1", + "@nomicfoundation/hardhat-ignition": "^0.15.5", + "@nomicfoundation/hardhat-ignition-ethers": "^0.15.5", "@nomicfoundation/hardhat-network-helpers": "^1.0.0", "@nomicfoundation/hardhat-toolbox": "^4.0.0", - "@nomicfoundation/hardhat-verify": "^2.0.0", + "@nomicfoundation/hardhat-verify": "^2.0.10", + "@nomicfoundation/ignition-core": "^0.15.5", "@openzeppelin/contracts": "^5.0.2", "@openzeppelin/contracts-upgradeable": "^5.0.2", "@typechain/ethers-v6": "^0.5.0", @@ -30,7 +33,7 @@ "chai": "^4.2.0", "eslint": "^8.56.0", "eslint-graph-config": "workspace:^0.0.1", - "ethers": "^6.4.0", + "ethers": "^6.13.2", "hardhat": "^2.20.1", "hardhat-contract-sizer": "^2.10.0", "hardhat-gas-reporter": "^1.0.8", diff --git a/packages/horizon/scripts/deploy.ts b/packages/horizon/scripts/deploy.ts new file mode 100644 index 000000000..a7daff3d4 --- /dev/null +++ b/packages/horizon/scripts/deploy.ts @@ -0,0 +1,16 @@ +import { ignition } from 'hardhat' + +import Parameters from '../ignition/graph.hardhat.json' +import PeripheryModule from '../ignition/modules/periphery' + +async function main() { + await ignition.deploy(PeripheryModule, { + parameters: Parameters, + }) +} + +main() + .catch((error) => { + console.error(error) + process.exit(1) + }) diff --git a/packages/horizon/tsconfig.json b/packages/horizon/tsconfig.json index 143316f16..8de96f814 100644 --- a/packages/horizon/tsconfig.json +++ b/packages/horizon/tsconfig.json @@ -12,6 +12,7 @@ "hardhat.config.ts", "scripts/**/*.ts", "test/**/*.ts", + "ignition/**/*.ts", "eslint.config.js", "prettier.config.js" ] diff --git a/packages/subgraph-service/hardhat.config.ts b/packages/subgraph-service/hardhat.config.ts index 17ebc2053..1e2dfc9fd 100644 --- a/packages/subgraph-service/hardhat.config.ts +++ b/packages/subgraph-service/hardhat.config.ts @@ -1,4 +1,5 @@ import '@nomicfoundation/hardhat-foundry' +import '@nomicfoundation/hardhat-ignition-ethers' import '@nomicfoundation/hardhat-toolbox' import 'hardhat-contract-sizer' import 'hardhat-storage-layout' @@ -10,7 +11,6 @@ const config: HardhatUserConfig = { solidity: { version: '0.8.27', settings: { - viaIR: true, optimizer: { enabled: true, runs: 200, diff --git a/packages/subgraph-service/ignition/configs/subgraph-service.hardhat.json b/packages/subgraph-service/ignition/configs/subgraph-service.hardhat.json new file mode 100644 index 000000000..83dfa1899 --- /dev/null +++ b/packages/subgraph-service/ignition/configs/subgraph-service.hardhat.json @@ -0,0 +1,13 @@ +{ + "DisputeManager": { + "arbitrator": "0xFFcf8FDEE72ac11b5c542428B35EEF5769C409f0", + "disputePeriod": 2419200, + "disputeDeposit": "10000000000000000000000n", + "fishermanRewardCut": 500000, + "maxSlashingCut": 1000000 + }, + "SubgraphService": { + "minimumProvisionTokens": "100000000000000000000000n", + "maximumDelegationRatio": 16 + } +} diff --git a/packages/subgraph-service/ignition/modules/DisputeManager.ts b/packages/subgraph-service/ignition/modules/DisputeManager.ts new file mode 100644 index 000000000..ff3921eca --- /dev/null +++ b/packages/subgraph-service/ignition/modules/DisputeManager.ts @@ -0,0 +1,36 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import ProxyAdminArtifact from '@openzeppelin/contracts/build/contracts/ProxyAdmin.json' + +// TODO: transfer ownership of ProxyAdmin??? +export default buildModule('DisputeManager', (m) => { + // Parameters - dynamically plugged in by the deploy script + const controllerAddress = m.getParameter('controllerAddress') + const disputeManagerProxyAddress = m.getParameter('disputeManagerProxyAddress') + const disputeManagerProxyAdminAddress = m.getParameter('disputeManagerProxyAdminAddress') + + // Parameters - config file + const arbitrator = m.getParameter('arbitrator') + const disputePeriod = m.getParameter('disputePeriod') + const disputeDeposit = m.getParameter('disputeDeposit') + const fishermanRewardCut = m.getParameter('fishermanRewardCut') + const maxSlashingCut = m.getParameter('maxSlashingCut') + + // Deploy implementation + const DisputeManagerImplementation = m.contract('DisputeManager', [controllerAddress]) + + // Upgrade implementation + const DisputeManagerProxyAdmin = m.contractAt('TransparentUpgradeableProxy', ProxyAdminArtifact, disputeManagerProxyAdminAddress) + const encodedCall = m.encodeFunctionCall(DisputeManagerImplementation, 'initialize', [ + arbitrator, + disputePeriod, + disputeDeposit, + fishermanRewardCut, + maxSlashingCut, + ]) + m.call(DisputeManagerProxyAdmin, 'upgradeAndCall', [disputeManagerProxyAddress, DisputeManagerImplementation, encodedCall]) + + const DisputeManager = m.contractAt('DisputeManager', disputeManagerProxyAddress, { id: 'DisputeManager_Instance' }) + + return { DisputeManager, DisputeManagerImplementation } +}) diff --git a/packages/subgraph-service/ignition/modules/Proxies.ts b/packages/subgraph-service/ignition/modules/Proxies.ts new file mode 100644 index 000000000..3ae5168b4 --- /dev/null +++ b/packages/subgraph-service/ignition/modules/Proxies.ts @@ -0,0 +1,10 @@ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' +import { deployWithOZProxy } from '@graphprotocol/horizon/ignition/modules/proxy/TransparentUpgradeableProxy' + +export default buildModule('SubgraphServiceProxies', (m) => { + // Deploy proxies contracts using OZ TransparentUpgradeableProxy + const { Proxy: DisputeManagerProxy, ProxyAdmin: DisputeManagerProxyAdmin } = deployWithOZProxy(m, 'DisputeManager') + const { Proxy: SubgraphServiceProxy, ProxyAdmin: SubgraphServiceProxyAdmin } = deployWithOZProxy(m, 'SubgraphService') + + return { DisputeManagerProxy, DisputeManagerProxyAdmin, SubgraphServiceProxy, SubgraphServiceProxyAdmin } +}) diff --git a/packages/subgraph-service/ignition/modules/SubgraphService.ts b/packages/subgraph-service/ignition/modules/SubgraphService.ts new file mode 100644 index 000000000..783cd7d15 --- /dev/null +++ b/packages/subgraph-service/ignition/modules/SubgraphService.ts @@ -0,0 +1,34 @@ +/* eslint-disable no-secrets/no-secrets */ +import { buildModule } from '@nomicfoundation/hardhat-ignition/modules' + +import ProxyAdminArtifact from '@openzeppelin/contracts/build/contracts/ProxyAdmin.json' + +// TODO: transfer ownership of ProxyAdmin??? +export default buildModule('SubgraphService', (m) => { + // Parameters - dynamically plugged in by the deploy script + const controllerAddress = m.getParameter('controllerAddress') + const subgraphServiceProxyAddress = m.getParameter('subgraphServiceProxyAddress') + const subgraphServiceProxyAdminAddress = m.getParameter('subgraphServiceProxyAdminAddress') + const disputeManagerAddress = m.getParameter('disputeManagerAddress') + const tapCollectorAddress = m.getParameter('tapCollectorAddress') + const curationAddress = m.getParameter('curationAddress') + + // Parameters - config file + const minimumProvisionTokens = m.getParameter('minimumProvisionTokens') + const maximumDelegationRatio = m.getParameter('maximumDelegationRatio') + + // Deploy implementation + const SubgraphServiceImplementation = m.contract('SubgraphService', [controllerAddress, disputeManagerAddress, tapCollectorAddress, curationAddress]) + + // Upgrade implementation + const SubgraphServiceProxyAdmin = m.contractAt('TransparentUpgradeableProxy', ProxyAdminArtifact, subgraphServiceProxyAdminAddress) + const encodedCall = m.encodeFunctionCall(SubgraphServiceImplementation, 'initialize', [ + minimumProvisionTokens, + maximumDelegationRatio, + ]) + m.call(SubgraphServiceProxyAdmin, 'upgradeAndCall', [subgraphServiceProxyAddress, SubgraphServiceImplementation, encodedCall]) + + const SubgraphService = m.contractAt('SubgraphService', subgraphServiceProxyAddress, { id: 'SubgraphService_Instance' }) + + return { SubgraphService, SubgraphServiceImplementation } +}) diff --git a/packages/subgraph-service/package.json b/packages/subgraph-service/package.json index bb5dd9ea9..419d5f160 100644 --- a/packages/subgraph-service/package.json +++ b/packages/subgraph-service/package.json @@ -16,11 +16,14 @@ "@graphprotocol/contracts": "workspace:^7.0.0", "@graphprotocol/horizon": "workspace:^0.0.1", "@nomicfoundation/hardhat-chai-matchers": "^2.0.0", - "@nomicfoundation/hardhat-ethers": "^3.0.0", + "@nomicfoundation/hardhat-ethers": "^3.0.8", "@nomicfoundation/hardhat-foundry": "^1.1.1", + "@nomicfoundation/hardhat-ignition": "^0.15.5", + "@nomicfoundation/hardhat-ignition-ethers": "^0.15.5", "@nomicfoundation/hardhat-network-helpers": "^1.0.0", "@nomicfoundation/hardhat-toolbox": "^4.0.0", - "@nomicfoundation/hardhat-verify": "^2.0.0", + "@nomicfoundation/hardhat-verify": "^2.0.10", + "@nomicfoundation/ignition-core": "^0.15.5", "@openzeppelin/contracts": "^5.0.2", "@openzeppelin/contracts-upgradeable": "^5.0.2", "@typechain/ethers-v6": "^0.5.0", @@ -31,7 +34,7 @@ "chai": "^4.2.0", "eslint": "^8.56.0", "eslint-graph-config": "workspace:^0.0.1", - "ethers": "^6.4.0", + "ethers": "^6.13.2", "hardhat": "^2.20.1", "hardhat-contract-sizer": "^2.10.0", "hardhat-gas-reporter": "^1.0.8", diff --git a/packages/subgraph-service/scripts/deploy.ts b/packages/subgraph-service/scripts/deploy.ts index cf87ff10f..17ff2feb2 100644 --- a/packages/subgraph-service/scripts/deploy.ts +++ b/packages/subgraph-service/scripts/deploy.ts @@ -1,28 +1,107 @@ -import { ethers } from 'hardhat' +/* eslint-disable no-prototype-builtins */ +/* eslint-disable @typescript-eslint/no-unsafe-return */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/no-explicit-any */ +import { ignition } from 'hardhat' +import DisputeManagerModule from '../ignition/modules/DisputeManager' +import HorizonModule from '@graphprotocol/horizon/ignition/modules/horizon' +import SubgraphServiceModule from '../ignition/modules/SubgraphService' +import SubgraphServiceProxiesModule from '../ignition/modules/Proxies' + +// Horizon needs the SubgraphService proxy address before it can be deployed +// But SubgraphService and DisputeManager implementations need Horizon... +// So the deployment order is: +// - Deploy SubgraphService and DisputeManager proxies +// - Deploy Horizon +// - Deploy SubgraphService and DisputeManager implementations async function main() { - const currentTimestampInSeconds = Math.round(Date.now() / 1000) - const unlockTime = currentTimestampInSeconds + 60 - - const lockedAmount = ethers.parseEther('0.001') - const a = 1 - console.log(a) - const lock = await ethers.deployContract('Lock', [unlockTime], { - value: lockedAmount, + // TODO: Dynamically load config file based on the hardhat --network value + const HorizonConfig = removeNFromBigInts(require('@graphprotocol/horizon/ignition/configs/horizon.hardhat.json')) + const SubgraphServiceConfig = removeNFromBigInts(require('../ignition/configs/subgraph-service.hardhat.json')) + + // Deploy proxies + const { DisputeManagerProxy, DisputeManagerProxyAdmin, SubgraphServiceProxy, SubgraphServiceProxyAdmin } = await ignition.deploy(SubgraphServiceProxiesModule) + + // Deploy Horizon + const { Controller, TAPCollector, Curation } = await ignition.deploy(HorizonModule, { + parameters: patchSubgraphServiceAddress(HorizonConfig, SubgraphServiceProxy.target as string), }) - await lock.waitForDeployment() + // Deploy DisputeManager implementation + await ignition.deploy(DisputeManagerModule, { + parameters: deepMerge(SubgraphServiceConfig, { + DisputeManager: { + controllerAddress: Controller.target as string, + disputeManagerProxyAddress: DisputeManagerProxy.target as string, + disputeManagerProxyAdminAddress: DisputeManagerProxyAdmin.target as string, + }, + }), + }) - console.log( - `Lock with ${ethers.formatEther( - lockedAmount, - )}ETH and unlock timestamp ${unlockTime} deployed to ${typeof lock.target == 'string' ? lock.target : ''}`, - ) + // Deploy SubgraphService implementation + await ignition.deploy(SubgraphServiceModule, { + parameters: deepMerge(SubgraphServiceConfig, { + SubgraphService: { + controllerAddress: Controller.target as string, + subgraphServiceProxyAddress: SubgraphServiceProxy.target as string, + subgraphServiceProxyAdminAddress: SubgraphServiceProxyAdmin.target as string, + disputeManagerAddress: DisputeManagerProxy.target as string, + tapCollectorAddress: TAPCollector.target as string, + curationAddress: Curation.target as string, + }, + }), + }) } - -// We recommend this pattern to be able to use async/await everywhere -// and properly handle errors. main().catch((error) => { console.error(error) - process.exitCode = 1 + process.exit(1) }) + +// -- Auxiliary functions - by GPT -- +function patchSubgraphServiceAddress(jsonData: any, newAddress: string) { + function recursivePatch(obj: any) { + if (typeof obj === 'object' && obj !== null) { + for (const key in obj) { + if (key === 'subgraphServiceAddress') { + obj[key] = newAddress + } else { + recursivePatch(obj[key]) + } + } + } + } + + recursivePatch(jsonData) + return jsonData +} + +function removeNFromBigInts(obj: any): any { + // Ignition requires "n" suffix for bigints, but not here + if (typeof obj === 'string') { + return obj.replace(/(\d+)n/g, '$1') + } else if (Array.isArray(obj)) { + return obj.map(removeNFromBigInts) + } else if (typeof obj === 'object' && obj !== null) { + for (const key in obj) { + obj[key] = removeNFromBigInts(obj[key]) + } + } + return obj +} + +function deepMerge(obj1: any, obj2: any) { + const merged = { ...obj1 } + + for (const key in obj2) { + if (obj2.hasOwnProperty(key)) { + if (typeof obj2[key] === 'object' && obj2[key] !== null && obj1[key]) { + merged[key] = deepMerge(obj1[key], obj2[key]) + } else { + merged[key] = obj2[key] + } + } + } + + return merged +} diff --git a/packages/subgraph-service/tsconfig.json b/packages/subgraph-service/tsconfig.json index adee669ce..8de96f814 100644 --- a/packages/subgraph-service/tsconfig.json +++ b/packages/subgraph-service/tsconfig.json @@ -10,9 +10,10 @@ }, "include": [ "hardhat.config.ts", - "prettier.config.js", "scripts/**/*.ts", "test/**/*.ts", - "eslint.config.js" + "ignition/**/*.ts", + "eslint.config.js", + "prettier.config.js" ] } diff --git a/yarn.lock b/yarn.lock index 4d5746433..4cfd396f1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1843,6 +1843,19 @@ __metadata: languageName: node linkType: hard +"@ethersproject/address@npm:5.6.1": + version: 5.6.1 + resolution: "@ethersproject/address@npm:5.6.1" + dependencies: + "@ethersproject/bignumber": "npm:^5.6.2" + "@ethersproject/bytes": "npm:^5.6.1" + "@ethersproject/keccak256": "npm:^5.6.1" + "@ethersproject/logger": "npm:^5.6.0" + "@ethersproject/rlp": "npm:^5.6.1" + checksum: 7ac29a0abcb9970c6f5f9a2d2e8247d3c433ee9a022861cbf4f8d437f095a5293f3d323b8ec3433df622364071232b227248f1ac04c4ddea353bf18e2e4d76cf + languageName: node + linkType: hard + "@ethersproject/address@npm:5.7.0, @ethersproject/address@npm:>=5.0.0-beta.128, @ethersproject/address@npm:^5.0.0, @ethersproject/address@npm:^5.0.2, @ethersproject/address@npm:^5.0.8, @ethersproject/address@npm:^5.6.0, @ethersproject/address@npm:^5.7.0": version: 5.7.0 resolution: "@ethersproject/address@npm:5.7.0" @@ -1905,7 +1918,7 @@ __metadata: languageName: node linkType: hard -"@ethersproject/bignumber@npm:5.7.0, @ethersproject/bignumber@npm:>=5.0.0-beta.130, @ethersproject/bignumber@npm:^5.0.0, @ethersproject/bignumber@npm:^5.1.1, @ethersproject/bignumber@npm:^5.6.0, @ethersproject/bignumber@npm:^5.7.0": +"@ethersproject/bignumber@npm:5.7.0, @ethersproject/bignumber@npm:>=5.0.0-beta.130, @ethersproject/bignumber@npm:^5.0.0, @ethersproject/bignumber@npm:^5.1.1, @ethersproject/bignumber@npm:^5.6.0, @ethersproject/bignumber@npm:^5.6.2, @ethersproject/bignumber@npm:^5.7.0": version: 5.7.0 resolution: "@ethersproject/bignumber@npm:5.7.0" dependencies: @@ -1925,7 +1938,7 @@ __metadata: languageName: node linkType: hard -"@ethersproject/bytes@npm:5.7.0, @ethersproject/bytes@npm:>=5.0.0-beta.129, @ethersproject/bytes@npm:^5.0.0, @ethersproject/bytes@npm:^5.0.8, @ethersproject/bytes@npm:^5.6.0, @ethersproject/bytes@npm:^5.7.0": +"@ethersproject/bytes@npm:5.7.0, @ethersproject/bytes@npm:>=5.0.0-beta.129, @ethersproject/bytes@npm:^5.0.0, @ethersproject/bytes@npm:^5.0.8, @ethersproject/bytes@npm:^5.6.0, @ethersproject/bytes@npm:^5.6.1, @ethersproject/bytes@npm:^5.7.0": version: 5.7.0 resolution: "@ethersproject/bytes@npm:5.7.0" dependencies: @@ -2124,7 +2137,7 @@ __metadata: languageName: node linkType: hard -"@ethersproject/keccak256@npm:5.7.0, @ethersproject/keccak256@npm:>=5.0.0-beta.127, @ethersproject/keccak256@npm:^5.6.0, @ethersproject/keccak256@npm:^5.7.0": +"@ethersproject/keccak256@npm:5.7.0, @ethersproject/keccak256@npm:>=5.0.0-beta.127, @ethersproject/keccak256@npm:^5.6.0, @ethersproject/keccak256@npm:^5.6.1, @ethersproject/keccak256@npm:^5.7.0": version: 5.7.0 resolution: "@ethersproject/keccak256@npm:5.7.0" dependencies: @@ -2326,7 +2339,7 @@ __metadata: languageName: node linkType: hard -"@ethersproject/rlp@npm:5.7.0, @ethersproject/rlp@npm:^5.6.0, @ethersproject/rlp@npm:^5.7.0": +"@ethersproject/rlp@npm:5.7.0, @ethersproject/rlp@npm:^5.6.0, @ethersproject/rlp@npm:^5.6.1, @ethersproject/rlp@npm:^5.7.0": version: 5.7.0 resolution: "@ethersproject/rlp@npm:5.7.0" dependencies: @@ -2918,11 +2931,14 @@ __metadata: dependencies: "@graphprotocol/contracts": "workspace:^7.0.0" "@nomicfoundation/hardhat-chai-matchers": "npm:^2.0.0" - "@nomicfoundation/hardhat-ethers": "npm:^3.0.0" + "@nomicfoundation/hardhat-ethers": "npm:^3.0.8" "@nomicfoundation/hardhat-foundry": "npm:^1.1.1" + "@nomicfoundation/hardhat-ignition": "npm:^0.15.5" + "@nomicfoundation/hardhat-ignition-ethers": "npm:^0.15.5" "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0" "@nomicfoundation/hardhat-toolbox": "npm:^4.0.0" - "@nomicfoundation/hardhat-verify": "npm:^2.0.0" + "@nomicfoundation/hardhat-verify": "npm:^2.0.10" + "@nomicfoundation/ignition-core": "npm:^0.15.5" "@openzeppelin/contracts": "npm:^5.0.2" "@openzeppelin/contracts-upgradeable": "npm:^5.0.2" "@typechain/ethers-v6": "npm:^0.5.0" @@ -2933,7 +2949,7 @@ __metadata: chai: "npm:^4.2.0" eslint: "npm:^8.56.0" eslint-graph-config: "workspace:^0.0.1" - ethers: "npm:^6.4.0" + ethers: "npm:^6.13.2" hardhat: "npm:^2.20.1" hardhat-contract-sizer: "npm:^2.10.0" hardhat-gas-reporter: "npm:^1.0.8" @@ -3008,11 +3024,14 @@ __metadata: "@graphprotocol/contracts": "workspace:^7.0.0" "@graphprotocol/horizon": "workspace:^0.0.1" "@nomicfoundation/hardhat-chai-matchers": "npm:^2.0.0" - "@nomicfoundation/hardhat-ethers": "npm:^3.0.0" + "@nomicfoundation/hardhat-ethers": "npm:^3.0.8" "@nomicfoundation/hardhat-foundry": "npm:^1.1.1" + "@nomicfoundation/hardhat-ignition": "npm:^0.15.5" + "@nomicfoundation/hardhat-ignition-ethers": "npm:^0.15.5" "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0" "@nomicfoundation/hardhat-toolbox": "npm:^4.0.0" - "@nomicfoundation/hardhat-verify": "npm:^2.0.0" + "@nomicfoundation/hardhat-verify": "npm:^2.0.10" + "@nomicfoundation/ignition-core": "npm:^0.15.5" "@openzeppelin/contracts": "npm:^5.0.2" "@openzeppelin/contracts-upgradeable": "npm:^5.0.2" "@typechain/ethers-v6": "npm:^0.5.0" @@ -3023,7 +3042,7 @@ __metadata: chai: "npm:^4.2.0" eslint: "npm:^8.56.0" eslint-graph-config: "workspace:^0.0.1" - ethers: "npm:^6.4.0" + ethers: "npm:^6.13.2" hardhat: "npm:^2.20.1" hardhat-contract-sizer: "npm:^2.10.0" hardhat-gas-reporter: "npm:^1.0.8" @@ -4634,16 +4653,16 @@ __metadata: languageName: node linkType: hard -"@nomicfoundation/hardhat-ethers@npm:^3.0.0": - version: 3.0.6 - resolution: "@nomicfoundation/hardhat-ethers@npm:3.0.6" +"@nomicfoundation/hardhat-ethers@npm:^3.0.8": + version: 3.0.8 + resolution: "@nomicfoundation/hardhat-ethers@npm:3.0.8" dependencies: debug: "npm:^4.1.1" lodash.isequal: "npm:^4.5.0" peerDependencies: ethers: ^6.1.0 hardhat: ^2.0.0 - checksum: c7abe4234fae6422a357ef9e959cfe4183d5d7121d18e9f71b1659944419fde7d2a0290cd42fd5e85d855d8c83b86bbaed316f4950f0976015f941d958679a99 + checksum: 478b5d9607e7fc50377bec45ecebbf74240719c76aa08c81052d2a2174eee6f422db8cfd3f13fd17a080d8ff1046fac50dfffa3a2e57c9e3ed466932239e4af2 languageName: node linkType: hard @@ -4658,6 +4677,36 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/hardhat-ignition-ethers@npm:^0.15.5": + version: 0.15.5 + resolution: "@nomicfoundation/hardhat-ignition-ethers@npm:0.15.5" + peerDependencies: + "@nomicfoundation/hardhat-ethers": ^3.0.4 + "@nomicfoundation/hardhat-ignition": ^0.15.5 + "@nomicfoundation/ignition-core": ^0.15.5 + ethers: ^6.7.0 + hardhat: ^2.18.0 + checksum: 19f0e029a580dd4d27048f1e87f8111532684cf7f0a2b5c8d6ae8d811ff489629305e3a616cb89702421142c7c628f1efa389781414de1279689018c463cce60 + languageName: node + linkType: hard + +"@nomicfoundation/hardhat-ignition@npm:^0.15.5": + version: 0.15.5 + resolution: "@nomicfoundation/hardhat-ignition@npm:0.15.5" + dependencies: + "@nomicfoundation/ignition-core": "npm:^0.15.5" + "@nomicfoundation/ignition-ui": "npm:^0.15.5" + chalk: "npm:^4.0.0" + debug: "npm:^4.3.2" + fs-extra: "npm:^10.0.0" + prompts: "npm:^2.4.2" + peerDependencies: + "@nomicfoundation/hardhat-verify": ^2.0.1 + hardhat: ^2.18.0 + checksum: b3d9755f2bf89157b6ae0cb6cebea264f76f556ae0b3fc5a62afb5e0f6ed70b3d82d8f692b1c49b2ef2d60cdb45ee28fb148cfca1aa5a53bfe37772c71e75a08 + languageName: node + linkType: hard + "@nomicfoundation/hardhat-network-helpers@npm:^1.0.0, @nomicfoundation/hardhat-network-helpers@npm:^1.0.9": version: 1.0.10 resolution: "@nomicfoundation/hardhat-network-helpers@npm:1.0.10" @@ -4694,9 +4743,9 @@ __metadata: languageName: node linkType: hard -"@nomicfoundation/hardhat-verify@npm:^2.0.0": - version: 2.0.7 - resolution: "@nomicfoundation/hardhat-verify@npm:2.0.7" +"@nomicfoundation/hardhat-verify@npm:^2.0.10": + version: 2.0.10 + resolution: "@nomicfoundation/hardhat-verify@npm:2.0.10" dependencies: "@ethersproject/abi": "npm:^5.1.2" "@ethersproject/address": "npm:^5.0.2" @@ -4709,7 +4758,31 @@ __metadata: undici: "npm:^5.14.0" peerDependencies: hardhat: ^2.0.4 - checksum: a6b3b89d3d2a594c44b50832840deefd3261b158bde774319322859077637f656c2e436af21ca3ce10d60eac78e3a1fbfea02abfe20a4729f97b4f30515524a6 + checksum: c5b8e214f2dcdda0530dbb338f65e01bbb6e6b0f96930a88c01b1d1cf2def3f470e0bdb362807bb9a7dbe8216f937b55d14ab251d3cccd2208d6b60cebf2c358 + languageName: node + linkType: hard + +"@nomicfoundation/ignition-core@npm:^0.15.5": + version: 0.15.5 + resolution: "@nomicfoundation/ignition-core@npm:0.15.5" + dependencies: + "@ethersproject/address": "npm:5.6.1" + "@nomicfoundation/solidity-analyzer": "npm:^0.1.1" + cbor: "npm:^9.0.0" + debug: "npm:^4.3.2" + ethers: "npm:^6.7.0" + fs-extra: "npm:^10.0.0" + immer: "npm:10.0.2" + lodash: "npm:4.17.21" + ndjson: "npm:2.0.0" + checksum: ff14724d8e992dc54291da6e6a864f6b3db268b6725d0af6ecbf3f81ed65f6824441421b23129d118cd772efc8ab0275d1decf203019cb3049a48b37f9c15432 + languageName: node + linkType: hard + +"@nomicfoundation/ignition-ui@npm:^0.15.5": + version: 0.15.5 + resolution: "@nomicfoundation/ignition-ui@npm:0.15.5" + checksum: 7d10e30c3078731e4feb91bd7959dfb5a0eeac6f34f6261fada2bf330ff8057ecd576ce0fb3fe856867af2d7c67f31bd75a896110b58d93ff3f27f04f6771278 languageName: node linkType: hard @@ -4720,6 +4793,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer-darwin-arm64@npm:0.1.2": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer-darwin-arm64@npm:0.1.2" + checksum: ef3b13bb2133fea6621db98f991036a3a84d2b240160edec50beafa6ce821fe2f0f5cd4aa61adb9685aff60cd0425982ffd15e0b868b7c768e90e26b8135b825 + languageName: node + linkType: hard + "@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.1": version: 0.1.1 resolution: "@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.1" @@ -4727,6 +4807,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.2": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer-darwin-x64@npm:0.1.2" + checksum: 3cb6a00cd200b94efd6f59ed626c705c6f773b92ccf8b90471285cd0e81b35f01edb30c1aa5a4633393c2adb8f20fd34e90c51990dc4e30658e8a67c026d16c9 + languageName: node + linkType: hard + "@nomicfoundation/solidity-analyzer-freebsd-x64@npm:0.1.1": version: 0.1.1 resolution: "@nomicfoundation/solidity-analyzer-freebsd-x64@npm:0.1.1" @@ -4741,6 +4828,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer-linux-arm64-gnu@npm:0.1.2": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer-linux-arm64-gnu@npm:0.1.2" + checksum: cb9725e7bdc3ba9c1feaef96dbf831c1a59c700ca633a9929fd97debdcb5ce06b5d7b4e6dbc076279978707214d01e2cd126d8e3f4cabc5c16525c031a47b95c + languageName: node + linkType: hard + "@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.1": version: 0.1.1 resolution: "@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.1" @@ -4748,6 +4842,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.2": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer-linux-arm64-musl@npm:0.1.2" + checksum: 82a90b1d09ad266ddc510ece2e397f51fdaf29abf7263d2a3a85accddcba2ac24cceb670a3120800611cdcc552eed04919d071e259fdda7564818359ed541f5d + languageName: node + linkType: hard + "@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.1": version: 0.1.1 resolution: "@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.1" @@ -4755,6 +4856,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.2": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer-linux-x64-gnu@npm:0.1.2" + checksum: d1f20d4d55683bd041ead957e5461b2e43a39e959f905e8866de1d65f8d96118e9b861e994604d9002cb7f056be0844e36c241a6bb531c336b399609977c0998 + languageName: node + linkType: hard + "@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.1": version: 0.1.1 resolution: "@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.1" @@ -4762,6 +4870,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.2": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer-linux-x64-musl@npm:0.1.2" + checksum: 6c17f9af3aaf184c0a217cf723076051c502d85e731dbc97f34b838f9ae1b597577abac54a2af49b3fd986b09131c52fa21fd5393b22d05e1ec7fee96a8249c2 + languageName: node + linkType: hard + "@nomicfoundation/solidity-analyzer-win32-arm64-msvc@npm:0.1.1": version: 0.1.1 resolution: "@nomicfoundation/solidity-analyzer-win32-arm64-msvc@npm:0.1.1" @@ -4783,6 +4898,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer-win32-x64-msvc@npm:0.1.2": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer-win32-x64-msvc@npm:0.1.2" + checksum: da198464f5ee0d19b6decdfaa65ee0df3097b8960b8483bb7080931968815a5d60f27191229d47a198955784d763d5996f0b92bfde3551612ad972c160b0b000 + languageName: node + linkType: hard + "@nomicfoundation/solidity-analyzer@npm:^0.1.0": version: 0.1.1 resolution: "@nomicfoundation/solidity-analyzer@npm:0.1.1" @@ -4822,6 +4944,36 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/solidity-analyzer@npm:^0.1.1": + version: 0.1.2 + resolution: "@nomicfoundation/solidity-analyzer@npm:0.1.2" + dependencies: + "@nomicfoundation/solidity-analyzer-darwin-arm64": "npm:0.1.2" + "@nomicfoundation/solidity-analyzer-darwin-x64": "npm:0.1.2" + "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": "npm:0.1.2" + "@nomicfoundation/solidity-analyzer-linux-arm64-musl": "npm:0.1.2" + "@nomicfoundation/solidity-analyzer-linux-x64-gnu": "npm:0.1.2" + "@nomicfoundation/solidity-analyzer-linux-x64-musl": "npm:0.1.2" + "@nomicfoundation/solidity-analyzer-win32-x64-msvc": "npm:0.1.2" + dependenciesMeta: + "@nomicfoundation/solidity-analyzer-darwin-arm64": + optional: true + "@nomicfoundation/solidity-analyzer-darwin-x64": + optional: true + "@nomicfoundation/solidity-analyzer-linux-arm64-gnu": + optional: true + "@nomicfoundation/solidity-analyzer-linux-arm64-musl": + optional: true + "@nomicfoundation/solidity-analyzer-linux-x64-gnu": + optional: true + "@nomicfoundation/solidity-analyzer-linux-x64-musl": + optional: true + "@nomicfoundation/solidity-analyzer-win32-x64-msvc": + optional: true + checksum: e4f503e9287e18967535af669ca7e26e2682203c45a34ea85da53122da1dee1278f2b8c76c20c67fadd7c1b1a98eeecffd2cbc136860665e3afa133817c0de54 + languageName: node + linkType: hard + "@nomiclabs/hardhat-ethers@npm:^2.0.0, @nomiclabs/hardhat-ethers@npm:^2.0.2, @nomiclabs/hardhat-ethers@npm:^2.1.1, @nomiclabs/hardhat-ethers@npm:^2.2.3": version: 2.2.3 resolution: "@nomiclabs/hardhat-ethers@npm:2.2.3" @@ -12084,9 +12236,9 @@ __metadata: languageName: node linkType: hard -"ethers@npm:^6.4.0": - version: 6.12.1 - resolution: "ethers@npm:6.12.1" +"ethers@npm:^6.13.2, ethers@npm:^6.7.0": + version: 6.13.2 + resolution: "ethers@npm:6.13.2" dependencies: "@adraffy/ens-normalize": "npm:1.10.1" "@noble/curves": "npm:1.2.0" @@ -12094,8 +12246,8 @@ __metadata: "@types/node": "npm:18.15.13" aes-js: "npm:4.0.0-beta.5" tslib: "npm:2.4.0" - ws: "npm:8.5.0" - checksum: 7686e1efdb0a831578f35d69188783c225de5a6fbb1b422327bc45cee04d49a2707e73c9342a6a5eb2870ce35668c71372737439ec3993d31d83f4a0e2446cc7 + ws: "npm:8.17.1" + checksum: 5956389a180992f8b6d90bc21b2e0f28619a098513d3aeb7a350a0b7c5852d635a9d7fd4ced1af50c985dd88398716f66dfd4a2de96c5c3a67150b93543d92af languageName: node linkType: hard @@ -14774,6 +14926,13 @@ __metadata: languageName: node linkType: hard +"immer@npm:10.0.2": + version: 10.0.2 + resolution: "immer@npm:10.0.2" + checksum: b6c23538cd174a4cadd6f8d92bf0245e2c2a7bdabbd3200a08f1e99bb52e463fb552bb2d025ddd45f4e335390f8bd307e2c813e54a004dd651fe1ec161674e42 + languageName: node + linkType: hard + "immutable@npm:^4.0.0-rc.12": version: 4.3.6 resolution: "immutable@npm:4.3.6" @@ -16208,7 +16367,7 @@ __metadata: languageName: node linkType: hard -"json-stringify-safe@npm:~5.0.1": +"json-stringify-safe@npm:^5.0.1, json-stringify-safe@npm:~5.0.1": version: 5.0.1 resolution: "json-stringify-safe@npm:5.0.1" checksum: 7dbf35cd0411d1d648dceb6d59ce5857ec939e52e4afc37601aa3da611f0987d5cee5b38d58329ceddf3ed48bd7215229c8d52059ab01f2444a338bf24ed0f37 @@ -17008,7 +17167,7 @@ __metadata: languageName: node linkType: hard -"lodash@npm:^4.14.2, lodash@npm:^4.17.11, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.21, lodash@npm:^4.17.4, lodash@npm:~4.17.0": +"lodash@npm:4.17.21, lodash@npm:^4.14.2, lodash@npm:^4.17.11, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.21, lodash@npm:^4.17.4, lodash@npm:~4.17.0": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c @@ -18287,6 +18446,21 @@ __metadata: languageName: node linkType: hard +"ndjson@npm:2.0.0": + version: 2.0.0 + resolution: "ndjson@npm:2.0.0" + dependencies: + json-stringify-safe: "npm:^5.0.1" + minimist: "npm:^1.2.5" + readable-stream: "npm:^3.6.0" + split2: "npm:^3.0.0" + through2: "npm:^4.0.0" + bin: + ndjson: cli.js + checksum: b7f3de5e12e0466cfa3688a3ba6cedec0ab54bd821f1b16926c9ef7017983b131832430061d25dfcb635f65a254b535681eca213c6feb5d1958bee8d35a04cc9 + languageName: node + linkType: hard + "negotiator@npm:0.6.3, negotiator@npm:^0.6.3": version: 0.6.3 resolution: "negotiator@npm:0.6.3" @@ -25472,18 +25646,18 @@ __metadata: languageName: node linkType: hard -"ws@npm:8.5.0": - version: 8.5.0 - resolution: "ws@npm:8.5.0" +"ws@npm:8.17.1": + version: 8.17.1 + resolution: "ws@npm:8.17.1" peerDependencies: bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 + utf-8-validate: ">=5.0.2" peerDependenciesMeta: bufferutil: optional: true utf-8-validate: optional: true - checksum: 0baeee03e97865accda8fad51e8e5fa17d19b8e264529efdf662bbba2acc1c7f1de8316287e6df5cb639231a96009e6d5234b57e6ff36ee2d04e49a0995fec2f + checksum: f4a49064afae4500be772abdc2211c8518f39e1c959640457dcee15d4488628620625c783902a52af2dd02f68558da2868fd06e6fd0e67ebcd09e6881b1b5bfe languageName: node linkType: hard