@keep-network/tbtc-v2 0.1.0 → 0.1.1-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.adoc +12 -0
- package/artifacts/.chainId +1 -1
- package/artifacts/Bank.json +807 -0
- package/artifacts/Bridge.json +2300 -0
- package/artifacts/Deposit.json +117 -0
- package/artifacts/DepositSweep.json +77 -0
- package/artifacts/EcdsaDkgValidator.json +532 -0
- package/artifacts/EcdsaInactivity.json +156 -0
- package/artifacts/EcdsaSortitionPool.json +1004 -0
- package/artifacts/Fraud.json +164 -0
- package/artifacts/KeepRegistry.json +99 -0
- package/artifacts/KeepStake.json +286 -0
- package/artifacts/KeepToken.json +711 -0
- package/artifacts/KeepTokenStaking.json +483 -0
- package/artifacts/MovingFunds.json +249 -0
- package/artifacts/NuCypherStakingEscrow.json +256 -0
- package/artifacts/NuCypherToken.json +711 -0
- package/artifacts/RandomBeaconStub.json +141 -0
- package/artifacts/Redemption.json +174 -0
- package/artifacts/ReimbursementPool.json +509 -0
- package/artifacts/Relay.json +123 -0
- package/artifacts/T.json +1148 -0
- package/artifacts/TBTC.json +36 -35
- package/artifacts/TBTCToken.json +738 -0
- package/artifacts/TBTCVault.json +691 -0
- package/artifacts/TokenStaking.json +2288 -0
- package/artifacts/TokenholderGovernor.json +1795 -0
- package/artifacts/TokenholderTimelock.json +1058 -0
- package/artifacts/VendingMachine.json +34 -33
- package/artifacts/VendingMachineKeep.json +400 -0
- package/artifacts/VendingMachineNuCypher.json +400 -0
- package/artifacts/WalletRegistry.json +1843 -0
- package/artifacts/WalletRegistryGovernance.json +2754 -0
- package/artifacts/Wallets.json +186 -0
- package/artifacts/solcInputs/5e62cff1ead0900b07facca4b559e818.json +314 -0
- package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
- package/build/contracts/GovernanceUtils.sol/GovernanceUtils.json +2 -2
- package/build/contracts/bank/Bank.sol/Bank.dbg.json +4 -0
- package/build/contracts/bank/Bank.sol/Bank.json +542 -0
- package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +4 -0
- package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.json +34 -0
- package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +4 -0
- package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.json +10 -0
- package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +4 -0
- package/build/contracts/bridge/Bridge.sol/Bridge.json +2686 -0
- package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +4 -0
- package/build/contracts/bridge/BridgeState.sol/BridgeState.json +226 -0
- package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +4 -0
- package/build/contracts/bridge/Deposit.sol/Deposit.json +72 -0
- package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +4 -0
- package/build/contracts/bridge/DepositSweep.sol/DepositSweep.json +30 -0
- package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +4 -0
- package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.json +10 -0
- package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +4 -0
- package/build/contracts/bridge/Fraud.sol/Fraud.json +86 -0
- package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +4 -0
- package/build/contracts/bridge/Heartbeat.sol/Heartbeat.json +10 -0
- package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +4 -0
- package/build/contracts/bridge/IRelay.sol/IRelay.json +37 -0
- package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +4 -0
- package/build/contracts/bridge/MovingFunds.sol/MovingFunds.json +138 -0
- package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +4 -0
- package/build/contracts/bridge/Redemption.sol/OutboundTx.json +10 -0
- package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +4 -0
- package/build/contracts/bridge/Redemption.sol/Redemption.json +92 -0
- package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
- package/build/contracts/bridge/VendingMachine.sol/VendingMachine.json +2 -2
- package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +4 -0
- package/build/contracts/bridge/Wallets.sol/Wallets.json +112 -0
- package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
- package/build/contracts/token/TBTC.sol/TBTC.json +4 -4
- package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +4 -0
- package/build/contracts/vault/DonationVault.sol/DonationVault.json +108 -0
- package/build/contracts/vault/IVault.sol/IVault.dbg.json +4 -0
- package/build/contracts/vault/IVault.sol/IVault.json +52 -0
- package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +4 -0
- package/build/contracts/vault/TBTCVault.sol/TBTCVault.json +449 -0
- package/contracts/GovernanceUtils.sol +4 -4
- package/contracts/bank/Bank.sol +436 -0
- package/contracts/bank/IReceiveBalanceApproval.sol +45 -0
- package/contracts/bridge/BitcoinTx.sol +326 -0
- package/contracts/bridge/Bridge.sol +1793 -0
- package/contracts/bridge/BridgeState.sol +739 -0
- package/contracts/bridge/Deposit.sol +269 -0
- package/contracts/bridge/DepositSweep.sol +574 -0
- package/contracts/bridge/EcdsaLib.sol +45 -0
- package/contracts/bridge/Fraud.sol +579 -0
- package/contracts/bridge/Heartbeat.sol +112 -0
- package/contracts/bridge/IRelay.sol +28 -0
- package/contracts/bridge/MovingFunds.sol +1077 -0
- package/contracts/bridge/Redemption.sol +1020 -0
- package/contracts/bridge/VendingMachine.sol +2 -2
- package/contracts/bridge/Wallets.sol +719 -0
- package/contracts/hardhat-dependency-compiler/.hardhat-dependency-compiler +1 -0
- package/contracts/hardhat-dependency-compiler/@keep-network/ecdsa/contracts/WalletRegistry.sol +3 -0
- package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol +3 -0
- package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +3 -0
- package/contracts/token/TBTC.sol +1 -1
- package/contracts/vault/DonationVault.sol +125 -0
- package/contracts/vault/IVault.sol +44 -0
- package/contracts/vault/TBTCVault.sol +305 -0
- package/deploy/00_resolve_relay.ts +28 -0
- package/deploy/00_resolve_tbtc_v1_token.ts +1 -1
- package/deploy/01_deploy_tbtc_v2_token.ts +8 -1
- package/deploy/02_deploy_vending_machine.ts +7 -0
- package/deploy/{03_transfer_roles.ts → 03_transfer_vending_machine_roles.ts} +1 -1
- package/deploy/04_deploy_bank.ts +27 -0
- package/deploy/05_deploy_bridge.ts +80 -0
- package/deploy/06_deploy_tbtc_vault.ts +30 -0
- package/deploy/07_bank_update_bridge.ts +19 -0
- package/deploy/08_transfer_bank_ownership.ts +15 -0
- package/deploy/09_transfer_tbtc_vault_ownership.ts +15 -0
- package/deploy/10_transfer_bridge_governance.ts +20 -0
- package/deploy/11_initialize_wallet_owner.ts +18 -0
- package/deploy/11_transfer_proxy_admin_ownership.ts +30 -0
- package/deploy/12_deploy_proxy_admin_with_deputy.ts +33 -0
- package/export/deploy/00_resolve_relay.js +24 -0
- package/export/deploy/00_resolve_tbtc_v1_token.js +24 -0
- package/export/deploy/01_deploy_tbtc_v2_token.js +19 -0
- package/export/deploy/02_deploy_vending_machine.js +25 -0
- package/export/deploy/03_transfer_vending_machine_roles.js +19 -0
- package/export/deploy/04_deploy_bank.js +21 -0
- package/export/deploy/05_deploy_bridge.js +69 -0
- package/export/deploy/06_deploy_tbtc_vault.js +24 -0
- package/export/deploy/07_bank_update_bridge.js +13 -0
- package/export/deploy/08_transfer_bank_ownership.js +11 -0
- package/export/deploy/09_transfer_tbtc_vault_ownership.js +11 -0
- package/export/deploy/10_transfer_bridge_governance.js +11 -0
- package/export/deploy/11_initialize_wallet_owner.js +14 -0
- package/export/deploy/11_transfer_proxy_admin_ownership.js +23 -0
- package/export/deploy/12_deploy_proxy_admin_with_deputy.js +22 -0
- package/export/hardhat.config.js +169 -0
- package/export/test/bank/Bank.test.js +1012 -0
- package/export/test/bridge/Bridge.Deployment.test.js +76 -0
- package/export/test/bridge/Bridge.Deposit.test.js +1834 -0
- package/export/test/bridge/Bridge.Frauds.test.js +1349 -0
- package/export/test/bridge/Bridge.MovingFunds.test.js +2437 -0
- package/export/test/bridge/Bridge.Parameters.test.js +400 -0
- package/export/test/bridge/Bridge.Redemption.test.js +2523 -0
- package/export/test/bridge/Bridge.Vaults.test.js +74 -0
- package/export/test/bridge/Bridge.Wallets.test.js +1017 -0
- package/export/test/bridge/EcdsaLib.test.js +46 -0
- package/export/test/bridge/Heartbeat.test.js +77 -0
- package/export/test/bridge/VendingMachine.Upgrade.test.js +160 -0
- package/export/test/bridge/VendingMachine.test.js +762 -0
- package/export/test/data/deposit-sweep.js +655 -0
- package/export/test/data/ecdsa.js +18 -0
- package/export/test/data/fraud.js +158 -0
- package/export/test/data/moving-funds.js +815 -0
- package/export/test/data/redemption.js +1011 -0
- package/export/test/fixtures/bridge.js +54 -0
- package/export/test/fixtures/index.js +57 -0
- package/export/test/helpers/contract-test-helpers.js +18 -0
- package/export/test/integration/Slashing.test.js +279 -0
- package/export/test/integration/WalleCreation.test.js +66 -0
- package/export/test/integration/utils/ecdsa-wallet-registry.js +137 -0
- package/export/test/integration/utils/fixture.js +77 -0
- package/export/test/integration/utils/gas.js +36 -0
- package/export/test/integration/utils/random-beacon.js +26 -0
- package/export/test/integration/utils/staking.js +19 -0
- package/export/test/vault/DonationVault.test.js +202 -0
- package/export/test/vault/TBTCVault.Redemption.test.js +357 -0
- package/export/test/vault/TBTCVault.test.js +768 -0
- package/export/typechain/BTCUtils.js +2 -0
- package/export/typechain/Bank.js +2 -0
- package/export/typechain/BankStub.js +2 -0
- package/export/typechain/Bridge.js +2 -0
- package/export/typechain/BridgeState.js +2 -0
- package/export/typechain/BridgeStub.js +2 -0
- package/export/typechain/Deposit.js +2 -0
- package/export/typechain/DepositSweep.js +2 -0
- package/export/typechain/DonationVault.js +2 -0
- package/export/typechain/ERC165.js +2 -0
- package/export/typechain/ERC1967Proxy.js +2 -0
- package/export/typechain/ERC1967Upgrade.js +2 -0
- package/export/typechain/ERC20WithPermit.js +2 -0
- package/export/typechain/ERC721.js +2 -0
- package/export/typechain/EcdsaAuthorization.js +2 -0
- package/export/typechain/EcdsaDkg.js +2 -0
- package/export/typechain/EcdsaDkgValidator.js +2 -0
- package/export/typechain/EcdsaInactivity.js +2 -0
- package/export/typechain/Fraud.js +2 -0
- package/export/typechain/Governable.js +2 -0
- package/export/typechain/HeartbeatStub.js +2 -0
- package/export/typechain/IApplication.js +2 -0
- package/export/typechain/IApproveAndCall.js +2 -0
- package/export/typechain/IBeacon.js +2 -0
- package/export/typechain/IERC165.js +2 -0
- package/export/typechain/IERC1822Proxiable.js +2 -0
- package/export/typechain/IERC20.js +2 -0
- package/export/typechain/IERC20Metadata.js +2 -0
- package/export/typechain/IERC20WithPermit.js +2 -0
- package/export/typechain/IERC721.js +2 -0
- package/export/typechain/IERC721Metadata.js +2 -0
- package/export/typechain/IERC721Receiver.js +2 -0
- package/export/typechain/IRandomBeacon.js +2 -0
- package/export/typechain/IRandomBeaconConsumer.js +2 -0
- package/export/typechain/IReceiveApproval.js +2 -0
- package/export/typechain/IReceiveBalanceApproval.js +2 -0
- package/export/typechain/IRelay.js +2 -0
- package/export/typechain/IStaking.js +2 -0
- package/export/typechain/IVault.js +2 -0
- package/export/typechain/IWalletOwner.js +2 -0
- package/export/typechain/IWalletRegistry.js +2 -0
- package/export/typechain/Initializable.js +2 -0
- package/export/typechain/MisfundRecovery.js +2 -0
- package/export/typechain/MovingFunds.js +2 -0
- package/export/typechain/Ownable.js +2 -0
- package/export/typechain/Proxy.js +2 -0
- package/export/typechain/ProxyAdmin.js +2 -0
- package/export/typechain/ReceiveApprovalStub.js +2 -0
- package/export/typechain/Redemption.js +2 -0
- package/export/typechain/Reimbursable.js +2 -0
- package/export/typechain/ReimbursementPool.js +2 -0
- package/export/typechain/Rewards.js +2 -0
- package/export/typechain/SortitionPool.js +2 -0
- package/export/typechain/SortitionTree.js +2 -0
- package/export/typechain/TBTC.js +2 -0
- package/export/typechain/TBTCVault.js +2 -0
- package/export/typechain/TestERC20.js +2 -0
- package/export/typechain/TestERC721.js +2 -0
- package/export/typechain/TestEcdsaLib.js +2 -0
- package/export/typechain/TestRelay.js +2 -0
- package/export/typechain/TransparentUpgradeableProxy.js +2 -0
- package/export/typechain/VendingMachine.js +2 -0
- package/export/typechain/WalletRegistry.js +2 -0
- package/export/typechain/Wallets.js +2 -0
- package/export/typechain/common.js +2 -0
- package/export/typechain/factories/BTCUtils__factory.js +94 -0
- package/export/typechain/factories/BankStub__factory.js +586 -0
- package/export/typechain/factories/Bank__factory.js +573 -0
- package/export/typechain/factories/BridgeState__factory.js +257 -0
- package/export/typechain/factories/BridgeStub__factory.js +2912 -0
- package/export/typechain/factories/Bridge__factory.js +2526 -0
- package/export/typechain/factories/DepositSweep__factory.js +61 -0
- package/export/typechain/factories/Deposit__factory.js +103 -0
- package/export/typechain/factories/DonationVault__factory.js +139 -0
- package/export/typechain/factories/ERC165__factory.js +38 -0
- package/export/typechain/factories/ERC1967Proxy__factory.js +111 -0
- package/export/typechain/factories/ERC1967Upgrade__factory.js +64 -0
- package/export/typechain/factories/ERC20WithPermit__factory.js +524 -0
- package/export/typechain/factories/ERC721__factory.js +388 -0
- package/export/typechain/factories/EcdsaAuthorization__factory.js +211 -0
- package/export/typechain/factories/EcdsaDkgValidator__factory.js +441 -0
- package/export/typechain/factories/EcdsaDkg__factory.js +192 -0
- package/export/typechain/factories/EcdsaInactivity__factory.js +134 -0
- package/export/typechain/factories/Fraud__factory.js +117 -0
- package/export/typechain/factories/Governable__factory.js +64 -0
- package/export/typechain/factories/HeartbeatStub__factory.js +61 -0
- package/export/typechain/factories/IApplication__factory.js +152 -0
- package/export/typechain/factories/IApproveAndCall__factory.js +48 -0
- package/export/typechain/factories/IBeacon__factory.js +32 -0
- package/export/typechain/factories/IERC165__factory.js +38 -0
- package/export/typechain/factories/IERC1822Proxiable__factory.js +32 -0
- package/export/typechain/factories/IERC20Metadata__factory.js +241 -0
- package/export/typechain/factories/IERC20WithPermit__factory.js +389 -0
- package/export/typechain/factories/IERC20__factory.js +202 -0
- package/export/typechain/factories/IERC721Metadata__factory.js +349 -0
- package/export/typechain/factories/IERC721Receiver__factory.js +53 -0
- package/export/typechain/factories/IERC721__factory.js +304 -0
- package/export/typechain/factories/IRandomBeaconConsumer__factory.js +37 -0
- package/export/typechain/factories/IRandomBeacon__factory.js +32 -0
- package/export/typechain/factories/IReceiveApproval__factory.js +47 -0
- package/export/typechain/factories/IReceiveBalanceApproval__factory.js +42 -0
- package/export/typechain/factories/IRelay__factory.js +45 -0
- package/export/typechain/factories/IStaking__factory.js +722 -0
- package/export/typechain/factories/IVault__factory.js +60 -0
- package/export/typechain/factories/IWalletOwner__factory.js +65 -0
- package/export/typechain/factories/IWalletRegistry__factory.js +138 -0
- package/export/typechain/factories/Initializable__factory.js +32 -0
- package/export/typechain/factories/MisfundRecovery__factory.js +145 -0
- package/export/typechain/factories/MovingFunds__factory.js +169 -0
- package/export/typechain/factories/Ownable__factory.js +71 -0
- package/export/typechain/factories/ProxyAdmin__factory.js +191 -0
- package/export/typechain/factories/Proxy__factory.js +27 -0
- package/export/typechain/factories/ReceiveApprovalStub__factory.js +127 -0
- package/export/typechain/factories/Redemption__factory.js +123 -0
- package/export/typechain/factories/Reimbursable__factory.js +58 -0
- package/export/typechain/factories/ReimbursementPool__factory.js +350 -0
- package/export/typechain/factories/Rewards__factory.js +117 -0
- package/export/typechain/factories/SortitionPool__factory.js +610 -0
- package/export/typechain/factories/SortitionTree__factory.js +149 -0
- package/export/typechain/factories/TBTCVault__factory.js +480 -0
- package/export/typechain/factories/TBTC__factory.js +564 -0
- package/export/typechain/factories/TestERC20__factory.js +539 -0
- package/export/typechain/factories/TestERC721__factory.js +421 -0
- package/export/typechain/factories/TestEcdsaLib__factory.js +66 -0
- package/export/typechain/factories/TestRelay__factory.js +94 -0
- package/export/typechain/factories/TransparentUpgradeableProxy__factory.js +186 -0
- package/export/typechain/factories/VendingMachine__factory.js +549 -0
- package/export/typechain/factories/WalletRegistry__factory.js +1919 -0
- package/export/typechain/factories/Wallets__factory.js +143 -0
- package/export/typechain/index.js +132 -0
- package/export.json +15932 -503
- package/package.json +47 -26
- package/artifacts/solcInputs/7cc3eda3cb3ff2522d18b5e7b31ea228.json +0 -104
|
@@ -0,0 +1,1919 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WalletRegistry__factory = void 0;
|
|
4
|
+
/* Autogenerated file. Do not edit manually. */
|
|
5
|
+
/* tslint:disable */
|
|
6
|
+
/* eslint-disable */
|
|
7
|
+
const ethers_1 = require("ethers");
|
|
8
|
+
const _abi = [
|
|
9
|
+
{
|
|
10
|
+
inputs: [
|
|
11
|
+
{
|
|
12
|
+
internalType: "contract SortitionPool",
|
|
13
|
+
name: "_sortitionPool",
|
|
14
|
+
type: "address",
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
internalType: "contract IStaking",
|
|
18
|
+
name: "_staking",
|
|
19
|
+
type: "address",
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
stateMutability: "nonpayable",
|
|
23
|
+
type: "constructor",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
anonymous: false,
|
|
27
|
+
inputs: [
|
|
28
|
+
{
|
|
29
|
+
indexed: true,
|
|
30
|
+
internalType: "address",
|
|
31
|
+
name: "stakingProvider",
|
|
32
|
+
type: "address",
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
name: "AuthorizationDecreaseApproved",
|
|
36
|
+
type: "event",
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
anonymous: false,
|
|
40
|
+
inputs: [
|
|
41
|
+
{
|
|
42
|
+
indexed: true,
|
|
43
|
+
internalType: "address",
|
|
44
|
+
name: "stakingProvider",
|
|
45
|
+
type: "address",
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
indexed: true,
|
|
49
|
+
internalType: "address",
|
|
50
|
+
name: "operator",
|
|
51
|
+
type: "address",
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
indexed: false,
|
|
55
|
+
internalType: "uint96",
|
|
56
|
+
name: "fromAmount",
|
|
57
|
+
type: "uint96",
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
indexed: false,
|
|
61
|
+
internalType: "uint96",
|
|
62
|
+
name: "toAmount",
|
|
63
|
+
type: "uint96",
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
indexed: false,
|
|
67
|
+
internalType: "uint64",
|
|
68
|
+
name: "decreasingAt",
|
|
69
|
+
type: "uint64",
|
|
70
|
+
},
|
|
71
|
+
],
|
|
72
|
+
name: "AuthorizationDecreaseRequested",
|
|
73
|
+
type: "event",
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
anonymous: false,
|
|
77
|
+
inputs: [
|
|
78
|
+
{
|
|
79
|
+
indexed: true,
|
|
80
|
+
internalType: "address",
|
|
81
|
+
name: "stakingProvider",
|
|
82
|
+
type: "address",
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
indexed: true,
|
|
86
|
+
internalType: "address",
|
|
87
|
+
name: "operator",
|
|
88
|
+
type: "address",
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
indexed: false,
|
|
92
|
+
internalType: "uint96",
|
|
93
|
+
name: "fromAmount",
|
|
94
|
+
type: "uint96",
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
indexed: false,
|
|
98
|
+
internalType: "uint96",
|
|
99
|
+
name: "toAmount",
|
|
100
|
+
type: "uint96",
|
|
101
|
+
},
|
|
102
|
+
],
|
|
103
|
+
name: "AuthorizationIncreased",
|
|
104
|
+
type: "event",
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
anonymous: false,
|
|
108
|
+
inputs: [
|
|
109
|
+
{
|
|
110
|
+
indexed: false,
|
|
111
|
+
internalType: "uint96",
|
|
112
|
+
name: "minimumAuthorization",
|
|
113
|
+
type: "uint96",
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
indexed: false,
|
|
117
|
+
internalType: "uint64",
|
|
118
|
+
name: "authorizationDecreaseDelay",
|
|
119
|
+
type: "uint64",
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
indexed: false,
|
|
123
|
+
internalType: "uint64",
|
|
124
|
+
name: "authorizationDecreaseChangePeriod",
|
|
125
|
+
type: "uint64",
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
name: "AuthorizationParametersUpdated",
|
|
129
|
+
type: "event",
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
anonymous: false,
|
|
133
|
+
inputs: [
|
|
134
|
+
{
|
|
135
|
+
indexed: true,
|
|
136
|
+
internalType: "bytes32",
|
|
137
|
+
name: "resultHash",
|
|
138
|
+
type: "bytes32",
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
indexed: false,
|
|
142
|
+
internalType: "uint256",
|
|
143
|
+
name: "slashingAmount",
|
|
144
|
+
type: "uint256",
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
indexed: false,
|
|
148
|
+
internalType: "address",
|
|
149
|
+
name: "maliciousSubmitter",
|
|
150
|
+
type: "address",
|
|
151
|
+
},
|
|
152
|
+
],
|
|
153
|
+
name: "DkgMaliciousResultSlashed",
|
|
154
|
+
type: "event",
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
anonymous: false,
|
|
158
|
+
inputs: [
|
|
159
|
+
{
|
|
160
|
+
indexed: true,
|
|
161
|
+
internalType: "bytes32",
|
|
162
|
+
name: "resultHash",
|
|
163
|
+
type: "bytes32",
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
indexed: false,
|
|
167
|
+
internalType: "uint256",
|
|
168
|
+
name: "slashingAmount",
|
|
169
|
+
type: "uint256",
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
indexed: false,
|
|
173
|
+
internalType: "address",
|
|
174
|
+
name: "maliciousSubmitter",
|
|
175
|
+
type: "address",
|
|
176
|
+
},
|
|
177
|
+
],
|
|
178
|
+
name: "DkgMaliciousResultSlashingFailed",
|
|
179
|
+
type: "event",
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
anonymous: false,
|
|
183
|
+
inputs: [
|
|
184
|
+
{
|
|
185
|
+
indexed: false,
|
|
186
|
+
internalType: "uint256",
|
|
187
|
+
name: "seedTimeout",
|
|
188
|
+
type: "uint256",
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
indexed: false,
|
|
192
|
+
internalType: "uint256",
|
|
193
|
+
name: "resultChallengePeriodLength",
|
|
194
|
+
type: "uint256",
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
indexed: false,
|
|
198
|
+
internalType: "uint256",
|
|
199
|
+
name: "resultSubmissionTimeout",
|
|
200
|
+
type: "uint256",
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
indexed: false,
|
|
204
|
+
internalType: "uint256",
|
|
205
|
+
name: "resultSubmitterPrecedencePeriodLength",
|
|
206
|
+
type: "uint256",
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
name: "DkgParametersUpdated",
|
|
210
|
+
type: "event",
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
anonymous: false,
|
|
214
|
+
inputs: [
|
|
215
|
+
{
|
|
216
|
+
indexed: true,
|
|
217
|
+
internalType: "bytes32",
|
|
218
|
+
name: "resultHash",
|
|
219
|
+
type: "bytes32",
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
indexed: true,
|
|
223
|
+
internalType: "address",
|
|
224
|
+
name: "approver",
|
|
225
|
+
type: "address",
|
|
226
|
+
},
|
|
227
|
+
],
|
|
228
|
+
name: "DkgResultApproved",
|
|
229
|
+
type: "event",
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
anonymous: false,
|
|
233
|
+
inputs: [
|
|
234
|
+
{
|
|
235
|
+
indexed: true,
|
|
236
|
+
internalType: "bytes32",
|
|
237
|
+
name: "resultHash",
|
|
238
|
+
type: "bytes32",
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
indexed: true,
|
|
242
|
+
internalType: "address",
|
|
243
|
+
name: "challenger",
|
|
244
|
+
type: "address",
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
indexed: false,
|
|
248
|
+
internalType: "string",
|
|
249
|
+
name: "reason",
|
|
250
|
+
type: "string",
|
|
251
|
+
},
|
|
252
|
+
],
|
|
253
|
+
name: "DkgResultChallenged",
|
|
254
|
+
type: "event",
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
anonymous: false,
|
|
258
|
+
inputs: [
|
|
259
|
+
{
|
|
260
|
+
indexed: true,
|
|
261
|
+
internalType: "bytes32",
|
|
262
|
+
name: "resultHash",
|
|
263
|
+
type: "bytes32",
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
indexed: true,
|
|
267
|
+
internalType: "uint256",
|
|
268
|
+
name: "seed",
|
|
269
|
+
type: "uint256",
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
components: [
|
|
273
|
+
{
|
|
274
|
+
internalType: "uint256",
|
|
275
|
+
name: "submitterMemberIndex",
|
|
276
|
+
type: "uint256",
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
internalType: "bytes",
|
|
280
|
+
name: "groupPubKey",
|
|
281
|
+
type: "bytes",
|
|
282
|
+
},
|
|
283
|
+
{
|
|
284
|
+
internalType: "uint8[]",
|
|
285
|
+
name: "misbehavedMembersIndices",
|
|
286
|
+
type: "uint8[]",
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
internalType: "bytes",
|
|
290
|
+
name: "signatures",
|
|
291
|
+
type: "bytes",
|
|
292
|
+
},
|
|
293
|
+
{
|
|
294
|
+
internalType: "uint256[]",
|
|
295
|
+
name: "signingMembersIndices",
|
|
296
|
+
type: "uint256[]",
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
internalType: "uint32[]",
|
|
300
|
+
name: "members",
|
|
301
|
+
type: "uint32[]",
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
internalType: "bytes32",
|
|
305
|
+
name: "membersHash",
|
|
306
|
+
type: "bytes32",
|
|
307
|
+
},
|
|
308
|
+
],
|
|
309
|
+
indexed: false,
|
|
310
|
+
internalType: "struct EcdsaDkg.Result",
|
|
311
|
+
name: "result",
|
|
312
|
+
type: "tuple",
|
|
313
|
+
},
|
|
314
|
+
],
|
|
315
|
+
name: "DkgResultSubmitted",
|
|
316
|
+
type: "event",
|
|
317
|
+
},
|
|
318
|
+
{
|
|
319
|
+
anonymous: false,
|
|
320
|
+
inputs: [],
|
|
321
|
+
name: "DkgSeedTimedOut",
|
|
322
|
+
type: "event",
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
anonymous: false,
|
|
326
|
+
inputs: [
|
|
327
|
+
{
|
|
328
|
+
indexed: true,
|
|
329
|
+
internalType: "uint256",
|
|
330
|
+
name: "seed",
|
|
331
|
+
type: "uint256",
|
|
332
|
+
},
|
|
333
|
+
],
|
|
334
|
+
name: "DkgStarted",
|
|
335
|
+
type: "event",
|
|
336
|
+
},
|
|
337
|
+
{
|
|
338
|
+
anonymous: false,
|
|
339
|
+
inputs: [],
|
|
340
|
+
name: "DkgStateLocked",
|
|
341
|
+
type: "event",
|
|
342
|
+
},
|
|
343
|
+
{
|
|
344
|
+
anonymous: false,
|
|
345
|
+
inputs: [],
|
|
346
|
+
name: "DkgTimedOut",
|
|
347
|
+
type: "event",
|
|
348
|
+
},
|
|
349
|
+
{
|
|
350
|
+
anonymous: false,
|
|
351
|
+
inputs: [
|
|
352
|
+
{
|
|
353
|
+
indexed: false,
|
|
354
|
+
internalType: "uint256",
|
|
355
|
+
name: "dkgResultSubmissionGas",
|
|
356
|
+
type: "uint256",
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
indexed: false,
|
|
360
|
+
internalType: "uint256",
|
|
361
|
+
name: "dkgResultApprovalGasOffset",
|
|
362
|
+
type: "uint256",
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
indexed: false,
|
|
366
|
+
internalType: "uint256",
|
|
367
|
+
name: "notifyOperatorInactivityGasOffset",
|
|
368
|
+
type: "uint256",
|
|
369
|
+
},
|
|
370
|
+
{
|
|
371
|
+
indexed: false,
|
|
372
|
+
internalType: "uint256",
|
|
373
|
+
name: "notifySeedTimeoutGasOffset",
|
|
374
|
+
type: "uint256",
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
indexed: false,
|
|
378
|
+
internalType: "uint256",
|
|
379
|
+
name: "notifyDkgTimeoutNegativeGasOffset",
|
|
380
|
+
type: "uint256",
|
|
381
|
+
},
|
|
382
|
+
],
|
|
383
|
+
name: "GasParametersUpdated",
|
|
384
|
+
type: "event",
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
anonymous: false,
|
|
388
|
+
inputs: [
|
|
389
|
+
{
|
|
390
|
+
indexed: false,
|
|
391
|
+
internalType: "address",
|
|
392
|
+
name: "oldGovernance",
|
|
393
|
+
type: "address",
|
|
394
|
+
},
|
|
395
|
+
{
|
|
396
|
+
indexed: false,
|
|
397
|
+
internalType: "address",
|
|
398
|
+
name: "newGovernance",
|
|
399
|
+
type: "address",
|
|
400
|
+
},
|
|
401
|
+
],
|
|
402
|
+
name: "GovernanceTransferred",
|
|
403
|
+
type: "event",
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
anonymous: false,
|
|
407
|
+
inputs: [
|
|
408
|
+
{
|
|
409
|
+
indexed: true,
|
|
410
|
+
internalType: "bytes32",
|
|
411
|
+
name: "walletID",
|
|
412
|
+
type: "bytes32",
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
indexed: false,
|
|
416
|
+
internalType: "uint256",
|
|
417
|
+
name: "nonce",
|
|
418
|
+
type: "uint256",
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
indexed: false,
|
|
422
|
+
internalType: "address",
|
|
423
|
+
name: "notifier",
|
|
424
|
+
type: "address",
|
|
425
|
+
},
|
|
426
|
+
],
|
|
427
|
+
name: "InactivityClaimed",
|
|
428
|
+
type: "event",
|
|
429
|
+
},
|
|
430
|
+
{
|
|
431
|
+
anonymous: false,
|
|
432
|
+
inputs: [
|
|
433
|
+
{
|
|
434
|
+
indexed: false,
|
|
435
|
+
internalType: "uint8",
|
|
436
|
+
name: "version",
|
|
437
|
+
type: "uint8",
|
|
438
|
+
},
|
|
439
|
+
],
|
|
440
|
+
name: "Initialized",
|
|
441
|
+
type: "event",
|
|
442
|
+
},
|
|
443
|
+
{
|
|
444
|
+
anonymous: false,
|
|
445
|
+
inputs: [
|
|
446
|
+
{
|
|
447
|
+
indexed: true,
|
|
448
|
+
internalType: "address",
|
|
449
|
+
name: "stakingProvider",
|
|
450
|
+
type: "address",
|
|
451
|
+
},
|
|
452
|
+
{
|
|
453
|
+
indexed: true,
|
|
454
|
+
internalType: "address",
|
|
455
|
+
name: "operator",
|
|
456
|
+
type: "address",
|
|
457
|
+
},
|
|
458
|
+
{
|
|
459
|
+
indexed: false,
|
|
460
|
+
internalType: "uint96",
|
|
461
|
+
name: "fromAmount",
|
|
462
|
+
type: "uint96",
|
|
463
|
+
},
|
|
464
|
+
{
|
|
465
|
+
indexed: false,
|
|
466
|
+
internalType: "uint96",
|
|
467
|
+
name: "toAmount",
|
|
468
|
+
type: "uint96",
|
|
469
|
+
},
|
|
470
|
+
],
|
|
471
|
+
name: "InvoluntaryAuthorizationDecreaseFailed",
|
|
472
|
+
type: "event",
|
|
473
|
+
},
|
|
474
|
+
{
|
|
475
|
+
anonymous: false,
|
|
476
|
+
inputs: [
|
|
477
|
+
{
|
|
478
|
+
indexed: true,
|
|
479
|
+
internalType: "address",
|
|
480
|
+
name: "stakingProvider",
|
|
481
|
+
type: "address",
|
|
482
|
+
},
|
|
483
|
+
{
|
|
484
|
+
indexed: true,
|
|
485
|
+
internalType: "address",
|
|
486
|
+
name: "operator",
|
|
487
|
+
type: "address",
|
|
488
|
+
},
|
|
489
|
+
],
|
|
490
|
+
name: "OperatorJoinedSortitionPool",
|
|
491
|
+
type: "event",
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
anonymous: false,
|
|
495
|
+
inputs: [
|
|
496
|
+
{
|
|
497
|
+
indexed: true,
|
|
498
|
+
internalType: "address",
|
|
499
|
+
name: "stakingProvider",
|
|
500
|
+
type: "address",
|
|
501
|
+
},
|
|
502
|
+
{
|
|
503
|
+
indexed: true,
|
|
504
|
+
internalType: "address",
|
|
505
|
+
name: "operator",
|
|
506
|
+
type: "address",
|
|
507
|
+
},
|
|
508
|
+
],
|
|
509
|
+
name: "OperatorRegistered",
|
|
510
|
+
type: "event",
|
|
511
|
+
},
|
|
512
|
+
{
|
|
513
|
+
anonymous: false,
|
|
514
|
+
inputs: [
|
|
515
|
+
{
|
|
516
|
+
indexed: true,
|
|
517
|
+
internalType: "address",
|
|
518
|
+
name: "stakingProvider",
|
|
519
|
+
type: "address",
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
indexed: true,
|
|
523
|
+
internalType: "address",
|
|
524
|
+
name: "operator",
|
|
525
|
+
type: "address",
|
|
526
|
+
},
|
|
527
|
+
],
|
|
528
|
+
name: "OperatorStatusUpdated",
|
|
529
|
+
type: "event",
|
|
530
|
+
},
|
|
531
|
+
{
|
|
532
|
+
anonymous: false,
|
|
533
|
+
inputs: [
|
|
534
|
+
{
|
|
535
|
+
indexed: false,
|
|
536
|
+
internalType: "address",
|
|
537
|
+
name: "randomBeacon",
|
|
538
|
+
type: "address",
|
|
539
|
+
},
|
|
540
|
+
],
|
|
541
|
+
name: "RandomBeaconUpgraded",
|
|
542
|
+
type: "event",
|
|
543
|
+
},
|
|
544
|
+
{
|
|
545
|
+
anonymous: false,
|
|
546
|
+
inputs: [
|
|
547
|
+
{
|
|
548
|
+
indexed: false,
|
|
549
|
+
internalType: "address",
|
|
550
|
+
name: "newReimbursementPool",
|
|
551
|
+
type: "address",
|
|
552
|
+
},
|
|
553
|
+
],
|
|
554
|
+
name: "ReimbursementPoolUpdated",
|
|
555
|
+
type: "event",
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
anonymous: false,
|
|
559
|
+
inputs: [
|
|
560
|
+
{
|
|
561
|
+
indexed: false,
|
|
562
|
+
internalType: "uint256",
|
|
563
|
+
name: "maliciousDkgResultNotificationRewardMultiplier",
|
|
564
|
+
type: "uint256",
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
indexed: false,
|
|
568
|
+
internalType: "uint256",
|
|
569
|
+
name: "sortitionPoolRewardsBanDuration",
|
|
570
|
+
type: "uint256",
|
|
571
|
+
},
|
|
572
|
+
],
|
|
573
|
+
name: "RewardParametersUpdated",
|
|
574
|
+
type: "event",
|
|
575
|
+
},
|
|
576
|
+
{
|
|
577
|
+
anonymous: false,
|
|
578
|
+
inputs: [
|
|
579
|
+
{
|
|
580
|
+
indexed: true,
|
|
581
|
+
internalType: "address",
|
|
582
|
+
name: "stakingProvider",
|
|
583
|
+
type: "address",
|
|
584
|
+
},
|
|
585
|
+
{
|
|
586
|
+
indexed: false,
|
|
587
|
+
internalType: "uint96",
|
|
588
|
+
name: "amount",
|
|
589
|
+
type: "uint96",
|
|
590
|
+
},
|
|
591
|
+
],
|
|
592
|
+
name: "RewardsWithdrawn",
|
|
593
|
+
type: "event",
|
|
594
|
+
},
|
|
595
|
+
{
|
|
596
|
+
anonymous: false,
|
|
597
|
+
inputs: [
|
|
598
|
+
{
|
|
599
|
+
indexed: false,
|
|
600
|
+
internalType: "uint256",
|
|
601
|
+
name: "maliciousDkgResultSlashingAmount",
|
|
602
|
+
type: "uint256",
|
|
603
|
+
},
|
|
604
|
+
],
|
|
605
|
+
name: "SlashingParametersUpdated",
|
|
606
|
+
type: "event",
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
anonymous: false,
|
|
610
|
+
inputs: [
|
|
611
|
+
{
|
|
612
|
+
indexed: true,
|
|
613
|
+
internalType: "bytes32",
|
|
614
|
+
name: "walletID",
|
|
615
|
+
type: "bytes32",
|
|
616
|
+
},
|
|
617
|
+
],
|
|
618
|
+
name: "WalletClosed",
|
|
619
|
+
type: "event",
|
|
620
|
+
},
|
|
621
|
+
{
|
|
622
|
+
anonymous: false,
|
|
623
|
+
inputs: [
|
|
624
|
+
{
|
|
625
|
+
indexed: true,
|
|
626
|
+
internalType: "bytes32",
|
|
627
|
+
name: "walletID",
|
|
628
|
+
type: "bytes32",
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
indexed: true,
|
|
632
|
+
internalType: "bytes32",
|
|
633
|
+
name: "dkgResultHash",
|
|
634
|
+
type: "bytes32",
|
|
635
|
+
},
|
|
636
|
+
],
|
|
637
|
+
name: "WalletCreated",
|
|
638
|
+
type: "event",
|
|
639
|
+
},
|
|
640
|
+
{
|
|
641
|
+
anonymous: false,
|
|
642
|
+
inputs: [
|
|
643
|
+
{
|
|
644
|
+
indexed: false,
|
|
645
|
+
internalType: "address",
|
|
646
|
+
name: "walletOwner",
|
|
647
|
+
type: "address",
|
|
648
|
+
},
|
|
649
|
+
],
|
|
650
|
+
name: "WalletOwnerUpdated",
|
|
651
|
+
type: "event",
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
inputs: [
|
|
655
|
+
{
|
|
656
|
+
internalType: "uint256",
|
|
657
|
+
name: "relayEntry",
|
|
658
|
+
type: "uint256",
|
|
659
|
+
},
|
|
660
|
+
{
|
|
661
|
+
internalType: "uint256",
|
|
662
|
+
name: "",
|
|
663
|
+
type: "uint256",
|
|
664
|
+
},
|
|
665
|
+
],
|
|
666
|
+
name: "__beaconCallback",
|
|
667
|
+
outputs: [],
|
|
668
|
+
stateMutability: "nonpayable",
|
|
669
|
+
type: "function",
|
|
670
|
+
},
|
|
671
|
+
{
|
|
672
|
+
inputs: [
|
|
673
|
+
{
|
|
674
|
+
internalType: "address",
|
|
675
|
+
name: "stakingProvider",
|
|
676
|
+
type: "address",
|
|
677
|
+
},
|
|
678
|
+
],
|
|
679
|
+
name: "approveAuthorizationDecrease",
|
|
680
|
+
outputs: [],
|
|
681
|
+
stateMutability: "nonpayable",
|
|
682
|
+
type: "function",
|
|
683
|
+
},
|
|
684
|
+
{
|
|
685
|
+
inputs: [
|
|
686
|
+
{
|
|
687
|
+
components: [
|
|
688
|
+
{
|
|
689
|
+
internalType: "uint256",
|
|
690
|
+
name: "submitterMemberIndex",
|
|
691
|
+
type: "uint256",
|
|
692
|
+
},
|
|
693
|
+
{
|
|
694
|
+
internalType: "bytes",
|
|
695
|
+
name: "groupPubKey",
|
|
696
|
+
type: "bytes",
|
|
697
|
+
},
|
|
698
|
+
{
|
|
699
|
+
internalType: "uint8[]",
|
|
700
|
+
name: "misbehavedMembersIndices",
|
|
701
|
+
type: "uint8[]",
|
|
702
|
+
},
|
|
703
|
+
{
|
|
704
|
+
internalType: "bytes",
|
|
705
|
+
name: "signatures",
|
|
706
|
+
type: "bytes",
|
|
707
|
+
},
|
|
708
|
+
{
|
|
709
|
+
internalType: "uint256[]",
|
|
710
|
+
name: "signingMembersIndices",
|
|
711
|
+
type: "uint256[]",
|
|
712
|
+
},
|
|
713
|
+
{
|
|
714
|
+
internalType: "uint32[]",
|
|
715
|
+
name: "members",
|
|
716
|
+
type: "uint32[]",
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
internalType: "bytes32",
|
|
720
|
+
name: "membersHash",
|
|
721
|
+
type: "bytes32",
|
|
722
|
+
},
|
|
723
|
+
],
|
|
724
|
+
internalType: "struct EcdsaDkg.Result",
|
|
725
|
+
name: "dkgResult",
|
|
726
|
+
type: "tuple",
|
|
727
|
+
},
|
|
728
|
+
],
|
|
729
|
+
name: "approveDkgResult",
|
|
730
|
+
outputs: [],
|
|
731
|
+
stateMutability: "nonpayable",
|
|
732
|
+
type: "function",
|
|
733
|
+
},
|
|
734
|
+
{
|
|
735
|
+
inputs: [
|
|
736
|
+
{
|
|
737
|
+
internalType: "address",
|
|
738
|
+
name: "stakingProvider",
|
|
739
|
+
type: "address",
|
|
740
|
+
},
|
|
741
|
+
{
|
|
742
|
+
internalType: "uint96",
|
|
743
|
+
name: "fromAmount",
|
|
744
|
+
type: "uint96",
|
|
745
|
+
},
|
|
746
|
+
{
|
|
747
|
+
internalType: "uint96",
|
|
748
|
+
name: "toAmount",
|
|
749
|
+
type: "uint96",
|
|
750
|
+
},
|
|
751
|
+
],
|
|
752
|
+
name: "authorizationDecreaseRequested",
|
|
753
|
+
outputs: [],
|
|
754
|
+
stateMutability: "nonpayable",
|
|
755
|
+
type: "function",
|
|
756
|
+
},
|
|
757
|
+
{
|
|
758
|
+
inputs: [
|
|
759
|
+
{
|
|
760
|
+
internalType: "address",
|
|
761
|
+
name: "stakingProvider",
|
|
762
|
+
type: "address",
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
internalType: "uint96",
|
|
766
|
+
name: "fromAmount",
|
|
767
|
+
type: "uint96",
|
|
768
|
+
},
|
|
769
|
+
{
|
|
770
|
+
internalType: "uint96",
|
|
771
|
+
name: "toAmount",
|
|
772
|
+
type: "uint96",
|
|
773
|
+
},
|
|
774
|
+
],
|
|
775
|
+
name: "authorizationIncreased",
|
|
776
|
+
outputs: [],
|
|
777
|
+
stateMutability: "nonpayable",
|
|
778
|
+
type: "function",
|
|
779
|
+
},
|
|
780
|
+
{
|
|
781
|
+
inputs: [],
|
|
782
|
+
name: "authorizationParameters",
|
|
783
|
+
outputs: [
|
|
784
|
+
{
|
|
785
|
+
internalType: "uint96",
|
|
786
|
+
name: "minimumAuthorization",
|
|
787
|
+
type: "uint96",
|
|
788
|
+
},
|
|
789
|
+
{
|
|
790
|
+
internalType: "uint64",
|
|
791
|
+
name: "authorizationDecreaseDelay",
|
|
792
|
+
type: "uint64",
|
|
793
|
+
},
|
|
794
|
+
{
|
|
795
|
+
internalType: "uint64",
|
|
796
|
+
name: "authorizationDecreaseChangePeriod",
|
|
797
|
+
type: "uint64",
|
|
798
|
+
},
|
|
799
|
+
],
|
|
800
|
+
stateMutability: "view",
|
|
801
|
+
type: "function",
|
|
802
|
+
},
|
|
803
|
+
{
|
|
804
|
+
inputs: [
|
|
805
|
+
{
|
|
806
|
+
internalType: "address",
|
|
807
|
+
name: "stakingProvider",
|
|
808
|
+
type: "address",
|
|
809
|
+
},
|
|
810
|
+
],
|
|
811
|
+
name: "availableRewards",
|
|
812
|
+
outputs: [
|
|
813
|
+
{
|
|
814
|
+
internalType: "uint96",
|
|
815
|
+
name: "",
|
|
816
|
+
type: "uint96",
|
|
817
|
+
},
|
|
818
|
+
],
|
|
819
|
+
stateMutability: "view",
|
|
820
|
+
type: "function",
|
|
821
|
+
},
|
|
822
|
+
{
|
|
823
|
+
inputs: [
|
|
824
|
+
{
|
|
825
|
+
components: [
|
|
826
|
+
{
|
|
827
|
+
internalType: "uint256",
|
|
828
|
+
name: "submitterMemberIndex",
|
|
829
|
+
type: "uint256",
|
|
830
|
+
},
|
|
831
|
+
{
|
|
832
|
+
internalType: "bytes",
|
|
833
|
+
name: "groupPubKey",
|
|
834
|
+
type: "bytes",
|
|
835
|
+
},
|
|
836
|
+
{
|
|
837
|
+
internalType: "uint8[]",
|
|
838
|
+
name: "misbehavedMembersIndices",
|
|
839
|
+
type: "uint8[]",
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
internalType: "bytes",
|
|
843
|
+
name: "signatures",
|
|
844
|
+
type: "bytes",
|
|
845
|
+
},
|
|
846
|
+
{
|
|
847
|
+
internalType: "uint256[]",
|
|
848
|
+
name: "signingMembersIndices",
|
|
849
|
+
type: "uint256[]",
|
|
850
|
+
},
|
|
851
|
+
{
|
|
852
|
+
internalType: "uint32[]",
|
|
853
|
+
name: "members",
|
|
854
|
+
type: "uint32[]",
|
|
855
|
+
},
|
|
856
|
+
{
|
|
857
|
+
internalType: "bytes32",
|
|
858
|
+
name: "membersHash",
|
|
859
|
+
type: "bytes32",
|
|
860
|
+
},
|
|
861
|
+
],
|
|
862
|
+
internalType: "struct EcdsaDkg.Result",
|
|
863
|
+
name: "dkgResult",
|
|
864
|
+
type: "tuple",
|
|
865
|
+
},
|
|
866
|
+
],
|
|
867
|
+
name: "challengeDkgResult",
|
|
868
|
+
outputs: [],
|
|
869
|
+
stateMutability: "nonpayable",
|
|
870
|
+
type: "function",
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
inputs: [
|
|
874
|
+
{
|
|
875
|
+
internalType: "bytes32",
|
|
876
|
+
name: "walletID",
|
|
877
|
+
type: "bytes32",
|
|
878
|
+
},
|
|
879
|
+
],
|
|
880
|
+
name: "closeWallet",
|
|
881
|
+
outputs: [],
|
|
882
|
+
stateMutability: "nonpayable",
|
|
883
|
+
type: "function",
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
inputs: [],
|
|
887
|
+
name: "dkgParameters",
|
|
888
|
+
outputs: [
|
|
889
|
+
{
|
|
890
|
+
components: [
|
|
891
|
+
{
|
|
892
|
+
internalType: "uint256",
|
|
893
|
+
name: "seedTimeout",
|
|
894
|
+
type: "uint256",
|
|
895
|
+
},
|
|
896
|
+
{
|
|
897
|
+
internalType: "uint256",
|
|
898
|
+
name: "resultChallengePeriodLength",
|
|
899
|
+
type: "uint256",
|
|
900
|
+
},
|
|
901
|
+
{
|
|
902
|
+
internalType: "uint256",
|
|
903
|
+
name: "resultSubmissionTimeout",
|
|
904
|
+
type: "uint256",
|
|
905
|
+
},
|
|
906
|
+
{
|
|
907
|
+
internalType: "uint256",
|
|
908
|
+
name: "submitterPrecedencePeriodLength",
|
|
909
|
+
type: "uint256",
|
|
910
|
+
},
|
|
911
|
+
],
|
|
912
|
+
internalType: "struct EcdsaDkg.Parameters",
|
|
913
|
+
name: "",
|
|
914
|
+
type: "tuple",
|
|
915
|
+
},
|
|
916
|
+
],
|
|
917
|
+
stateMutability: "view",
|
|
918
|
+
type: "function",
|
|
919
|
+
},
|
|
920
|
+
{
|
|
921
|
+
inputs: [
|
|
922
|
+
{
|
|
923
|
+
internalType: "address",
|
|
924
|
+
name: "stakingProvider",
|
|
925
|
+
type: "address",
|
|
926
|
+
},
|
|
927
|
+
],
|
|
928
|
+
name: "eligibleStake",
|
|
929
|
+
outputs: [
|
|
930
|
+
{
|
|
931
|
+
internalType: "uint96",
|
|
932
|
+
name: "",
|
|
933
|
+
type: "uint96",
|
|
934
|
+
},
|
|
935
|
+
],
|
|
936
|
+
stateMutability: "view",
|
|
937
|
+
type: "function",
|
|
938
|
+
},
|
|
939
|
+
{
|
|
940
|
+
inputs: [],
|
|
941
|
+
name: "gasParameters",
|
|
942
|
+
outputs: [
|
|
943
|
+
{
|
|
944
|
+
internalType: "uint256",
|
|
945
|
+
name: "dkgResultSubmissionGas",
|
|
946
|
+
type: "uint256",
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
internalType: "uint256",
|
|
950
|
+
name: "dkgResultApprovalGasOffset",
|
|
951
|
+
type: "uint256",
|
|
952
|
+
},
|
|
953
|
+
{
|
|
954
|
+
internalType: "uint256",
|
|
955
|
+
name: "notifyOperatorInactivityGasOffset",
|
|
956
|
+
type: "uint256",
|
|
957
|
+
},
|
|
958
|
+
{
|
|
959
|
+
internalType: "uint256",
|
|
960
|
+
name: "notifySeedTimeoutGasOffset",
|
|
961
|
+
type: "uint256",
|
|
962
|
+
},
|
|
963
|
+
{
|
|
964
|
+
internalType: "uint256",
|
|
965
|
+
name: "notifyDkgTimeoutNegativeGasOffset",
|
|
966
|
+
type: "uint256",
|
|
967
|
+
},
|
|
968
|
+
],
|
|
969
|
+
stateMutability: "view",
|
|
970
|
+
type: "function",
|
|
971
|
+
},
|
|
972
|
+
{
|
|
973
|
+
inputs: [
|
|
974
|
+
{
|
|
975
|
+
internalType: "bytes32",
|
|
976
|
+
name: "walletID",
|
|
977
|
+
type: "bytes32",
|
|
978
|
+
},
|
|
979
|
+
],
|
|
980
|
+
name: "getWallet",
|
|
981
|
+
outputs: [
|
|
982
|
+
{
|
|
983
|
+
components: [
|
|
984
|
+
{
|
|
985
|
+
internalType: "bytes32",
|
|
986
|
+
name: "membersIdsHash",
|
|
987
|
+
type: "bytes32",
|
|
988
|
+
},
|
|
989
|
+
{
|
|
990
|
+
internalType: "bytes32",
|
|
991
|
+
name: "publicKeyX",
|
|
992
|
+
type: "bytes32",
|
|
993
|
+
},
|
|
994
|
+
{
|
|
995
|
+
internalType: "bytes32",
|
|
996
|
+
name: "publicKeyY",
|
|
997
|
+
type: "bytes32",
|
|
998
|
+
},
|
|
999
|
+
],
|
|
1000
|
+
internalType: "struct Wallets.Wallet",
|
|
1001
|
+
name: "",
|
|
1002
|
+
type: "tuple",
|
|
1003
|
+
},
|
|
1004
|
+
],
|
|
1005
|
+
stateMutability: "view",
|
|
1006
|
+
type: "function",
|
|
1007
|
+
},
|
|
1008
|
+
{
|
|
1009
|
+
inputs: [],
|
|
1010
|
+
name: "getWalletCreationState",
|
|
1011
|
+
outputs: [
|
|
1012
|
+
{
|
|
1013
|
+
internalType: "enum EcdsaDkg.State",
|
|
1014
|
+
name: "",
|
|
1015
|
+
type: "uint8",
|
|
1016
|
+
},
|
|
1017
|
+
],
|
|
1018
|
+
stateMutability: "view",
|
|
1019
|
+
type: "function",
|
|
1020
|
+
},
|
|
1021
|
+
{
|
|
1022
|
+
inputs: [
|
|
1023
|
+
{
|
|
1024
|
+
internalType: "bytes32",
|
|
1025
|
+
name: "walletID",
|
|
1026
|
+
type: "bytes32",
|
|
1027
|
+
},
|
|
1028
|
+
],
|
|
1029
|
+
name: "getWalletPublicKey",
|
|
1030
|
+
outputs: [
|
|
1031
|
+
{
|
|
1032
|
+
internalType: "bytes",
|
|
1033
|
+
name: "",
|
|
1034
|
+
type: "bytes",
|
|
1035
|
+
},
|
|
1036
|
+
],
|
|
1037
|
+
stateMutability: "view",
|
|
1038
|
+
type: "function",
|
|
1039
|
+
},
|
|
1040
|
+
{
|
|
1041
|
+
inputs: [],
|
|
1042
|
+
name: "governance",
|
|
1043
|
+
outputs: [
|
|
1044
|
+
{
|
|
1045
|
+
internalType: "address",
|
|
1046
|
+
name: "",
|
|
1047
|
+
type: "address",
|
|
1048
|
+
},
|
|
1049
|
+
],
|
|
1050
|
+
stateMutability: "view",
|
|
1051
|
+
type: "function",
|
|
1052
|
+
},
|
|
1053
|
+
{
|
|
1054
|
+
inputs: [],
|
|
1055
|
+
name: "hasDkgTimedOut",
|
|
1056
|
+
outputs: [
|
|
1057
|
+
{
|
|
1058
|
+
internalType: "bool",
|
|
1059
|
+
name: "",
|
|
1060
|
+
type: "bool",
|
|
1061
|
+
},
|
|
1062
|
+
],
|
|
1063
|
+
stateMutability: "view",
|
|
1064
|
+
type: "function",
|
|
1065
|
+
},
|
|
1066
|
+
{
|
|
1067
|
+
inputs: [],
|
|
1068
|
+
name: "hasSeedTimedOut",
|
|
1069
|
+
outputs: [
|
|
1070
|
+
{
|
|
1071
|
+
internalType: "bool",
|
|
1072
|
+
name: "",
|
|
1073
|
+
type: "bool",
|
|
1074
|
+
},
|
|
1075
|
+
],
|
|
1076
|
+
stateMutability: "view",
|
|
1077
|
+
type: "function",
|
|
1078
|
+
},
|
|
1079
|
+
{
|
|
1080
|
+
inputs: [
|
|
1081
|
+
{
|
|
1082
|
+
internalType: "bytes32",
|
|
1083
|
+
name: "",
|
|
1084
|
+
type: "bytes32",
|
|
1085
|
+
},
|
|
1086
|
+
],
|
|
1087
|
+
name: "inactivityClaimNonce",
|
|
1088
|
+
outputs: [
|
|
1089
|
+
{
|
|
1090
|
+
internalType: "uint256",
|
|
1091
|
+
name: "",
|
|
1092
|
+
type: "uint256",
|
|
1093
|
+
},
|
|
1094
|
+
],
|
|
1095
|
+
stateMutability: "view",
|
|
1096
|
+
type: "function",
|
|
1097
|
+
},
|
|
1098
|
+
{
|
|
1099
|
+
inputs: [
|
|
1100
|
+
{
|
|
1101
|
+
internalType: "contract EcdsaDkgValidator",
|
|
1102
|
+
name: "_ecdsaDkgValidator",
|
|
1103
|
+
type: "address",
|
|
1104
|
+
},
|
|
1105
|
+
{
|
|
1106
|
+
internalType: "contract IRandomBeacon",
|
|
1107
|
+
name: "_randomBeacon",
|
|
1108
|
+
type: "address",
|
|
1109
|
+
},
|
|
1110
|
+
{
|
|
1111
|
+
internalType: "contract ReimbursementPool",
|
|
1112
|
+
name: "_reimbursementPool",
|
|
1113
|
+
type: "address",
|
|
1114
|
+
},
|
|
1115
|
+
],
|
|
1116
|
+
name: "initialize",
|
|
1117
|
+
outputs: [],
|
|
1118
|
+
stateMutability: "nonpayable",
|
|
1119
|
+
type: "function",
|
|
1120
|
+
},
|
|
1121
|
+
{
|
|
1122
|
+
inputs: [
|
|
1123
|
+
{
|
|
1124
|
+
internalType: "address",
|
|
1125
|
+
name: "stakingProvider",
|
|
1126
|
+
type: "address",
|
|
1127
|
+
},
|
|
1128
|
+
{
|
|
1129
|
+
internalType: "uint96",
|
|
1130
|
+
name: "fromAmount",
|
|
1131
|
+
type: "uint96",
|
|
1132
|
+
},
|
|
1133
|
+
{
|
|
1134
|
+
internalType: "uint96",
|
|
1135
|
+
name: "toAmount",
|
|
1136
|
+
type: "uint96",
|
|
1137
|
+
},
|
|
1138
|
+
],
|
|
1139
|
+
name: "involuntaryAuthorizationDecrease",
|
|
1140
|
+
outputs: [],
|
|
1141
|
+
stateMutability: "nonpayable",
|
|
1142
|
+
type: "function",
|
|
1143
|
+
},
|
|
1144
|
+
{
|
|
1145
|
+
inputs: [
|
|
1146
|
+
{
|
|
1147
|
+
components: [
|
|
1148
|
+
{
|
|
1149
|
+
internalType: "uint256",
|
|
1150
|
+
name: "submitterMemberIndex",
|
|
1151
|
+
type: "uint256",
|
|
1152
|
+
},
|
|
1153
|
+
{
|
|
1154
|
+
internalType: "bytes",
|
|
1155
|
+
name: "groupPubKey",
|
|
1156
|
+
type: "bytes",
|
|
1157
|
+
},
|
|
1158
|
+
{
|
|
1159
|
+
internalType: "uint8[]",
|
|
1160
|
+
name: "misbehavedMembersIndices",
|
|
1161
|
+
type: "uint8[]",
|
|
1162
|
+
},
|
|
1163
|
+
{
|
|
1164
|
+
internalType: "bytes",
|
|
1165
|
+
name: "signatures",
|
|
1166
|
+
type: "bytes",
|
|
1167
|
+
},
|
|
1168
|
+
{
|
|
1169
|
+
internalType: "uint256[]",
|
|
1170
|
+
name: "signingMembersIndices",
|
|
1171
|
+
type: "uint256[]",
|
|
1172
|
+
},
|
|
1173
|
+
{
|
|
1174
|
+
internalType: "uint32[]",
|
|
1175
|
+
name: "members",
|
|
1176
|
+
type: "uint32[]",
|
|
1177
|
+
},
|
|
1178
|
+
{
|
|
1179
|
+
internalType: "bytes32",
|
|
1180
|
+
name: "membersHash",
|
|
1181
|
+
type: "bytes32",
|
|
1182
|
+
},
|
|
1183
|
+
],
|
|
1184
|
+
internalType: "struct EcdsaDkg.Result",
|
|
1185
|
+
name: "result",
|
|
1186
|
+
type: "tuple",
|
|
1187
|
+
},
|
|
1188
|
+
],
|
|
1189
|
+
name: "isDkgResultValid",
|
|
1190
|
+
outputs: [
|
|
1191
|
+
{
|
|
1192
|
+
internalType: "bool",
|
|
1193
|
+
name: "",
|
|
1194
|
+
type: "bool",
|
|
1195
|
+
},
|
|
1196
|
+
{
|
|
1197
|
+
internalType: "string",
|
|
1198
|
+
name: "",
|
|
1199
|
+
type: "string",
|
|
1200
|
+
},
|
|
1201
|
+
],
|
|
1202
|
+
stateMutability: "view",
|
|
1203
|
+
type: "function",
|
|
1204
|
+
},
|
|
1205
|
+
{
|
|
1206
|
+
inputs: [
|
|
1207
|
+
{
|
|
1208
|
+
internalType: "address",
|
|
1209
|
+
name: "operator",
|
|
1210
|
+
type: "address",
|
|
1211
|
+
},
|
|
1212
|
+
],
|
|
1213
|
+
name: "isOperatorInPool",
|
|
1214
|
+
outputs: [
|
|
1215
|
+
{
|
|
1216
|
+
internalType: "bool",
|
|
1217
|
+
name: "",
|
|
1218
|
+
type: "bool",
|
|
1219
|
+
},
|
|
1220
|
+
],
|
|
1221
|
+
stateMutability: "view",
|
|
1222
|
+
type: "function",
|
|
1223
|
+
},
|
|
1224
|
+
{
|
|
1225
|
+
inputs: [
|
|
1226
|
+
{
|
|
1227
|
+
internalType: "address",
|
|
1228
|
+
name: "operator",
|
|
1229
|
+
type: "address",
|
|
1230
|
+
},
|
|
1231
|
+
],
|
|
1232
|
+
name: "isOperatorUpToDate",
|
|
1233
|
+
outputs: [
|
|
1234
|
+
{
|
|
1235
|
+
internalType: "bool",
|
|
1236
|
+
name: "",
|
|
1237
|
+
type: "bool",
|
|
1238
|
+
},
|
|
1239
|
+
],
|
|
1240
|
+
stateMutability: "view",
|
|
1241
|
+
type: "function",
|
|
1242
|
+
},
|
|
1243
|
+
{
|
|
1244
|
+
inputs: [
|
|
1245
|
+
{
|
|
1246
|
+
internalType: "bytes32",
|
|
1247
|
+
name: "walletID",
|
|
1248
|
+
type: "bytes32",
|
|
1249
|
+
},
|
|
1250
|
+
{
|
|
1251
|
+
internalType: "uint32[]",
|
|
1252
|
+
name: "walletMembersIDs",
|
|
1253
|
+
type: "uint32[]",
|
|
1254
|
+
},
|
|
1255
|
+
{
|
|
1256
|
+
internalType: "address",
|
|
1257
|
+
name: "operator",
|
|
1258
|
+
type: "address",
|
|
1259
|
+
},
|
|
1260
|
+
{
|
|
1261
|
+
internalType: "uint256",
|
|
1262
|
+
name: "walletMemberIndex",
|
|
1263
|
+
type: "uint256",
|
|
1264
|
+
},
|
|
1265
|
+
],
|
|
1266
|
+
name: "isWalletMember",
|
|
1267
|
+
outputs: [
|
|
1268
|
+
{
|
|
1269
|
+
internalType: "bool",
|
|
1270
|
+
name: "",
|
|
1271
|
+
type: "bool",
|
|
1272
|
+
},
|
|
1273
|
+
],
|
|
1274
|
+
stateMutability: "view",
|
|
1275
|
+
type: "function",
|
|
1276
|
+
},
|
|
1277
|
+
{
|
|
1278
|
+
inputs: [
|
|
1279
|
+
{
|
|
1280
|
+
internalType: "bytes32",
|
|
1281
|
+
name: "walletID",
|
|
1282
|
+
type: "bytes32",
|
|
1283
|
+
},
|
|
1284
|
+
],
|
|
1285
|
+
name: "isWalletRegistered",
|
|
1286
|
+
outputs: [
|
|
1287
|
+
{
|
|
1288
|
+
internalType: "bool",
|
|
1289
|
+
name: "",
|
|
1290
|
+
type: "bool",
|
|
1291
|
+
},
|
|
1292
|
+
],
|
|
1293
|
+
stateMutability: "view",
|
|
1294
|
+
type: "function",
|
|
1295
|
+
},
|
|
1296
|
+
{
|
|
1297
|
+
inputs: [],
|
|
1298
|
+
name: "joinSortitionPool",
|
|
1299
|
+
outputs: [],
|
|
1300
|
+
stateMutability: "nonpayable",
|
|
1301
|
+
type: "function",
|
|
1302
|
+
},
|
|
1303
|
+
{
|
|
1304
|
+
inputs: [],
|
|
1305
|
+
name: "minimumAuthorization",
|
|
1306
|
+
outputs: [
|
|
1307
|
+
{
|
|
1308
|
+
internalType: "uint96",
|
|
1309
|
+
name: "",
|
|
1310
|
+
type: "uint96",
|
|
1311
|
+
},
|
|
1312
|
+
],
|
|
1313
|
+
stateMutability: "view",
|
|
1314
|
+
type: "function",
|
|
1315
|
+
},
|
|
1316
|
+
{
|
|
1317
|
+
inputs: [],
|
|
1318
|
+
name: "notifyDkgTimeout",
|
|
1319
|
+
outputs: [],
|
|
1320
|
+
stateMutability: "nonpayable",
|
|
1321
|
+
type: "function",
|
|
1322
|
+
},
|
|
1323
|
+
{
|
|
1324
|
+
inputs: [
|
|
1325
|
+
{
|
|
1326
|
+
components: [
|
|
1327
|
+
{
|
|
1328
|
+
internalType: "bytes32",
|
|
1329
|
+
name: "walletID",
|
|
1330
|
+
type: "bytes32",
|
|
1331
|
+
},
|
|
1332
|
+
{
|
|
1333
|
+
internalType: "uint256[]",
|
|
1334
|
+
name: "inactiveMembersIndices",
|
|
1335
|
+
type: "uint256[]",
|
|
1336
|
+
},
|
|
1337
|
+
{
|
|
1338
|
+
internalType: "bool",
|
|
1339
|
+
name: "heartbeatFailed",
|
|
1340
|
+
type: "bool",
|
|
1341
|
+
},
|
|
1342
|
+
{
|
|
1343
|
+
internalType: "bytes",
|
|
1344
|
+
name: "signatures",
|
|
1345
|
+
type: "bytes",
|
|
1346
|
+
},
|
|
1347
|
+
{
|
|
1348
|
+
internalType: "uint256[]",
|
|
1349
|
+
name: "signingMembersIndices",
|
|
1350
|
+
type: "uint256[]",
|
|
1351
|
+
},
|
|
1352
|
+
],
|
|
1353
|
+
internalType: "struct EcdsaInactivity.Claim",
|
|
1354
|
+
name: "claim",
|
|
1355
|
+
type: "tuple",
|
|
1356
|
+
},
|
|
1357
|
+
{
|
|
1358
|
+
internalType: "uint256",
|
|
1359
|
+
name: "nonce",
|
|
1360
|
+
type: "uint256",
|
|
1361
|
+
},
|
|
1362
|
+
{
|
|
1363
|
+
internalType: "uint32[]",
|
|
1364
|
+
name: "groupMembers",
|
|
1365
|
+
type: "uint32[]",
|
|
1366
|
+
},
|
|
1367
|
+
],
|
|
1368
|
+
name: "notifyOperatorInactivity",
|
|
1369
|
+
outputs: [],
|
|
1370
|
+
stateMutability: "nonpayable",
|
|
1371
|
+
type: "function",
|
|
1372
|
+
},
|
|
1373
|
+
{
|
|
1374
|
+
inputs: [],
|
|
1375
|
+
name: "notifySeedTimeout",
|
|
1376
|
+
outputs: [],
|
|
1377
|
+
stateMutability: "nonpayable",
|
|
1378
|
+
type: "function",
|
|
1379
|
+
},
|
|
1380
|
+
{
|
|
1381
|
+
inputs: [
|
|
1382
|
+
{
|
|
1383
|
+
internalType: "address",
|
|
1384
|
+
name: "operator",
|
|
1385
|
+
type: "address",
|
|
1386
|
+
},
|
|
1387
|
+
],
|
|
1388
|
+
name: "operatorToStakingProvider",
|
|
1389
|
+
outputs: [
|
|
1390
|
+
{
|
|
1391
|
+
internalType: "address",
|
|
1392
|
+
name: "",
|
|
1393
|
+
type: "address",
|
|
1394
|
+
},
|
|
1395
|
+
],
|
|
1396
|
+
stateMutability: "view",
|
|
1397
|
+
type: "function",
|
|
1398
|
+
},
|
|
1399
|
+
{
|
|
1400
|
+
inputs: [
|
|
1401
|
+
{
|
|
1402
|
+
internalType: "address",
|
|
1403
|
+
name: "stakingProvider",
|
|
1404
|
+
type: "address",
|
|
1405
|
+
},
|
|
1406
|
+
],
|
|
1407
|
+
name: "pendingAuthorizationDecrease",
|
|
1408
|
+
outputs: [
|
|
1409
|
+
{
|
|
1410
|
+
internalType: "uint96",
|
|
1411
|
+
name: "",
|
|
1412
|
+
type: "uint96",
|
|
1413
|
+
},
|
|
1414
|
+
],
|
|
1415
|
+
stateMutability: "view",
|
|
1416
|
+
type: "function",
|
|
1417
|
+
},
|
|
1418
|
+
{
|
|
1419
|
+
inputs: [],
|
|
1420
|
+
name: "randomBeacon",
|
|
1421
|
+
outputs: [
|
|
1422
|
+
{
|
|
1423
|
+
internalType: "contract IRandomBeacon",
|
|
1424
|
+
name: "",
|
|
1425
|
+
type: "address",
|
|
1426
|
+
},
|
|
1427
|
+
],
|
|
1428
|
+
stateMutability: "view",
|
|
1429
|
+
type: "function",
|
|
1430
|
+
},
|
|
1431
|
+
{
|
|
1432
|
+
inputs: [
|
|
1433
|
+
{
|
|
1434
|
+
internalType: "address",
|
|
1435
|
+
name: "operator",
|
|
1436
|
+
type: "address",
|
|
1437
|
+
},
|
|
1438
|
+
],
|
|
1439
|
+
name: "registerOperator",
|
|
1440
|
+
outputs: [],
|
|
1441
|
+
stateMutability: "nonpayable",
|
|
1442
|
+
type: "function",
|
|
1443
|
+
},
|
|
1444
|
+
{
|
|
1445
|
+
inputs: [],
|
|
1446
|
+
name: "reimbursementPool",
|
|
1447
|
+
outputs: [
|
|
1448
|
+
{
|
|
1449
|
+
internalType: "contract ReimbursementPool",
|
|
1450
|
+
name: "",
|
|
1451
|
+
type: "address",
|
|
1452
|
+
},
|
|
1453
|
+
],
|
|
1454
|
+
stateMutability: "view",
|
|
1455
|
+
type: "function",
|
|
1456
|
+
},
|
|
1457
|
+
{
|
|
1458
|
+
inputs: [
|
|
1459
|
+
{
|
|
1460
|
+
internalType: "address",
|
|
1461
|
+
name: "stakingProvider",
|
|
1462
|
+
type: "address",
|
|
1463
|
+
},
|
|
1464
|
+
],
|
|
1465
|
+
name: "remainingAuthorizationDecreaseDelay",
|
|
1466
|
+
outputs: [
|
|
1467
|
+
{
|
|
1468
|
+
internalType: "uint64",
|
|
1469
|
+
name: "",
|
|
1470
|
+
type: "uint64",
|
|
1471
|
+
},
|
|
1472
|
+
],
|
|
1473
|
+
stateMutability: "view",
|
|
1474
|
+
type: "function",
|
|
1475
|
+
},
|
|
1476
|
+
{
|
|
1477
|
+
inputs: [],
|
|
1478
|
+
name: "requestNewWallet",
|
|
1479
|
+
outputs: [],
|
|
1480
|
+
stateMutability: "nonpayable",
|
|
1481
|
+
type: "function",
|
|
1482
|
+
},
|
|
1483
|
+
{
|
|
1484
|
+
inputs: [],
|
|
1485
|
+
name: "rewardParameters",
|
|
1486
|
+
outputs: [
|
|
1487
|
+
{
|
|
1488
|
+
internalType: "uint256",
|
|
1489
|
+
name: "maliciousDkgResultNotificationRewardMultiplier",
|
|
1490
|
+
type: "uint256",
|
|
1491
|
+
},
|
|
1492
|
+
{
|
|
1493
|
+
internalType: "uint256",
|
|
1494
|
+
name: "sortitionPoolRewardsBanDuration",
|
|
1495
|
+
type: "uint256",
|
|
1496
|
+
},
|
|
1497
|
+
],
|
|
1498
|
+
stateMutability: "view",
|
|
1499
|
+
type: "function",
|
|
1500
|
+
},
|
|
1501
|
+
{
|
|
1502
|
+
inputs: [
|
|
1503
|
+
{
|
|
1504
|
+
internalType: "uint96",
|
|
1505
|
+
name: "amount",
|
|
1506
|
+
type: "uint96",
|
|
1507
|
+
},
|
|
1508
|
+
{
|
|
1509
|
+
internalType: "uint256",
|
|
1510
|
+
name: "rewardMultiplier",
|
|
1511
|
+
type: "uint256",
|
|
1512
|
+
},
|
|
1513
|
+
{
|
|
1514
|
+
internalType: "address",
|
|
1515
|
+
name: "notifier",
|
|
1516
|
+
type: "address",
|
|
1517
|
+
},
|
|
1518
|
+
{
|
|
1519
|
+
internalType: "bytes32",
|
|
1520
|
+
name: "walletID",
|
|
1521
|
+
type: "bytes32",
|
|
1522
|
+
},
|
|
1523
|
+
{
|
|
1524
|
+
internalType: "uint32[]",
|
|
1525
|
+
name: "walletMembersIDs",
|
|
1526
|
+
type: "uint32[]",
|
|
1527
|
+
},
|
|
1528
|
+
],
|
|
1529
|
+
name: "seize",
|
|
1530
|
+
outputs: [],
|
|
1531
|
+
stateMutability: "nonpayable",
|
|
1532
|
+
type: "function",
|
|
1533
|
+
},
|
|
1534
|
+
{
|
|
1535
|
+
inputs: [],
|
|
1536
|
+
name: "selectGroup",
|
|
1537
|
+
outputs: [
|
|
1538
|
+
{
|
|
1539
|
+
internalType: "uint32[]",
|
|
1540
|
+
name: "",
|
|
1541
|
+
type: "uint32[]",
|
|
1542
|
+
},
|
|
1543
|
+
],
|
|
1544
|
+
stateMutability: "view",
|
|
1545
|
+
type: "function",
|
|
1546
|
+
},
|
|
1547
|
+
{
|
|
1548
|
+
inputs: [],
|
|
1549
|
+
name: "slashingParameters",
|
|
1550
|
+
outputs: [
|
|
1551
|
+
{
|
|
1552
|
+
internalType: "uint96",
|
|
1553
|
+
name: "maliciousDkgResultSlashingAmount",
|
|
1554
|
+
type: "uint96",
|
|
1555
|
+
},
|
|
1556
|
+
],
|
|
1557
|
+
stateMutability: "view",
|
|
1558
|
+
type: "function",
|
|
1559
|
+
},
|
|
1560
|
+
{
|
|
1561
|
+
inputs: [],
|
|
1562
|
+
name: "sortitionPool",
|
|
1563
|
+
outputs: [
|
|
1564
|
+
{
|
|
1565
|
+
internalType: "contract SortitionPool",
|
|
1566
|
+
name: "",
|
|
1567
|
+
type: "address",
|
|
1568
|
+
},
|
|
1569
|
+
],
|
|
1570
|
+
stateMutability: "view",
|
|
1571
|
+
type: "function",
|
|
1572
|
+
},
|
|
1573
|
+
{
|
|
1574
|
+
inputs: [],
|
|
1575
|
+
name: "staking",
|
|
1576
|
+
outputs: [
|
|
1577
|
+
{
|
|
1578
|
+
internalType: "contract IStaking",
|
|
1579
|
+
name: "",
|
|
1580
|
+
type: "address",
|
|
1581
|
+
},
|
|
1582
|
+
],
|
|
1583
|
+
stateMutability: "view",
|
|
1584
|
+
type: "function",
|
|
1585
|
+
},
|
|
1586
|
+
{
|
|
1587
|
+
inputs: [
|
|
1588
|
+
{
|
|
1589
|
+
internalType: "address",
|
|
1590
|
+
name: "stakingProvider",
|
|
1591
|
+
type: "address",
|
|
1592
|
+
},
|
|
1593
|
+
],
|
|
1594
|
+
name: "stakingProviderToOperator",
|
|
1595
|
+
outputs: [
|
|
1596
|
+
{
|
|
1597
|
+
internalType: "address",
|
|
1598
|
+
name: "",
|
|
1599
|
+
type: "address",
|
|
1600
|
+
},
|
|
1601
|
+
],
|
|
1602
|
+
stateMutability: "view",
|
|
1603
|
+
type: "function",
|
|
1604
|
+
},
|
|
1605
|
+
{
|
|
1606
|
+
inputs: [
|
|
1607
|
+
{
|
|
1608
|
+
components: [
|
|
1609
|
+
{
|
|
1610
|
+
internalType: "uint256",
|
|
1611
|
+
name: "submitterMemberIndex",
|
|
1612
|
+
type: "uint256",
|
|
1613
|
+
},
|
|
1614
|
+
{
|
|
1615
|
+
internalType: "bytes",
|
|
1616
|
+
name: "groupPubKey",
|
|
1617
|
+
type: "bytes",
|
|
1618
|
+
},
|
|
1619
|
+
{
|
|
1620
|
+
internalType: "uint8[]",
|
|
1621
|
+
name: "misbehavedMembersIndices",
|
|
1622
|
+
type: "uint8[]",
|
|
1623
|
+
},
|
|
1624
|
+
{
|
|
1625
|
+
internalType: "bytes",
|
|
1626
|
+
name: "signatures",
|
|
1627
|
+
type: "bytes",
|
|
1628
|
+
},
|
|
1629
|
+
{
|
|
1630
|
+
internalType: "uint256[]",
|
|
1631
|
+
name: "signingMembersIndices",
|
|
1632
|
+
type: "uint256[]",
|
|
1633
|
+
},
|
|
1634
|
+
{
|
|
1635
|
+
internalType: "uint32[]",
|
|
1636
|
+
name: "members",
|
|
1637
|
+
type: "uint32[]",
|
|
1638
|
+
},
|
|
1639
|
+
{
|
|
1640
|
+
internalType: "bytes32",
|
|
1641
|
+
name: "membersHash",
|
|
1642
|
+
type: "bytes32",
|
|
1643
|
+
},
|
|
1644
|
+
],
|
|
1645
|
+
internalType: "struct EcdsaDkg.Result",
|
|
1646
|
+
name: "dkgResult",
|
|
1647
|
+
type: "tuple",
|
|
1648
|
+
},
|
|
1649
|
+
],
|
|
1650
|
+
name: "submitDkgResult",
|
|
1651
|
+
outputs: [],
|
|
1652
|
+
stateMutability: "nonpayable",
|
|
1653
|
+
type: "function",
|
|
1654
|
+
},
|
|
1655
|
+
{
|
|
1656
|
+
inputs: [
|
|
1657
|
+
{
|
|
1658
|
+
internalType: "address",
|
|
1659
|
+
name: "newGovernance",
|
|
1660
|
+
type: "address",
|
|
1661
|
+
},
|
|
1662
|
+
],
|
|
1663
|
+
name: "transferGovernance",
|
|
1664
|
+
outputs: [],
|
|
1665
|
+
stateMutability: "nonpayable",
|
|
1666
|
+
type: "function",
|
|
1667
|
+
},
|
|
1668
|
+
{
|
|
1669
|
+
inputs: [
|
|
1670
|
+
{
|
|
1671
|
+
internalType: "uint96",
|
|
1672
|
+
name: "_minimumAuthorization",
|
|
1673
|
+
type: "uint96",
|
|
1674
|
+
},
|
|
1675
|
+
{
|
|
1676
|
+
internalType: "uint64",
|
|
1677
|
+
name: "_authorizationDecreaseDelay",
|
|
1678
|
+
type: "uint64",
|
|
1679
|
+
},
|
|
1680
|
+
{
|
|
1681
|
+
internalType: "uint64",
|
|
1682
|
+
name: "_authorizationDecreaseChangePeriod",
|
|
1683
|
+
type: "uint64",
|
|
1684
|
+
},
|
|
1685
|
+
],
|
|
1686
|
+
name: "updateAuthorizationParameters",
|
|
1687
|
+
outputs: [],
|
|
1688
|
+
stateMutability: "nonpayable",
|
|
1689
|
+
type: "function",
|
|
1690
|
+
},
|
|
1691
|
+
{
|
|
1692
|
+
inputs: [
|
|
1693
|
+
{
|
|
1694
|
+
internalType: "uint256",
|
|
1695
|
+
name: "_seedTimeout",
|
|
1696
|
+
type: "uint256",
|
|
1697
|
+
},
|
|
1698
|
+
{
|
|
1699
|
+
internalType: "uint256",
|
|
1700
|
+
name: "_resultChallengePeriodLength",
|
|
1701
|
+
type: "uint256",
|
|
1702
|
+
},
|
|
1703
|
+
{
|
|
1704
|
+
internalType: "uint256",
|
|
1705
|
+
name: "_resultSubmissionTimeout",
|
|
1706
|
+
type: "uint256",
|
|
1707
|
+
},
|
|
1708
|
+
{
|
|
1709
|
+
internalType: "uint256",
|
|
1710
|
+
name: "_submitterPrecedencePeriodLength",
|
|
1711
|
+
type: "uint256",
|
|
1712
|
+
},
|
|
1713
|
+
],
|
|
1714
|
+
name: "updateDkgParameters",
|
|
1715
|
+
outputs: [],
|
|
1716
|
+
stateMutability: "nonpayable",
|
|
1717
|
+
type: "function",
|
|
1718
|
+
},
|
|
1719
|
+
{
|
|
1720
|
+
inputs: [
|
|
1721
|
+
{
|
|
1722
|
+
internalType: "uint256",
|
|
1723
|
+
name: "dkgResultSubmissionGas",
|
|
1724
|
+
type: "uint256",
|
|
1725
|
+
},
|
|
1726
|
+
{
|
|
1727
|
+
internalType: "uint256",
|
|
1728
|
+
name: "dkgResultApprovalGasOffset",
|
|
1729
|
+
type: "uint256",
|
|
1730
|
+
},
|
|
1731
|
+
{
|
|
1732
|
+
internalType: "uint256",
|
|
1733
|
+
name: "notifyOperatorInactivityGasOffset",
|
|
1734
|
+
type: "uint256",
|
|
1735
|
+
},
|
|
1736
|
+
{
|
|
1737
|
+
internalType: "uint256",
|
|
1738
|
+
name: "notifySeedTimeoutGasOffset",
|
|
1739
|
+
type: "uint256",
|
|
1740
|
+
},
|
|
1741
|
+
{
|
|
1742
|
+
internalType: "uint256",
|
|
1743
|
+
name: "notifyDkgTimeoutNegativeGasOffset",
|
|
1744
|
+
type: "uint256",
|
|
1745
|
+
},
|
|
1746
|
+
],
|
|
1747
|
+
name: "updateGasParameters",
|
|
1748
|
+
outputs: [],
|
|
1749
|
+
stateMutability: "nonpayable",
|
|
1750
|
+
type: "function",
|
|
1751
|
+
},
|
|
1752
|
+
{
|
|
1753
|
+
inputs: [
|
|
1754
|
+
{
|
|
1755
|
+
internalType: "address",
|
|
1756
|
+
name: "operator",
|
|
1757
|
+
type: "address",
|
|
1758
|
+
},
|
|
1759
|
+
],
|
|
1760
|
+
name: "updateOperatorStatus",
|
|
1761
|
+
outputs: [],
|
|
1762
|
+
stateMutability: "nonpayable",
|
|
1763
|
+
type: "function",
|
|
1764
|
+
},
|
|
1765
|
+
{
|
|
1766
|
+
inputs: [
|
|
1767
|
+
{
|
|
1768
|
+
internalType: "contract ReimbursementPool",
|
|
1769
|
+
name: "_reimbursementPool",
|
|
1770
|
+
type: "address",
|
|
1771
|
+
},
|
|
1772
|
+
],
|
|
1773
|
+
name: "updateReimbursementPool",
|
|
1774
|
+
outputs: [],
|
|
1775
|
+
stateMutability: "nonpayable",
|
|
1776
|
+
type: "function",
|
|
1777
|
+
},
|
|
1778
|
+
{
|
|
1779
|
+
inputs: [
|
|
1780
|
+
{
|
|
1781
|
+
internalType: "uint256",
|
|
1782
|
+
name: "maliciousDkgResultNotificationRewardMultiplier",
|
|
1783
|
+
type: "uint256",
|
|
1784
|
+
},
|
|
1785
|
+
{
|
|
1786
|
+
internalType: "uint256",
|
|
1787
|
+
name: "sortitionPoolRewardsBanDuration",
|
|
1788
|
+
type: "uint256",
|
|
1789
|
+
},
|
|
1790
|
+
],
|
|
1791
|
+
name: "updateRewardParameters",
|
|
1792
|
+
outputs: [],
|
|
1793
|
+
stateMutability: "nonpayable",
|
|
1794
|
+
type: "function",
|
|
1795
|
+
},
|
|
1796
|
+
{
|
|
1797
|
+
inputs: [
|
|
1798
|
+
{
|
|
1799
|
+
internalType: "uint96",
|
|
1800
|
+
name: "maliciousDkgResultSlashingAmount",
|
|
1801
|
+
type: "uint96",
|
|
1802
|
+
},
|
|
1803
|
+
],
|
|
1804
|
+
name: "updateSlashingParameters",
|
|
1805
|
+
outputs: [],
|
|
1806
|
+
stateMutability: "nonpayable",
|
|
1807
|
+
type: "function",
|
|
1808
|
+
},
|
|
1809
|
+
{
|
|
1810
|
+
inputs: [
|
|
1811
|
+
{
|
|
1812
|
+
internalType: "contract IWalletOwner",
|
|
1813
|
+
name: "_walletOwner",
|
|
1814
|
+
type: "address",
|
|
1815
|
+
},
|
|
1816
|
+
],
|
|
1817
|
+
name: "updateWalletOwner",
|
|
1818
|
+
outputs: [],
|
|
1819
|
+
stateMutability: "nonpayable",
|
|
1820
|
+
type: "function",
|
|
1821
|
+
},
|
|
1822
|
+
{
|
|
1823
|
+
inputs: [
|
|
1824
|
+
{
|
|
1825
|
+
internalType: "contract IRandomBeacon",
|
|
1826
|
+
name: "_randomBeacon",
|
|
1827
|
+
type: "address",
|
|
1828
|
+
},
|
|
1829
|
+
],
|
|
1830
|
+
name: "upgradeRandomBeacon",
|
|
1831
|
+
outputs: [],
|
|
1832
|
+
stateMutability: "nonpayable",
|
|
1833
|
+
type: "function",
|
|
1834
|
+
},
|
|
1835
|
+
{
|
|
1836
|
+
inputs: [],
|
|
1837
|
+
name: "walletOwner",
|
|
1838
|
+
outputs: [
|
|
1839
|
+
{
|
|
1840
|
+
internalType: "contract IWalletOwner",
|
|
1841
|
+
name: "",
|
|
1842
|
+
type: "address",
|
|
1843
|
+
},
|
|
1844
|
+
],
|
|
1845
|
+
stateMutability: "view",
|
|
1846
|
+
type: "function",
|
|
1847
|
+
},
|
|
1848
|
+
{
|
|
1849
|
+
inputs: [
|
|
1850
|
+
{
|
|
1851
|
+
internalType: "address",
|
|
1852
|
+
name: "recipient",
|
|
1853
|
+
type: "address",
|
|
1854
|
+
},
|
|
1855
|
+
],
|
|
1856
|
+
name: "withdrawIneligibleRewards",
|
|
1857
|
+
outputs: [],
|
|
1858
|
+
stateMutability: "nonpayable",
|
|
1859
|
+
type: "function",
|
|
1860
|
+
},
|
|
1861
|
+
{
|
|
1862
|
+
inputs: [
|
|
1863
|
+
{
|
|
1864
|
+
internalType: "address",
|
|
1865
|
+
name: "stakingProvider",
|
|
1866
|
+
type: "address",
|
|
1867
|
+
},
|
|
1868
|
+
],
|
|
1869
|
+
name: "withdrawRewards",
|
|
1870
|
+
outputs: [],
|
|
1871
|
+
stateMutability: "nonpayable",
|
|
1872
|
+
type: "function",
|
|
1873
|
+
},
|
|
1874
|
+
];
|
|
1875
|
+
const _bytecode = "0x60c06040523480156200001157600080fd5b5060405162006182380380620061828339810160408190526200003491620001a1565b6001600160a01b03808316608052811660a0526200005162000059565b5050620001e0565b6200006560ff62000068565b50565b606454600090610100900460ff161562000103578160ff166001148015620000a35750620000a1306200017c60201b6200274e1760201c565b155b620000fb5760405162461bcd60e51b815260206004820152602e60248201526000805160206200616283398151915260448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b506000919050565b60645460ff808416911610620001625760405162461bcd60e51b815260206004820152602e60248201526000805160206200616283398151915260448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401620000f2565b506064805460ff191660ff92909216919091179055600190565b6001600160a01b03163b151590565b6001600160a01b03811681146200006557600080fd5b60008060408385031215620001b557600080fd5b8251620001c2816200018b565b6020840151909250620001d5816200018b565b809150509250929050565b60805160a051615e98620002ca600039600081816104db01528181610a1b01528181610a6801528181610abc01528181610b0a01528181610d0501528181610eef01528181611377015281816115b20152818161167f01528181611e6d01528181612216015261253e0152600081816107d601528181610a8901528181610add01528181610b2b01528181610c0b01528181610f9a0152818161111d015281816113020152818161184f0152818161197101528181611d08015281816120a8015281816122b2015281816124af0152818161255f015281816125be01526126a60152615e986000f3fe608060405234801561001057600080fd5b50600436106103995760003560e01c80637e0049fd116101e9578063c9bacaad1161010f578063df07ce59116100ad578063f0820c921161007c578063f0820c921461096e578063f7186ce01461097f578063f854a27f14610992578063fd2a4788146109a557600080fd5b8063df07ce5914610912578063e03e453514610925578063e686440f1461093a578063e83ab3a51461094d57600080fd5b8063d38bfff4116100e9578063d38bfff4146108b8578063d855c631146108cb578063d8dc404d146108d3578063ded56d45146108e657600080fd5b8063c9bacaad1461087d578063cc56238814610890578063d0bcc0e3146108a557600080fd5b8063a04e298011610187578063c09975cd11610156578063c09975cd14610818578063c0c53b8b1461082b578063c7c49c981461083e578063c88e70f41461086a57600080fd5b8063a04e2980146107b6578063b13b55b2146107c9578063b54a2374146107d1578063b5e9ce8b146107f857600080fd5b806388a59590116101c357806388a595901461072b57806393cc51a2146107655780639879d19b146107785780639c9de0281461078b57600080fd5b80637e0049fd146106d65780637e33cba6146106e9578063830f9e02146106fc57600080fd5b806352902301116102ce5780636c9ecd641161026c578063770124d31161023b578063770124d3146105e3578063789d392a146105eb5780637b14729e146106665780637b35b4e6146106c357600080fd5b80636c9ecd64146105a25780636febd464146105b557806372cc8c6d146105c857806375e0ae5a146105d057600080fd5b8063663032cd116102a8578063663032cd1461056157806368c34948146105745780636a7f7a901461057c5780636b5f2bff1461058f57600080fd5b806352902301146105205780635aa6e6751461053b5780635c5b38701461054e57600080fd5b8063227fd44f1161033b5780633682a450116103155780633682a450146104b057806342d86693146104c35780634cf088d9146104d65780634d99f473146104fd57600080fd5b8063227fd44f14610477578063313767661461048a578063343bb9271461049d57600080fd5b8063167f051711610377578063167f0517146104235780631ae879e81461042b5780631c5b07621461043f5780631d35fa631461045257600080fd5b806308aa090b1461039e57806314a85474146103e2578063153622b3146103f7575b600080fd5b6103a66109b8565b6040516103d991908151815260208083015190820152604080830151908201526060918201519181019190915260800190565b60405180910390f35b6103f56103f0366004614e00565b610a10565b005b6101055461040b906001600160a01b031681565b6040516001600160a01b0390911681526020016103d9565b6103f5610ab5565b6101045461040b906001600160a01b031681565b6103f561044d366004614e4b565b610b03565b60fb546001600160601b03165b6040516001600160601b0390911681526020016103d9565b6103f5610485366004614e68565b610b53565b6103f5610498366004614e85565b610bd2565b6103f56104ab366004614ebf565b610e26565b6103f56104be366004614e4b565b610e8a565b6103f56104d1366004614e4b565b610e95565b61040b7f000000000000000000000000000000000000000000000000000000000000000081565b61051061050b366004614ebf565b611068565b60405190151581526020016103d9565b60fc5460fd54604080519283526020830191909152016103d9565b60005461040b906001600160a01b031681565b6103f561055c366004614e85565b611083565b6103f561056f366004614e4b565b6112b9565b61051061135b565b6103f561058a366004614e00565b61136c565b6103f561059d366004614e4b565b6113c1565b6103f56105b0366004614ed8565b61143a565b6103f56105c3366004614ed8565b6114ac565b6103f5611516565b6103f56105de366004614e4b565b6115ab565b6105106115d7565b6106446105f9366004614ebf565b60408051606080820183526000808352602080840182905292840181905293845260c98252928290208251938401835280548452600181015491840191909152600201549082015290565b60408051825181526020808401519082015291810151908201526060016103d9565b6106946065546001600160601b038116916001600160401b03600160601b8304811692600160a01b90041690565b604080516001600160601b0390941684526001600160401b0392831660208501529116908201526060016103d9565b6103f56106d1366004614e4b565b6115e3565b6103f56106e4366004614e85565b61166b565b61045f6106f7366004614e4b565b611676565b61071d61070a366004614ebf565b6101036020526000908152604090205481565b6040519081526020016103d9565b60fe5460ff54610100546101015461010254604080519586526020860194909452928401919091526060830152608082015260a0016103d9565b6103f5610773366004614efa565b6116a4565b6103f5610786366004614f70565b611749565b61079e610799366004614e4b565b611b11565b6040516001600160401b0390911681526020016103d9565b6103f56107c4366004614ffe565b611b1e565b6103f5611bd0565b61040b7f000000000000000000000000000000000000000000000000000000000000000081565b61080b610806366004614ebf565b611c37565b6040516103d9919061509b565b60325461040b906001600160a01b031681565b6103f56108393660046150ae565b611c44565b61040b61084c366004614e4b565b6001600160a01b039081166000908152606660205260409020541690565b6103f56108783660046150ee565b611dc6565b6103f561088b366004614e00565b611e62565b610898611eb7565b6040516103d9919061513f565b6103f56108b3366004614e4b565b611ec3565b6103f56108c6366004614e4b565b611f3c565b6103f5611fd0565b6103f56108e1366004615167565b61200d565b61040b6108f4366004614e4b565b6001600160a01b039081166000908152606760205260409020541690565b6105106109203660046151e2565b61228e565b61092d61248b565b6040516103d99190615289565b610510610948366004614e4b565b612535565b61096061095b366004614e85565b612584565b6040516103d992919061529c565b6065546001600160601b031661045f565b61051061098d366004614e4b565b61259c565b61045f6109a0366004614e4b565b61263a565b61045f6109b3366004614e4b565b612727565b6109e36040518060800160405280600081526020016000815260200160008152602001600081525090565b50604080516080810182526099548152609a546020820152609b5491810191909152609c54606082015290565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a615760405162461bcd60e51b8152600401610a58906152b7565b60405180910390fd5b610ab060657f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000086868661275d565b505050565b610b0160657f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006128e7565b565b610b5060657f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000084612ab6565b50565b6000546001600160a01b03163314610b7d5760405162461bcd60e51b8152600401610a58906152f9565b60fb80546001600160601b0319166001600160601b0383169081179091556040519081527fe132b87eb6644ee4d4c3c32744f7e1c3906335a2d4f99330767bf573909c7d84906020015b60405180910390a150565b600080610be0609784612c9c565b604051638871ca5d60e01b815263ffffffff8216600482015291935091506000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638871ca5d9060240160206040518083038186803b158015610c4d57600080fd5b505afa158015610c61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c859190615330565b6040805160018082528183019092529192506000919060208083019080368337019050506001600160a01b038084166000908152606760205260409020549192501681600081518110610cda57610cda615363565b6001600160a01b03928316602091820292909201015260fb5460fc546040516383ddba8f60e01b81527f0000000000000000000000000000000000000000000000000000000000000000909316926383ddba8f92610d4a926001600160601b039091169133908790600401615379565b600060405180830381600087803b158015610d6457600080fd5b505af1925050508015610d75575060015b610dce5760fb54604080516001600160601b0390921682526001600160a01b038416602083015285917f14621289a12ab59e0737decc388bba91d929c723defb4682d5d19b9a12ecfecb910160405180910390a2610e1f565b60fb54604080516001600160601b0390921682526001600160a01b038416602083015285917f88f76c659db78142f88e94db3ca791869495394c6c1b3d412ced9022dc97c9e3910160405180910390a25b5050505050565b610104546001600160a01b03163314610e515760405162461bcd60e51b8152600401610a58906153ec565b610e5c60c982613014565b60405181907fa6ae4af610b8ada39d3675190ead27a5552631a8e33f53e4e37dbb082f11a73e90600090a250565b610b50606582613061565b6001600160a01b038181166000908152606660205260409020541680610ecd5760405162461bcd60e51b8152600401610a5890615423565b604051632de9480760e01b81526001600160a01b0383811660048301526000917f000000000000000000000000000000000000000000000000000000000000000090911690632de948079060240160606040518083038186803b158015610f3357600080fd5b505afa158015610f47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6b919061544d565b50604051637104c0e560e11b81526001600160a01b0385811660048301528281166024830152919350600092507f00000000000000000000000000000000000000000000000000000000000000009091169063e20981ca90604401602060405180830381600087803b158015610fe057600080fd5b505af1158015610ff4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611018919061548f565b6040516001600160601b03821681529091506001600160a01b038516907f38532b6dea69d7266fa923c7813d190be37625f2454ddfa3d93c45c79482e3fd9060200160405180910390a250505050565b600081815260c9602052604081206001015415155b92915050565b60005a905060006110956097846132c4565b9050600080806110ba60c08701356110b060208901896154ac565b60c99291906136fa565b925092509250856040516020016110d19190615736565b60405160208183030381529060405280519060200120837fbe8f27cef1f3d94120c9c547c3614f5b992fdb0c0a497cc920fde06546291ab460405160405180910390a38351156111a9577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663942f68928560fd5442611159919061575f565b6040518363ffffffff1660e01b8152600401611176929190615777565b600060405180830381600087803b15801561119057600080fd5b505af11580156111a4573d6000803e3d6000fd5b505050505b6101045460405163547d07a160e11b81526004810185905260248101849052604481018390526001600160a01b039091169063a8fa0f4290606401600060405180830381600087803b1580156111fe57600080fd5b505af1158015611212573d6000803e3d6000fd5b50505050611220609761383f565b60325460ff546001600160a01b0390911690637ad226dc905a6112439089615799565b60fe54611250919061575f565b61125a919061575f565b6040516001600160e01b031960e084901b1681526004810191909152336024820152604401600060405180830381600087803b15801561129957600080fd5b505af11580156112ad573d6000803e3d6000fd5b50505050505050505050565b6000546001600160a01b031633146112e35760405162461bcd60e51b8152600401610a58906152f9565b604051632a59250560e21b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063a9649414906024015b600060405180830381600087803b15801561134757600080fd5b505af1158015610e1f573d6000803e3d6000fd5b600061136760976138a3565b905090565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146113b45760405162461bcd60e51b8152600401610a58906152b7565b610ab060658484846138f4565b6000546001600160a01b031633146113eb5760405162461bcd60e51b8152600401610a58906152f9565b61010580546001600160a01b0319166001600160a01b0383169081179091556040519081527f2b34e21b6daa8fcf8cba1c3ed709cbed2b0231d5fb60e9ccd8c2e75a5674bcb390602001610bc7565b6000546001600160a01b031633146114645760405162461bcd60e51b8152600401610a58906152f9565b60fc82905560fd81905560408051838152602081018390527ff3a6ee10a78fb7d212e87d9be970fb16bd7324e9dc9c38d21cd7ecde781a1d2a91015b60405180910390a15050565b610105546001600160a01b031633146115075760405162461bcd60e51b815260206004820152601f60248201527f43616c6c6572206973206e6f74207468652052616e646f6d20426561636f6e006044820152606401610a58565b611512609783613b2f565b5050565b610104546001600160a01b031633146115415760405162461bcd60e51b8152600401610a58906153ec565b61154b6097613bdc565b610105546040516310da3b0360e21b81523060048201526001600160a01b0390911690634368ec0c90602401600060405180830381600087803b15801561159157600080fd5b505af11580156115a5573d6000803e3d6000fd5b50505050565b610b5060657f000000000000000000000000000000000000000000000000000000000000000083613ca7565b60006113676097613eef565b6000546001600160a01b0316331461160d5760405162461bcd60e51b8152600401610a58906152f9565b6040516001600160a01b03821681527f0e2d2343d31b085b7c4e56d1c8a6ec79f7ab07460386f1c9a1756239fe2533ac9060200160405180910390a1603280546001600160a01b0319166001600160a01b0392909216919091179055565b610b50609782613f29565b600061107d60657f000000000000000000000000000000000000000000000000000000000000000084614257565b6000546001600160a01b031633146116ce5760405162461bcd60e51b8152600401610a58906152f9565b6116d9609785614292565b6116e46097846142f3565b6116ef609783614354565b6116fa6097826143b5565b6040805185815260208101859052908101839052606081018290527f0a9dcb046e16a7970be15acb8e74c66378849ae91679b064c77fb1e53768ae47906080015b60405180910390a150505050565b60005a8535600081815261010360205260409020549192509085146117a05760405162461bcd60e51b815260206004820152600d60248201526c496e76616c6964206e6f6e636560981b6044820152606401610a58565b6000806117ae60c98461446f565b909250905060006117c060c9856144bf565b905086866040516020016117d59291906157b0565b6040516020818303038152906040528051906020012081146118315760405162461bcd60e51b8152602060048201526015602482015274496e76616c69642067726f7570206d656d6265727360581b6044820152606401610a58565b600073__$c28dd63714b1a086d50ecbb702fff9dbb7$__63f4df04be7f00000000000000000000000000000000000000000000000000000000000000008c878760405160200161188b929190918252602082015260400190565b6040516020818303038152906040528d8d8d6040518763ffffffff1660e01b81526004016118be969594939291906157d2565b60006040518083038186803b1580156118d657600080fd5b505af41580156118ea573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526119129190810190615909565b600086815261010360205260408120805492935090611930836159a7565b9091555050604080518a815233602082015286917f326e1ff7c130ed708307116f79cf7dbca649503e7082e5e35a19ceeee1523b39910160405180910390a27f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663942f68928260fd54426119ad919061575f565b6040518363ffffffff1660e01b81526004016119ca929190615777565b600060405180830381600087803b1580156119e457600080fd5b505af11580156119f8573d6000803e3d6000fd5b50611a0d9250505060608b0160408c016159c2565b15611a805761010454604051631ee74c0960e11b81526004810187905260248101869052604481018590526001600160a01b0390911690633dce981290606401600060405180830381600087803b158015611a6757600080fd5b505af1158015611a7b573d6000803e3d6000fd5b505050505b603254610100546001600160a01b0390911690637ad226dc905a611aa4908a615799565b611aae919061575f565b6040516001600160e01b031960e084901b1681526004810191909152336024820152604401600060405180830381600087803b158015611aed57600080fd5b505af1158015611b01573d6000803e3d6000fd5b5050505050505050505050505050565b600061107d606583614501565b6000546001600160a01b03163314611b485760405162461bcd60e51b8152600401610a58906152f9565b606580546001600160601b0319166001600160601b038516179055611b6e606583614591565b611b796065826145b9565b604080516001600160601b03851681526001600160401b03848116602083015283168183015290517f544b726e42801bb47073854eeedae851903f66fe32a5bd24e626e10b90027b519181900360600190a1505050565b60005a9050611bdf60976145e1565b603254610101546001600160a01b0390911690637ad226dc905a611c039085615799565b611c0d919061575f565b6040516001600160e01b031960e084901b168152600481019190915233602482015260440161132d565b606061107d60c983614668565b6000611c5060016146a3565b90508015611c68576064805461ff0019166101001790555b61010580546001600160a01b038086166001600160a01b0319928316179092556032805492851692909116919091179055611ca233614732565b606580546001600160601b031916690878678326eac9000000179055611ccc6065623b5380614591565b611cda6065623b53806145b9565b60fb80546001600160601b0319166815af1d78b58c400000179055606460fc556212750060fd55611d2d60977f00000000000000000000000000000000000000000000000000000000000000008661478c565b611d3a6097612d00614292565b611d476097612d006142f3565b611d5460976107d0614354565b611d60609760146143b5565b62046cd060fe556201194060ff5562016b4861010055611c52610101556108fc6101025580156115a5576064805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200161173b565b6000546001600160a01b03163314611df05760405162461bcd60e51b8152600401610a58906152f9565b60fe85905560ff849055610100839055610101829055610102819055604080518681526020810186905290810184905260608101839052608081018290527f8a3e64fa6013a36bccca7362e8826b11ba41e57fb60f55309c0ca48904dad0829060a00160405180910390a15050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611eaa5760405162461bcd60e51b8152600401610a58906152b7565b610ab06065848484614881565b6000611367609761494e565b6000546001600160a01b03163314611eed5760405162461bcd60e51b8152600401610a58906152f9565b61010480546001600160a01b0319166001600160a01b0383169081179091556040519081527fa1993af5a189ba5ad4155263c920cfee33ce0593a8eb231a13bb3ce6f39459e390602001610bc7565b6000546001600160a01b03163314611f665760405162461bcd60e51b8152600401610a58906152f9565b6001600160a01b038116611fc75760405162461bcd60e51b815260206004820152602260248201527f4e657720676f7665726e616e636520697320746865207a65726f206164647265604482015261737360f01b6064820152608401610a58565b610b5081614732565b60005a9050611fdf60976149f3565b603254610102546001600160a01b0390911690637ad226dc905a6120039085615799565b611c0d9190615799565b610104546001600160a01b031633146120385760405162461bcd60e51b8152600401610a58906153ec565b600061204560c9856144bf565b9050828260405160200161205a9291906157b0565b60405160208183030381529060405280519060200120811461208e5760405162461bcd60e51b8152600401610a58906159df565b604051637bfcd47d60e11b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063f7f9a8fa906120df90879087906004016157b0565b60006040518083038186803b1580156120f757600080fd5b505afa15801561210b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526121339190810190615a21565b90506000836001600160401b0381111561214f5761214f61534d565b604051908082528060200260200182016040528015612178578160200160208202803683370190505b50905060005b82518110156121fe576121c283828151811061219c5761219c615363565b60200260200101516001600160a01b039081166000908152606760205260409020541690565b8282815181106121d4576121d4615363565b6001600160a01b0390921660209283029190910190910152806121f6816159a7565b91505061217e565b506040516383ddba8f60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906383ddba8f90612251908c908c908c908790600401615379565b600060405180830381600087803b15801561226b57600080fd5b505af115801561227f573d6000803e3d6000fd5b50505050505050505050505050565b604051635a48b46b60e01b81526001600160a01b03838116600483015260009182917f00000000000000000000000000000000000000000000000000000000000000001690635a48b46b9060240160206040518083038186803b1580156122f457600080fd5b505afa158015612308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061232c9190615aaf565b905063ffffffff81166123815760405162461bcd60e51b815260206004820152601d60248201527f4e6f74206120736f72746974696f6e20706f6f6c206f70657261746f720000006044820152606401610a58565b600061238e60c9896144bf565b905086866040516020016123a39291906157b0565b6040516020818303038152906040528051906020012081146123d75760405162461bcd60e51b8152600401610a58906159df565b836001111580156123e85750858411155b6124405760405162461bcd60e51b815260206004820152602360248201527f57616c6c6574206d656d62657220696e646578206973206f7574206f662072616044820152626e676560e81b6064820152608401610a58565b63ffffffff82168787612454600188615799565b81811061246357612463615363565b90506020020160208101906124789190615acc565b63ffffffff161498975050505050505050565b609f54604051636c2530b960e01b81526064600482015260248101919091526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636c2530b99060440160006040518083038186803b1580156124f957600080fd5b505afa15801561250d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526113679190810190615909565b600061107d60657f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000085614a72565b60006060612593609784614c04565b91509150915091565b6040516307b8c36760e51b81526001600160a01b0382811660048301526000917f00000000000000000000000000000000000000000000000000000000000000009091169063f7186ce09060240160206040518083038186803b15801561260257600080fd5b505afa158015612616573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061107d9190615ae9565b60008061265f836001600160a01b039081166000908152606660205260409020541690565b90506001600160a01b0381166126875760405162461bcd60e51b8152600401610a5890615423565b60405163439f18fd60e11b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063873e31fa9060240160206040518083038186803b1580156126e857600080fd5b505afa1580156126fc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612720919061548f565b9392505050565b6001600160a01b0381166000908152606860205260408120546001600160601b031661107d565b6001600160a01b03163b151590565b6001600160a01b038084166000908152600188016020526040902054168061278557506128df565b6040516307b8c36760e51b81526001600160a01b03828116600483015286169063f7186ce09060240160206040518083038186803b1580156127c657600080fd5b505afa1580156127da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127fe9190615ae9565b156128dd57846001600160a01b031663a4e2d6346040518163ffffffff1660e01b815260040160206040518083038186803b15801561283c57600080fd5b505afa158015612850573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128749190615ae9565b156128d157604080516001600160601b038086168252841660208201526001600160a01b0380841692908716917f1b09380d63e78fd72c1d79a805a7e2dfadf02b22418e24bebff51376b7df33b0910160405180910390a36128dd565b6128dd87878784612ab6565b505b505050505050565b3360008181526002850160205260409020546001600160a01b03168061291f5760405162461bcd60e51b8152600401610a5890615423565b6001600160a01b038116600090815260038601602052604081208054909190612956908890889086906001600160601b0316614cf7565b90506001600160601b0381166129ae5760405162461bcd60e51b815260206004820152601f60248201527f417574686f72697a6174696f6e2062656c6f7720746865206d696e696d756d006044820152606401610a58565b836001600160a01b0316836001600160a01b03167f5075aaa89894a888eb2cac81a27320c60855febb0cf1706b66bdc754e640d43360405160405180910390a3604051630483483160e31b81526001600160a01b0386169063241a418890612a1c9087908590600401615b06565b600060405180830381600087803b158015612a3657600080fd5b505af1158015612a4a573d6000803e3d6000fd5b50508354600160601b90046001600160401b03908116141591506128dd9050578654612a8690600160601b90046001600160401b031642615b28565b82546001600160401b0391909116600160601b0267ffffffffffffffff60601b1990911617825550505050505050565b6001600160a01b0380821660009081526002860160205260409020541680612af05760405162461bcd60e51b8152600401610a5890615423565b6001600160a01b03808216600081815260038801602052604080822090519093861692917f1231fe5ee649a593b524a494cd53146a196380a872115a0d0fe16c0735afdf2691a36040516307b8c36760e51b81526001600160a01b03848116600483015285169063f7186ce09060240160206040518083038186803b158015612b7857600080fd5b505afa158015612b8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bb09190615ae9565b15612c37578054600090612bd2908890889086906001600160601b0316614cf7565b60405163dc7520c560e01b81529091506001600160a01b0386169063dc7520c590612c039087908590600401615b06565b600060405180830381600087803b158015612c1d57600080fd5b505af1158015612c31573d6000803e3d6000fd5b50505050505b8054600160601b90046001600160401b0390811614156128df578554612c6d90600160601b90046001600160401b031642615b28565b81546001600160401b0391909116600160601b0267ffffffffffffffff60601b19909116178155505050505050565b6000806003612caa8561494e565b6003811115612cbb57612cbb615129565b14612d085760405162461bcd60e51b815260206004820152601e60248201527f43757272656e74207374617465206973206e6f74204348414c4c454e474500006044820152606401610a58565b6003840154600b850154612d1c919061575f565b431115612d775760405162461bcd60e51b815260206004820152602360248201527f4368616c6c656e676520706572696f642068617320616c7265616479207061736044820152621cd95960ea1b6064820152608401610a58565b83600a015483604051602001612d8d9190615736565b6040516020818303038152906040528051906020012014612e165760405162461bcd60e51b815260206004820152603a60248201527f526573756c7420756e646572206368616c6c656e67652069732064696666657260448201527f656e74207468616e20746865207375626d6974746564206f6e650000000000006064820152608401610a58565b6001840154600885015460078601546040516373b33d5d60e11b81526001600160a01b039093169263e7667aba92612e52928892600401615b53565b60006040518083038186803b158015612e6a57600080fd5b505afa925050508015612e9f57506040513d6000823e601f3d908101601f19168201604052612e9c9190810190615b78565b60015b612f1457336001600160a01b031684600a01547f703feb01415a2995816e8d082fd7aad0eacada1a2f63fdb3226e47f8a0285436604051612f07906020808252601390820152721d985b1a59185d1a5bdb881c995d995c9d1959606a1b604082015260600190565b60405180910390a3612fa3565b8115612f5a5760405162461bcd60e51b8152602060048201526015602482015274756e6a7573746966696564206368616c6c656e676560581b6044820152606401610a58565b336001600160a01b031686600a01547f703feb01415a2995816e8d082fd7aad0eacada1a2f63fdb3226e47f8a028543683604051612f98919061509b565b60405180910390a350505b600a8401549150612fb760a0840184615c21565b612fc360018635615799565b818110612fd257612fd2615363565b9050602002016020810190612fe79190615acc565b9050836007015443612ff99190615799565b60098501556000600a8501819055600b8501555b9250929050565b6000818152602083905260409020600101546130425760405162461bcd60e51b8152600401610a5890615c6a565b6000908152602091909152604081208181556001810182905560020155565b336001600160a01b0382166130b85760405162461bcd60e51b815260206004820181905260248201527f4f70657261746f722063616e206e6f74206265207a65726f20616464726573736044820152606401610a58565b6001600160a01b03818116600090815260018501602052604090205416156131385760405162461bcd60e51b815260206004820152602d60248201527f4f70657261746f7220616c72656164792073657420666f72207468652073746160448201526c35b4b73390383937bb34b232b960991b6064820152608401610a58565b6001600160a01b03828116600090815260028501602052604090205416156131a25760405162461bcd60e51b815260206004820152601f60248201527f4f70657261746f72206164647265737320616c726561647920696e20757365006044820152606401610a58565b6001600160a01b038116600090815260038401602052604090208054600160601b90046001600160401b0316156132355760405162461bcd60e51b815260206004820152603160248201527f546865726520697320612070656e64696e6720617574686f72697a6174696f6e60448201527008191958dc99585cd9481c995c5d595cdd607a1b6064820152608401610a58565b826001600160a01b0316826001600160a01b03167fa453db612af59e5521d6ab9284dc3e2d06af286eb1b1b7b771fce4716c19f2c160405160405180910390a3506001600160a01b03908116600081815260018501602090815260408083208054959096166001600160a01b031995861681179096559482526002909501909452919092208054909216179055565b606060036132d18461494e565b60038111156132e2576132e2615129565b1461332f5760405162461bcd60e51b815260206004820152601e60248201527f43757272656e74207374617465206973206e6f74204348414c4c454e474500006044820152606401610a58565b6003830154600b8401546000916133459161575f565b90508043116133a25760405162461bcd60e51b815260206004820152602360248201527f4368616c6c656e676520706572696f6420686173206e6f7420706173736564206044820152621e595d60ea1b6064820152608401610a58565b83600a0154836040516020016133b89190615736565b60405160208183030381529060405280519060200120146134415760405162461bcd60e51b815260206004820152603960248201527f526573756c7420756e64657220617070726f76616c206973206469666665726560448201527f6e74207468616e20746865207375626d6974746564206f6e65000000000000006064820152608401610a58565b83546000906001600160a01b0316638871ca5d61346160a0870187615c21565b61346d60018935615799565b81811061347c5761347c615363565b90506020020160208101906134919190615acc565b6040516001600160e01b031960e084901b16815263ffffffff91909116600482015260240160206040518083038186803b1580156134ce57600080fd5b505afa1580156134e2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135069190615330565b9050336001600160a01b038216148061352c57506005850154613529908361575f565b43115b6135aa5760405162461bcd60e51b815260206004820152604360248201527f4f6e6c792074686520444b4720726573756c74207375626d697474657220636160448201527f6e20617070726f76652074686520726573756c742061742074686973206d6f6d606482015262195b9d60ea1b608482015260a401610a58565b6135b76040850185615c21565b90506001600160401b038111156135d0576135d061534d565b6040519080825280602002602001820160405280156135f9578160200160208202803683370190505b50925060005b61360c6040860186615c21565b90508110156136c05761362260a0860186615c21565b60016136316040890189615c21565b8581811061364157613641615363565b90506020020160208101906136569190615cba565b6136609190615cd5565b60ff1681811061367257613672615363565b90506020020160208101906136879190615acc565b84828151811061369957613699615363565b63ffffffff90921660209283029190910190910152806136b8816159a7565b9150506135ff565b50600a8501546040513391907fe6e9d5eba171e82025efb3f3d44fd35905e7283d104284cb9f3bbc5bf1e4276f90600090a3505092915050565b6000806000848460405161370f929190615cf8565b6040805191829003909120600081815260208a90529190912060010154909350156137945760405162461bcd60e51b815260206004820152602f60248201527f57616c6c657420776974682074686520676976656e207075626c6963206b657960448201526e20616c72656164792065786973747360881b6064820152608401610a58565b604084146137e45760405162461bcd60e51b815260206004820181905260248201527f496e76616c6964206c656e677468206f6620746865207075626c6963206b65796044820152606401610a58565b6137f2602060008688615d08565b6137fb91615d32565b915061380a8460208188615d08565b61381391615d32565b600084815260209890985260409097209586555060018501819055600290940185905594929392915050565b6000600782018190556008820181905560098201819055600a8201819055600b820181905581546040805163a69df4b560e01b815290516001600160a01b039092169263a69df4b59260048084019382900301818387803b15801561134757600080fd5b600060026138b08361494e565b60038111156138c1576138c1615129565b14801561107d57506004820154600983015460078401546138e2919061575f565b6138ec919061575f565b431192915050565b6001600160601b0381161580613918575083546001600160601b0390811690821610155b6139825760405162461bcd60e51b815260206004820152603560248201527f417574686f72697a6174696f6e20616d6f756e742073686f756c642062652030604482015274206f722061626f766520746865206d696e696d756d60581b6064820152608401610a58565b6001600160a01b03808416600090815260018601602052604081205490911690816139ae5750426139b8565b506001600160401b035b60006139c48486615d50565b6001600160a01b03871660009081526003890160205260409020805491925090600160601b90046001600160401b03168015801590613a0c57506001600160401b0381811614155b15613a9f578854613a2d90600160a01b90046001600160401b031682615d78565b6001600160401b0316421015613a9f5760405162461bcd60e51b815260206004820152603160248201527f4e6f7420656e6f7567682074696d65207061737365642073696e636520746865604482015270081bdc9a59da5b985b081c995c5d595cdd607a1b6064820152608401610a58565b81546001600160401b038516600160601b81026001600160a01b03199092166001600160601b0386811691909117929092178455604080518a8416815292891660208401528201526001600160a01b0386811691908a16907f545cbf267cef6fe43f11f6219417ab43a0e8e345adbaae5f626d9bc325e8535a9060600160405180910390a3505050505050505050565b6001613b3a8361494e565b6003811115613b4b57613b4b615129565b14613ba35760405162461bcd60e51b815260206004820152602260248201527f43757272656e74207374617465206973206e6f74204157414954494e475f5345604482015261115160f21b6064820152608401610a58565b60405181907fb2ad26c2940889d79df2ee9c758a8aefa00c5ca90eee119af0e5d795df3b98bb90600090a2436007830155600890910155565b6000613be78261494e565b6003811115613bf857613bf8615129565b14613c155760405162461bcd60e51b8152600401610a5890615d98565b6040517f5c3ed2397d4d21298b2fb5027ac8e2d42e3c9c72bbb55ddb030e2a36a0cdff6b90600090a1805460408051637c1e845d60e11b815290516001600160a01b039092169163f83d08ba9160048082019260009290919082900301818387803b158015613c8357600080fd5b505af1158015613c97573d6000803e3d6000fd5b5050505043816006018190555050565b6001600160a01b038116600090815260038401602052604090208054600160601b90046001600160401b0316613d2b5760405162461bcd60e51b8152602060048201526024808201527f417574686f72697a6174696f6e206465637265617365206e6f742072657175656044820152631cdd195960e21b6064820152608401610a58565b8054600160601b90046001600160401b039081161415613da25760405162461bcd60e51b815260206004820152602c60248201527f417574686f72697a6174696f6e2064656372656173652072657175657374206e60448201526b1bdd081858dd1a5d985d195960a21b6064820152608401610a58565b8054600160601b90046001600160401b0316421015613e135760405162461bcd60e51b815260206004820152602760248201527f417574686f72697a6174696f6e2064656372656173652064656c6179206e6f74604482015266081c185cdcd95960ca1b6064820152608401610a58565b6040516001600160a01b038316907f50270a522c2fef97b6b7385c2aa4a4518adda681530e0a1fe9f5e840f6f2cd9d90600090a2604051633af0572d60e11b81526001600160a01b0383811660048301528416906375e0ae5a90602401602060405180830381600087803b158015613e8a57600080fd5b505af1158015613e9e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ec2919061548f565b50506001600160a01b031660009081526003909201602052506040902080546001600160a01b0319169055565b60006001613efc8361494e565b6003811115613f0d57613f0d615129565b14801561107d5750600282015460068301546138ec919061575f565b6002613f348361494e565b6003811115613f4557613f45615129565b14613f9e5760405162461bcd60e51b8152602060048201526024808201527f43757272656e74207374617465206973206e6f74204157414954494e475f524560448201526314d5531560e21b6064820152608401610a58565b613fa7826138a3565b15613ff45760405162461bcd60e51b815260206004820152601a60248201527f444b472074696d656f757420616c7265616479207061737365640000000000006044820152606401610a58565b81546040516307b8c36760e51b81523360048201526001600160a01b0390911690819063f7186ce09060240160206040518083038186803b15801561403857600080fd5b505afa15801561404c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140709190615ae9565b6140c85760405162461bcd60e51b815260206004820152602360248201527f5375626d6974746572206e6f7420696e2074686520736f72746974696f6e20706044820152621bdbdb60ea1b6064820152608401610a58565b336001600160a01b038216638871ca5d6140e560a0860186615c21565b6140f160018835615799565b81811061410057614100615363565b90506020020160208101906141159190615acc565b6040516001600160e01b031960e084901b16815263ffffffff91909116600482015260240160206040518083038186803b15801561415257600080fd5b505afa158015614166573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061418a9190615330565b6001600160a01b0316146141e05760405162461bcd60e51b815260206004820152601a60248201527f556e6578706563746564207375626d697474657220696e6465780000000000006044820152606401610a58565b816040516020016141f19190615736565b60408051601f19818403018152908290528051602090910120600a850181905543600b8601556008850154917f8e7fd4293d7db11807147d8890c287fad3396fbb09a4e92273fc7856076c153a9061424a908690615736565b60405180910390a3505050565b6001600160a01b038116600090815260038401602052604081205461428a908590859085906001600160601b0316614cf7565b949350505050565b600061429d8361494e565b60038111156142ae576142ae615129565b146142cb5760405162461bcd60e51b8152600401610a5890615d98565b600081116142eb5760405162461bcd60e51b8152600401610a5890615dcf565b600290910155565b60006142fe8361494e565b600381111561430f5761430f615129565b1461432c5760405162461bcd60e51b8152600401610a5890615d98565b6000811161434c5760405162461bcd60e51b8152600401610a5890615dcf565b600390910155565b600061435f8361494e565b600381111561437057614370615129565b1461438d5760405162461bcd60e51b8152600401610a5890615d98565b600081116143ad5760405162461bcd60e51b8152600401610a5890615dcf565b600490910155565b60006143c08361494e565b60038111156143d1576143d1615129565b146143ee5760405162461bcd60e51b8152600401610a5890615d98565b600482015481106144675760405162461bcd60e51b815260206004820152603d60248201527f4e65772076616c75652073686f756c64206265206c657373207468616e20726560448201527f73756c74207375626d697373696f6e20706572696f64206c656e6774680000006064820152608401610a58565b600590910155565b600081815260208390526040812060010154819061449f5760405162461bcd60e51b8152600401610a5890615c6a565b505060009081526020919091526040902060018101546002909101549091565b6000818152602083905260408120600101546144ed5760405162461bcd60e51b8152600401610a5890615c6a565b506000908152602091909152604090205490565b6001600160a01b038116600090815260038301602052604081208054600160601b90046001600160401b039081161415614545576001600160401b0391505061107d565b805442906001600160401b03600160601b909104811690821611614585578154614580908290600160601b90046001600160401b0316615d78565b614588565b60005b95945050505050565b81546001600160401b03909116600160601b0267ffffffffffffffff60601b19909116179055565b81546001600160401b03909116600160a01b0267ffffffffffffffff60a01b19909116179055565b6145ea81613eef565b6146365760405162461bcd60e51b815260206004820152601f60248201527f4177616974696e67207365656420686173206e6f742074696d6564206f7574006044820152606401610a58565b6040517f68c52f05452e81639fa06f379aee3178cddee4725521fff886f244c99e868b5090600090a1610b508161383f565b6060600080614677858561446f565b604080516020810193909352828101919091528051808303820181526060909201905295945050505050565b606454600090610100900460ff16156146ec578160ff1660011480156146c85750303b155b6146e45760405162461bcd60e51b8152600401610a5890615e14565b506000919050565b60645460ff8084169116106147135760405162461bcd60e51b8152600401610a5890615e14565b506064805460ff191660ff92909216919091179055600190565b919050565b600080546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527f5f56bee8cffbe9a78652a74a60705edede02af10b0bbb888ca44b79a0d42ce8091016114a0565b82546001600160a01b0316156147ef5760405162461bcd60e51b815260206004820152602260248201527f536f72746974696f6e20506f6f6c206164647265737320616c72656164792073604482015261195d60f21b6064820152608401610a58565b60018301546001600160a01b0316156148545760405162461bcd60e51b815260206004820152602160248201527f444b472056616c696461746f72206164647265737320616c72656164792073656044820152601d60fa1b6064820152608401610a58565b82546001600160a01b03199081166001600160a01b03938416178455600190930180549093169116179055565b83546001600160601b0390811690821610156148df5760405162461bcd60e51b815260206004820152601f60248201527f417574686f72697a6174696f6e2062656c6f7720746865206d696e696d756d006044820152606401610a58565b6001600160a01b0383811660008181526001870160209081526040918290205482516001600160601b03888116825287169281019290925282519416938493927f87f9f9f59204f53d57a89a817c6083a17979cd0531791c91e18551a56e3cfdd7928290030190a35050505050565b805460408051632938b58d60e21b815290516000926001600160a01b03169163a4e2d634916004808301926020929190829003018186803b15801561499257600080fd5b505afa1580156149a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149ca9190615ae9565b1561472d575060078101546001901561472d5750600b8101546002901561472d57506003919050565b6149fc816138a3565b614a405760405162461bcd60e51b81526020600482015260156024820152741112d1c81a185cc81b9bdd081d1a5b5959081bdd5d605a1b6044820152606401610a58565b6040517f2852b3e178dd281713b041c3d90b4815bb55b7ec812931d1e8e8d8bb2ed72d3e90600090a1610b508161383f565b6001600160a01b03808216600090815260028601602052604081205490911680614aae5760405162461bcd60e51b8152600401610a5890615423565b6001600160a01b038116600090815260038701602052604081208054909190614ae5908990899086906001600160601b0316614cf7565b6040516307b8c36760e51b81526001600160a01b0387811660048301529192509087169063f7186ce09060240160206040518083038186803b158015614b2a57600080fd5b505afa158015614b3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614b629190615ae9565b614b7a576001600160601b031615925061428a915050565b6040516304de824f60e41b81526001600160a01b03871690634de824f090614ba89088908590600401615b06565b60206040518083038186803b158015614bc057600080fd5b505afa158015614bd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614bf89190615ae9565b98975050505050505050565b600060606000846007015411614c5c5760405162461bcd60e51b815260206004820152601860248201527f444b4720686173206e6f74206265656e207374617274656400000000000000006044820152606401610a58565b6001840154600885015460078601546040516373b33d5d60e11b81526001600160a01b039093169263e7667aba92614c98928892600401615b53565b60006040518083038186803b158015614cb057600080fd5b505afa158015614cc4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052614cec9190810190615b78565b915091509250929050565b604051637004922d60e11b81526001600160a01b038381166004830152306024830152600091829186169063e009245a9060440160206040518083038186803b158015614d4357600080fd5b505afa158015614d57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614d7b919061548f565b90506000836001600160601b0316826001600160601b031611614d9f576000614da9565b614da98483615d50565b87549091506001600160601b039081169082161015614dcd5760009250505061428a565b915061428a9050565b6001600160a01b0381168114610b5057600080fd5b6001600160601b0381168114610b5057600080fd5b600080600060608486031215614e1557600080fd5b8335614e2081614dd6565b92506020840135614e3081614deb565b91506040840135614e4081614deb565b809150509250925092565b600060208284031215614e5d57600080fd5b813561272081614dd6565b600060208284031215614e7a57600080fd5b813561272081614deb565b600060208284031215614e9757600080fd5b81356001600160401b03811115614ead57600080fd5b820160e0818503121561272057600080fd5b600060208284031215614ed157600080fd5b5035919050565b60008060408385031215614eeb57600080fd5b50508035926020909101359150565b60008060008060808587031215614f1057600080fd5b5050823594602084013594506040840135936060013592509050565b60008083601f840112614f3e57600080fd5b5081356001600160401b03811115614f5557600080fd5b6020830191508360208260051b850101111561300d57600080fd5b60008060008060608587031215614f8657600080fd5b84356001600160401b0380821115614f9d57600080fd5b9086019060a08289031215614fb157600080fd5b9094506020860135935060408601359080821115614fce57600080fd5b50614fdb87828801614f2c565b95989497509550505050565b80356001600160401b038116811461472d57600080fd5b60008060006060848603121561501357600080fd5b833561501e81614deb565b925061502c60208501614fe7565b915061503a60408501614fe7565b90509250925092565b60005b8381101561505e578181015183820152602001615046565b838111156115a55750506000910152565b60008151808452615087816020860160208601615043565b601f01601f19169290920160200192915050565b602081526000612720602083018461506f565b6000806000606084860312156150c357600080fd5b83356150ce81614dd6565b925060208401356150de81614dd6565b91506040840135614e4081614dd6565b600080600080600060a0868803121561510657600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b634e487b7160e01b600052602160045260246000fd5b602081016004831061516157634e487b7160e01b600052602160045260246000fd5b91905290565b60008060008060008060a0878903121561518057600080fd5b863561518b81614deb565b95506020870135945060408701356151a281614dd6565b93506060870135925060808701356001600160401b038111156151c457600080fd5b6151d089828a01614f2c565b979a9699509497509295939492505050565b6000806000806000608086880312156151fa57600080fd5b8535945060208601356001600160401b0381111561521757600080fd5b61522388828901614f2c565b909550935050604086013561523781614dd6565b949793965091946060013592915050565b600081518084526020808501945080840160005b8381101561527e57815163ffffffff168752958201959082019060010161525c565b509495945050505050565b6020815260006127206020830184615248565b821515815260406020820152600061428a604083018461506f565b60208082526022908201527f43616c6c6572206973206e6f7420746865207374616b696e6720636f6e74726160408201526118dd60f21b606082015260800190565b6020808252601c908201527f43616c6c6572206973206e6f742074686520676f7665726e616e636500000000604082015260600190565b60006020828403121561534257600080fd5b815161272081614dd6565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160601b038516815260208082018590526001600160a01b038481166040840152608060608401819052845190840181905260009285810192909160a0860190855b818110156153dc5785518416835294840194918401916001016153be565b50909a9950505050505050505050565b6020808252601e908201527f43616c6c6572206973206e6f74207468652057616c6c6574204f776e65720000604082015260600190565b60208082526010908201526f2ab735b737bbb71037b832b930ba37b960811b604082015260600190565b60008060006060848603121561546257600080fd5b835161546d81614dd6565b602085015190935061547e81614dd6565b6040850151909250614e4081614dd6565b6000602082840312156154a157600080fd5b815161272081614deb565b6000808335601e198436030181126154c357600080fd5b8301803591506001600160401b038211156154dd57600080fd5b60200191503681900382131561300d57600080fd5b6000808335601e1984360301811261550957600080fd5b83016020810192503590506001600160401b0381111561552857600080fd5b80360383131561300d57600080fd5b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000808335601e1984360301811261557757600080fd5b83016020810192503590506001600160401b0381111561559657600080fd5b8060051b360383131561300d57600080fd5b803560ff8116811461472d57600080fd5b81835260006001600160fb1b038311156155d257600080fd5b8260051b8083602087013760009401602001938452509192915050565b63ffffffff81168114610b5057600080fd5b8183526000602080850194508260005b8581101561527e578135615624816155ef565b63ffffffff1687529582019590820190600101615611565b8035825260006020615650818401846154f2565b60e08387015261566460e087018284615537565b9150506156746040850185615560565b868303604088015280835290916000919084015b818310156156b05760ff61569b856155a8565b16815292840192600192909201918401615688565b6156bd60608801886154f2565b9550935087810360608901526156d4818686615537565b9450505050506156e76080840184615560565b85830360808701526156fa8382846155b9565b9250505061570b60a0840184615560565b85830360a087015261571e838284615601565b9250505060c083013560c08501528091505092915050565b602081526000612720602083018461563c565b634e487b7160e01b600052601160045260246000fd5b6000821982111561577257615772615749565b500190565b60408152600061578a6040830185615248565b90508260208301529392505050565b6000828210156157ab576157ab615749565b500390565b60208152600061428a602083018486615601565b8015158114610b5057600080fd5b60018060a01b038716815260a06020820152853560a082015260006157fa6020880188615560565b60a060c0850152615810610140850182846155b9565b9150506040880135615821816157c4565b151560e084015261583560608901896154f2565b609f19808685030161010087015261584e848385615537565b935061585d60808c018c615560565b935091508086850301610120870152506158788383836155b9565b92505050828103604084015261588e818861506f565b905085606084015282810360808401526158a9818587615601565b9998505050505050505050565b604051601f8201601f191681016001600160401b03811182821017156158de576158de61534d565b604052919050565b60006001600160401b038211156158ff576158ff61534d565b5060051b60200190565b6000602080838503121561591c57600080fd5b82516001600160401b0381111561593257600080fd5b8301601f8101851361594357600080fd5b8051615956615951826158e6565b6158b6565b81815260059190911b8201830190838101908783111561597557600080fd5b928401925b8284101561599c57835161598d816155ef565b8252928401929084019061597a565b979650505050505050565b60006000198214156159bb576159bb615749565b5060010190565b6000602082840312156159d457600080fd5b8135612720816157c4565b60208082526022908201527f496e76616c69642077616c6c6574206d656d62657273206964656e7469666965604082015261727360f01b606082015260800190565b60006020808385031215615a3457600080fd5b82516001600160401b03811115615a4a57600080fd5b8301601f81018513615a5b57600080fd5b8051615a69615951826158e6565b81815260059190911b82018301908381019087831115615a8857600080fd5b928401925b8284101561599c578351615aa081614dd6565b82529284019290840190615a8d565b600060208284031215615ac157600080fd5b8151612720816155ef565b600060208284031215615ade57600080fd5b8135612720816155ef565b600060208284031215615afb57600080fd5b8151612720816157c4565b6001600160a01b039290921682526001600160601b0316602082015260400190565b60006001600160401b03808316818516808303821115615b4a57615b4a615749565b01949350505050565b606081526000615b66606083018661563c565b60208301949094525060400152919050565b60008060408385031215615b8b57600080fd5b8251615b96816157c4565b60208401519092506001600160401b0380821115615bb357600080fd5b818501915085601f830112615bc757600080fd5b815181811115615bd957615bd961534d565b615bec601f8201601f19166020016158b6565b9150808252866020828501011115615c0357600080fd5b615c14816020840160208601615043565b5080925050509250929050565b6000808335601e19843603018112615c3857600080fd5b8301803591506001600160401b03821115615c5257600080fd5b6020019150600581901b360382131561300d57600080fd5b60208082526030908201527f57616c6c657420776974682074686520676976656e20494420686173206e6f7460408201526f081899595b881c9959da5cdd195c995960821b606082015260800190565b600060208284031215615ccc57600080fd5b612720826155a8565b600060ff821660ff841680821015615cef57615cef615749565b90039392505050565b8183823760009101908152919050565b60008085851115615d1857600080fd5b83861115615d2557600080fd5b5050820193919092039150565b8035602083101561107d57600019602084900360031b1b1692915050565b60006001600160601b0383811690831681811015615d7057615d70615749565b039392505050565b60006001600160401b0383811690831681811015615d7057615d70615749565b60208082526019908201527f43757272656e74207374617465206973206e6f742049444c4500000000000000604082015260600190565b60208082526025908201527f4e65772076616c75652073686f756c642062652067726561746572207468616e604082015264207a65726f60d81b606082015260800190565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b60608201526080019056fea2646970667358221220f2d1772adfbe5b29841faf4dabda52040cd1cc997fb85cc592d6a9b163f1d7c464736f6c63430008090033496e697469616c697a61626c653a20636f6e747261637420697320616c726561";
|
|
1876
|
+
const isSuperArgs = (xs) => {
|
|
1877
|
+
return (typeof xs[0] === "string" ||
|
|
1878
|
+
Array.isArray(xs[0]) ||
|
|
1879
|
+
"_isInterface" in xs[0]);
|
|
1880
|
+
};
|
|
1881
|
+
class WalletRegistry__factory extends ethers_1.ContractFactory {
|
|
1882
|
+
constructor(...args) {
|
|
1883
|
+
if (isSuperArgs(args)) {
|
|
1884
|
+
super(...args);
|
|
1885
|
+
}
|
|
1886
|
+
else {
|
|
1887
|
+
const [linkLibraryAddresses, signer] = args;
|
|
1888
|
+
super(_abi, WalletRegistry__factory.linkBytecode(linkLibraryAddresses), signer);
|
|
1889
|
+
}
|
|
1890
|
+
}
|
|
1891
|
+
static linkBytecode(linkLibraryAddresses) {
|
|
1892
|
+
let linkedBytecode = _bytecode;
|
|
1893
|
+
linkedBytecode = linkedBytecode.replace(new RegExp("__\\$c28dd63714b1a086d50ecbb702fff9dbb7\\$__", "g"), linkLibraryAddresses["@keep-network/ecdsa/contracts/libraries/EcdsaInactivity.sol:EcdsaInactivity"]
|
|
1894
|
+
.replace(/^0x/, "")
|
|
1895
|
+
.toLowerCase());
|
|
1896
|
+
return linkedBytecode;
|
|
1897
|
+
}
|
|
1898
|
+
deploy(_sortitionPool, _staking, overrides) {
|
|
1899
|
+
return super.deploy(_sortitionPool, _staking, overrides || {});
|
|
1900
|
+
}
|
|
1901
|
+
getDeployTransaction(_sortitionPool, _staking, overrides) {
|
|
1902
|
+
return super.getDeployTransaction(_sortitionPool, _staking, overrides || {});
|
|
1903
|
+
}
|
|
1904
|
+
attach(address) {
|
|
1905
|
+
return super.attach(address);
|
|
1906
|
+
}
|
|
1907
|
+
connect(signer) {
|
|
1908
|
+
return super.connect(signer);
|
|
1909
|
+
}
|
|
1910
|
+
static createInterface() {
|
|
1911
|
+
return new ethers_1.utils.Interface(_abi);
|
|
1912
|
+
}
|
|
1913
|
+
static connect(address, signerOrProvider) {
|
|
1914
|
+
return new ethers_1.Contract(address, _abi, signerOrProvider);
|
|
1915
|
+
}
|
|
1916
|
+
}
|
|
1917
|
+
exports.WalletRegistry__factory = WalletRegistry__factory;
|
|
1918
|
+
WalletRegistry__factory.bytecode = _bytecode;
|
|
1919
|
+
WalletRegistry__factory.abi = _abi;
|