@layerzerolabs/lz-evm-sdk-v2 2.0.17 → 2.0.18

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.
Files changed (95) hide show
  1. package/artifacts/contracts/Executor.sol/Executor.json +2 -2
  2. package/artifacts/contracts/ExecutorFeeLib.sol/ExecutorFeeLib.json +18 -2
  3. package/artifacts/contracts/interfaces/IExecutorFeeLib.sol/IExecutorFeeLib.json +16 -0
  4. package/artifacts/contracts/uln/dvn/DVN.sol/DVN.json +2 -2
  5. package/artifacts/contracts/uln/dvn/DVNFeeLib.sol/DVNFeeLib.json +13 -2
  6. package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapter.sol/CCIPDVNAdapter.json +2 -2
  7. package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapterFeeLib.sol/CCIPDVNAdapterFeeLib.json +14 -3
  8. package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/AxelarDVNAdapter.json +2 -2
  9. package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol/AxelarDVNAdapterFeeLib.json +13 -2
  10. package/artifacts/contracts/uln/interfaces/IDVNFeeLib.sol/IDVNFeeLib.json +11 -0
  11. package/artifacts/contracts/uln/interfaces/adapters/IAxelarDVNAdapterFeeLib.sol/IAxelarDVNAdapterFeeLib.json +11 -0
  12. package/artifacts/contracts/uln/interfaces/adapters/ICCIPDVNAdapterFeeLib.sol/ICCIPDVNAdapterFeeLib.json +12 -1
  13. package/deployments/avalanche-testnet/AxelarDVNAdapterFeeLib.json +10 -10
  14. package/deployments/avalanche-testnet/AxelarDVNAdapterFeeLib_Implementation.json +40 -40
  15. package/deployments/ethereum-sandbox-local/DVN.json +76 -76
  16. package/deployments/ethereum-sandbox-local/DVNFeeLib.json +23 -23
  17. package/deployments/ethereum-sandbox-local/DefaultProxyAdmin.json +258 -0
  18. package/deployments/ethereum-sandbox-local/EndpointV2.json +141 -150
  19. package/deployments/ethereum-sandbox-local/EndpointV2View.json +435 -0
  20. package/deployments/ethereum-sandbox-local/EndpointV2View_Implementation.json +313 -0
  21. package/deployments/ethereum-sandbox-local/EndpointV2View_Proxy.json +230 -0
  22. package/deployments/ethereum-sandbox-local/Executor.json +86 -86
  23. package/deployments/ethereum-sandbox-local/ExecutorFeeLib.json +38 -33
  24. package/deployments/ethereum-sandbox-local/ExecutorProxyAdmin.json +17 -17
  25. package/deployments/ethereum-sandbox-local/Executor_Implementation.json +61 -61
  26. package/deployments/ethereum-sandbox-local/Executor_Proxy.json +66 -66
  27. package/deployments/ethereum-sandbox-local/LzExecutor.json +757 -0
  28. package/deployments/ethereum-sandbox-local/LzExecutor_Implementation.json +703 -0
  29. package/deployments/ethereum-sandbox-local/LzExecutor_Proxy.json +244 -0
  30. package/deployments/ethereum-sandbox-local/NonceContractMock.json +6 -6
  31. package/deployments/ethereum-sandbox-local/PriceFeed.json +18 -18
  32. package/deployments/ethereum-sandbox-local/PriceFeedProxyAdmin.json +5 -5
  33. package/deployments/ethereum-sandbox-local/PriceFeed_Implementation.json +44 -44
  34. package/deployments/ethereum-sandbox-local/PriceFeed_Proxy.json +5 -5
  35. package/deployments/ethereum-sandbox-local/ReceiveUln301.json +126 -98
  36. package/deployments/ethereum-sandbox-local/ReceiveUln301View.json +354 -0
  37. package/deployments/ethereum-sandbox-local/ReceiveUln301View_Implementation.json +231 -0
  38. package/deployments/ethereum-sandbox-local/ReceiveUln301View_Proxy.json +230 -0
  39. package/deployments/ethereum-sandbox-local/ReceiveUln302.json +114 -62
  40. package/deployments/ethereum-sandbox-local/ReceiveUln302View.json +478 -0
  41. package/deployments/ethereum-sandbox-local/ReceiveUln302View_Implementation.json +384 -0
  42. package/deployments/ethereum-sandbox-local/ReceiveUln302View_Proxy.json +230 -0
  43. package/deployments/ethereum-sandbox-local/SendUln301.json +112 -112
  44. package/deployments/ethereum-sandbox-local/SendUln302.json +109 -109
  45. package/deployments/ethereum-sandbox-local/SimpleMessageLib.json +23 -23
  46. package/deployments/ethereum-sandbox-local/Treasury.json +21 -21
  47. package/deployments/ethereum-sandbox-local/TreasuryFeeHandler.json +12 -12
  48. package/deployments/polygon-sandbox-local/DVN.json +76 -76
  49. package/deployments/polygon-sandbox-local/DVNFeeLib.json +23 -23
  50. package/deployments/polygon-sandbox-local/DefaultProxyAdmin.json +258 -0
  51. package/deployments/polygon-sandbox-local/EndpointV2.json +141 -150
  52. package/deployments/polygon-sandbox-local/EndpointV2View.json +435 -0
  53. package/deployments/polygon-sandbox-local/EndpointV2View_Implementation.json +313 -0
  54. package/deployments/polygon-sandbox-local/EndpointV2View_Proxy.json +230 -0
  55. package/deployments/polygon-sandbox-local/Executor.json +86 -86
  56. package/deployments/polygon-sandbox-local/ExecutorFeeLib.json +38 -33
  57. package/deployments/polygon-sandbox-local/ExecutorProxyAdmin.json +17 -17
  58. package/deployments/polygon-sandbox-local/Executor_Implementation.json +61 -61
  59. package/deployments/polygon-sandbox-local/Executor_Proxy.json +66 -66
  60. package/deployments/polygon-sandbox-local/LzExecutor.json +757 -0
  61. package/deployments/polygon-sandbox-local/LzExecutor_Implementation.json +703 -0
  62. package/deployments/polygon-sandbox-local/LzExecutor_Proxy.json +244 -0
  63. package/deployments/polygon-sandbox-local/NonceContractMock.json +6 -6
  64. package/deployments/polygon-sandbox-local/PriceFeed.json +18 -18
  65. package/deployments/polygon-sandbox-local/PriceFeedProxyAdmin.json +5 -5
  66. package/deployments/polygon-sandbox-local/PriceFeed_Implementation.json +44 -44
  67. package/deployments/polygon-sandbox-local/PriceFeed_Proxy.json +5 -5
  68. package/deployments/polygon-sandbox-local/ReceiveUln301.json +126 -98
  69. package/deployments/polygon-sandbox-local/ReceiveUln301View.json +354 -0
  70. package/deployments/polygon-sandbox-local/ReceiveUln301View_Implementation.json +231 -0
  71. package/deployments/polygon-sandbox-local/ReceiveUln301View_Proxy.json +230 -0
  72. package/deployments/polygon-sandbox-local/ReceiveUln302.json +114 -62
  73. package/deployments/polygon-sandbox-local/ReceiveUln302View.json +478 -0
  74. package/deployments/polygon-sandbox-local/ReceiveUln302View_Implementation.json +384 -0
  75. package/deployments/polygon-sandbox-local/ReceiveUln302View_Proxy.json +230 -0
  76. package/deployments/polygon-sandbox-local/SendUln301.json +112 -112
  77. package/deployments/polygon-sandbox-local/SendUln302.json +109 -109
  78. package/deployments/polygon-sandbox-local/SimpleMessageLib.json +23 -23
  79. package/deployments/polygon-sandbox-local/Treasury.json +21 -21
  80. package/deployments/polygon-sandbox-local/TreasuryFeeHandler.json +12 -12
  81. package/dist/{index-htDjTX1I.d.mts → index-839VW31F.d.mts} +82 -10
  82. package/dist/{index-htDjTX1I.d.ts → index-839VW31F.d.ts} +82 -10
  83. package/dist/index.browser.cjs +108 -10
  84. package/dist/index.browser.cjs.map +1 -1
  85. package/dist/index.browser.d.mts +1 -1
  86. package/dist/index.browser.d.ts +1 -1
  87. package/dist/index.browser.mjs +108 -10
  88. package/dist/index.browser.mjs.map +1 -1
  89. package/dist/index.cjs +108 -10
  90. package/dist/index.cjs.map +1 -1
  91. package/dist/index.d.mts +1 -1
  92. package/dist/index.d.ts +1 -1
  93. package/dist/index.mjs +108 -10
  94. package/dist/index.mjs.map +1 -1
  95. package/package.json +8 -8
@@ -124,17 +124,12 @@
124
124
  "type": "uint256"
125
125
  }
126
126
  ],
127
- "name": "InsufficientBalance",
127
+ "name": "AxelarDVNAdapter_InsufficientBalance",
128
128
  "type": "error"
129
129
  },
130
130
  {
131
131
  "inputs": [],
132
- "name": "OptionsUnsupported",
133
- "type": "error"
134
- },
135
- {
136
- "inputs": [],
137
- "name": "ToAddressIsZero",
132
+ "name": "AxelarDVNAdapter_OptionsUnsupported",
138
133
  "type": "error"
139
134
  },
140
135
  {
@@ -150,7 +145,12 @@
150
145
  "type": "uint256"
151
146
  }
152
147
  ],
153
- "name": "TransferNativeFailed",
148
+ "name": "Transfer_NativeFailed",
149
+ "type": "error"
150
+ },
151
+ {
152
+ "inputs": [],
153
+ "name": "Transfer_ToAddressIsZero",
154
154
  "type": "error"
155
155
  },
156
156
  {
@@ -754,11 +754,11 @@
754
754
  "0xA2b2b04C42B5f46DeEAa05FB76CAFA8479949D20",
755
755
  "0x7ebef529000000000000000000000000be406f0189a0b4cf3a05c286473d23791dd44cc6000000000000000000000000bd2d8be6ae3a1b51331acc53aac5dd03807955b800000000000000000000000000000000000000000000000000000000000061a8"
756
756
  ],
757
- "numDeployments": 3,
757
+ "numDeployments": 4,
758
758
  "solcInputHash": "0e89febeebc7444140de8e67c9067d2c",
759
759
  "bytecode": "0x60a060405260405162000f5f38038062000f5f83398101604081905262000026916200044a565b82816200005560017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6200052a565b60008051602062000f188339815191521462000075576200007562000550565b62000083828260006200013c565b50620000b3905060017fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61046200052a565b60008051602062000ef883398151915214620000d357620000d362000550565b6001600160a01b038216608081905260008051602062000ef88339815191528381556040805160008152602081019390935290917f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f910160405180910390a150505050620005b9565b620001478362000179565b600082511180620001555750805b156200017457620001728383620001bb60201b620002a91760201c565b505b505050565b6200018481620001ea565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620001e3838360405180606001604052806027815260200162000f3860279139620002b2565b9392505050565b62000200816200039860201b620002d51760201c565b620002685760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b806200029160008051602062000f1883398151915260001b620003a760201b620002411760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b60606001600160a01b0384163b6200031c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016200025f565b600080856001600160a01b03168560405162000339919062000566565b600060405180830381855af49150503d806000811462000376576040519150601f19603f3d011682016040523d82523d6000602084013e6200037b565b606091505b5090925090506200038e828286620003aa565b9695505050505050565b6001600160a01b03163b151590565b90565b60608315620003bb575081620001e3565b825115620003cc5782518084602001fd5b8160405162461bcd60e51b81526004016200025f919062000584565b80516001600160a01b03811681146200040057600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620004385781810151838201526020016200041e565b83811115620001725750506000910152565b6000806000606084860312156200046057600080fd5b6200046b84620003e8565b92506200047b60208501620003e8565b60408501519092506001600160401b03808211156200049957600080fd5b818601915086601f830112620004ae57600080fd5b815181811115620004c357620004c362000405565b604051601f8201601f19908116603f01168101908382118183101715620004ee57620004ee62000405565b816040528281528960208487010111156200050857600080fd5b6200051b8360208301602088016200041b565b80955050505050509250925092565b6000828210156200054b57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052600160045260246000fd5b600082516200057a8184602087016200041b565b9190910192915050565b6020815260008251806020840152620005a58160408501602087016200041b565b601f01601f19169190910160400192915050565b608051610900620005f86000396000818161011201528181610176015281816102060152818161025e01528181610287015261030901526109006000f3fe6080604052600436106100435760003560e01c80633659cfe61461005a5780634f1ef2861461007a5780635c60da1b1461008d578063f851a440146100cb57610052565b36610052576100506100e0565b005b6100506100e0565b34801561006657600080fd5b5061005061007536600461076c565b6100fa565b610050610088366004610787565b61015e565b34801561009957600080fd5b506100a26101ec565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3480156100d757600080fd5b506100a2610244565b6100e86102f1565b6100f86100f36103e2565b610422565b565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614156101565761015381604051806020016040528060008152506000610446565b50565b6101536100e0565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614156101e4576101df8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610446915050565b505050565b6101df6100e0565b60003373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161415610239576102346103e2565b905090565b6102416100e0565b90565b60003373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016141561023957507f000000000000000000000000000000000000000000000000000000000000000090565b60606102ce83836040518060600160405280602781526020016108a460279139610471565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff163b151590565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614156100f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f7879207461726760648201527f6574000000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b60006102347f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b3660008037600080366000845af43d6000803e808015610441573d6000f35b3d6000fd5b61044f83610599565b60008251118061045c5750805b156101df5761046b83836102a9565b50505050565b606073ffffffffffffffffffffffffffffffffffffffff84163b610517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f60448201527f6e7472616374000000000000000000000000000000000000000000000000000060648201526084016103d9565b6000808573ffffffffffffffffffffffffffffffffffffffff168560405161053f9190610836565b600060405180830381855af49150503d806000811461057a576040519150601f19603f3d011682016040523d82523d6000602084013e61057f565b606091505b509150915061058f8282866105e6565b9695505050505050565b6105a281610639565b60405173ffffffffffffffffffffffffffffffffffffffff8216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156105f55750816102ce565b8251156106055782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103d99190610852565b73ffffffffffffffffffffffffffffffffffffffff81163b6106dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201527f6f74206120636f6e74726163740000000000000000000000000000000000000060648201526084016103d9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b803573ffffffffffffffffffffffffffffffffffffffff8116811461076757600080fd5b919050565b60006020828403121561077e57600080fd5b6102ce82610743565b60008060006040848603121561079c57600080fd5b6107a584610743565b9250602084013567ffffffffffffffff808211156107c257600080fd5b818601915086601f8301126107d657600080fd5b8135818111156107e557600080fd5b8760208285010111156107f757600080fd5b6020830194508093505050509250925092565b60005b8381101561082557818101518382015260200161080d565b8381111561046b5750506000910152565b6000825161084881846020870161080a565b9190910192915050565b602081526000825180602084015261087181604085016020870161080a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212206f70214c51cdd41c05ba0ffeb72b309ca3c8be178fd6e73c12162330799984f364736f6c634300080a0033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564",
760
760
  "deployedBytecode": "0x6080604052600436106100435760003560e01c80633659cfe61461005a5780634f1ef2861461007a5780635c60da1b1461008d578063f851a440146100cb57610052565b36610052576100506100e0565b005b6100506100e0565b34801561006657600080fd5b5061005061007536600461076c565b6100fa565b610050610088366004610787565b61015e565b34801561009957600080fd5b506100a26101ec565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3480156100d757600080fd5b506100a2610244565b6100e86102f1565b6100f86100f36103e2565b610422565b565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614156101565761015381604051806020016040528060008152506000610446565b50565b6101536100e0565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614156101e4576101df8383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250610446915050565b505050565b6101df6100e0565b60003373ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000161415610239576102346103e2565b905090565b6102416100e0565b90565b60003373ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016141561023957507f000000000000000000000000000000000000000000000000000000000000000090565b60606102ce83836040518060600160405280602781526020016108a460279139610471565b9392505050565b73ffffffffffffffffffffffffffffffffffffffff163b151590565b3373ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614156100f8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f5472616e73706172656e745570677261646561626c6550726f78793a2061646d60448201527f696e2063616e6e6f742066616c6c6261636b20746f2070726f7879207461726760648201527f6574000000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b60006102347f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b3660008037600080366000845af43d6000803e808015610441573d6000f35b3d6000fd5b61044f83610599565b60008251118061045c5750805b156101df5761046b83836102a9565b50505050565b606073ffffffffffffffffffffffffffffffffffffffff84163b610517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f60448201527f6e7472616374000000000000000000000000000000000000000000000000000060648201526084016103d9565b6000808573ffffffffffffffffffffffffffffffffffffffff168560405161053f9190610836565b600060405180830381855af49150503d806000811461057a576040519150601f19603f3d011682016040523d82523d6000602084013e61057f565b606091505b509150915061058f8282866105e6565b9695505050505050565b6105a281610639565b60405173ffffffffffffffffffffffffffffffffffffffff8216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156105f55750816102ce565b8251156106055782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103d99190610852565b73ffffffffffffffffffffffffffffffffffffffff81163b6106dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201527f6f74206120636f6e74726163740000000000000000000000000000000000000060648201526084016103d9565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b803573ffffffffffffffffffffffffffffffffffffffff8116811461076757600080fd5b919050565b60006020828403121561077e57600080fd5b6102ce82610743565b60008060006040848603121561079c57600080fd5b6107a584610743565b9250602084013567ffffffffffffffff808211156107c257600080fd5b818601915086601f8301126107d657600080fd5b8135818111156107e557600080fd5b8760208285010111156107f757600080fd5b6020830194508093505050509250925092565b60005b8381101561082557818101518382015260200161080d565b8381111561046b5750506000910152565b6000825161084881846020870161080a565b9190910192915050565b602081526000825180602084015261087181604085016020870161080a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212206f70214c51cdd41c05ba0ffeb72b309ca3c8be178fd6e73c12162330799984f364736f6c634300080a0033",
761
- "implementation": "0x15c8dd90C1a79E2f2866c51E62CbD795a9DFD2eb",
761
+ "implementation": "0xB198d397d7D0A9BEaF80222764769058e830a09A",
762
762
  "devdoc": {
763
763
  "details": "This contract implements a proxy that is upgradeable by an admin. To avoid https://medium.com/nomic-labs-blog/malicious-backdoors-in-ethereum-proxies-62629adf3357[proxy selector clashing], which can potentially be used in an attack, this contract uses the https://blog.openzeppelin.com/the-transparent-proxy-pattern/[transparent proxy pattern]. This pattern implies two things that go hand in hand: 1. If any account other than the admin calls the proxy, the call will be forwarded to the implementation, even if that call matches one of the admin functions exposed by the proxy itself. 2. If the admin calls the proxy, it can access the admin functions, but its calls will never be forwarded to the implementation. If the admin tries to call a function on the implementation it will fail with an error that says \"admin cannot fallback to proxy target\". These properties mean that the admin account can only be used for admin actions like upgrading the proxy or changing the admin, so it's best if it's a dedicated account that is not used for anything else. This will avoid headaches due to sudden errors when trying to call a function from the proxy implementation. Our recommendation is for the dedicated account to be an instance of the {ProxyAdmin} contract. If set up this way, you should think of the `ProxyAdmin` instance as the real administrative interface of your proxy.",
764
764
  "kind": "dev",
@@ -1,5 +1,5 @@
1
1
  {
2
- "address": "0x15c8dd90C1a79E2f2866c51E62CbD795a9DFD2eb",
2
+ "address": "0xB198d397d7D0A9BEaF80222764769058e830a09A",
3
3
  "abi": [
4
4
  {
5
5
  "inputs": [
@@ -14,17 +14,12 @@
14
14
  "type": "uint256"
15
15
  }
16
16
  ],
17
- "name": "InsufficientBalance",
17
+ "name": "AxelarDVNAdapter_InsufficientBalance",
18
18
  "type": "error"
19
19
  },
20
20
  {
21
21
  "inputs": [],
22
- "name": "OptionsUnsupported",
23
- "type": "error"
24
- },
25
- {
26
- "inputs": [],
27
- "name": "ToAddressIsZero",
22
+ "name": "AxelarDVNAdapter_OptionsUnsupported",
28
23
  "type": "error"
29
24
  },
30
25
  {
@@ -40,7 +35,12 @@
40
35
  "type": "uint256"
41
36
  }
42
37
  ],
43
- "name": "TransferNativeFailed",
38
+ "name": "Transfer_NativeFailed",
39
+ "type": "error"
40
+ },
41
+ {
42
+ "inputs": [],
43
+ "name": "Transfer_ToAddressIsZero",
44
44
  "type": "error"
45
45
  },
46
46
  {
@@ -554,27 +554,27 @@
554
554
  "type": "receive"
555
555
  }
556
556
  ],
557
- "transactionHash": "0x2fce19bc50fffabbdf7c59b3639581ab00a9feec29b2e56585ae829203ae5989",
557
+ "transactionHash": "0x8bc00c256876ed63cedf020f28586c2f5ca847feac5d2bcfe3c6021ec9a19dd2",
558
558
  "receipt": {
559
559
  "to": null,
560
560
  "from": "0x7ed0222FEF0C668e389D8E38c68aA73ef4EE6B3d",
561
- "contractAddress": "0x15c8dd90C1a79E2f2866c51E62CbD795a9DFD2eb",
561
+ "contractAddress": "0xB198d397d7D0A9BEaF80222764769058e830a09A",
562
562
  "transactionIndex": 0,
563
563
  "gasUsed": "1613568",
564
564
  "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
565
- "blockHash": "0x6aa9cca6561878a65d75d0565c4a2fe60dda3650806e40d52d8a032ae5fc971e",
566
- "transactionHash": "0x2fce19bc50fffabbdf7c59b3639581ab00a9feec29b2e56585ae829203ae5989",
565
+ "blockHash": "0x2c5258a5c770ef667e1d528bc2019a05caae774ed62e52d6f5b3c815acbfca0b",
566
+ "transactionHash": "0x8bc00c256876ed63cedf020f28586c2f5ca847feac5d2bcfe3c6021ec9a19dd2",
567
567
  "logs": [],
568
- "blockNumber": 29442817,
568
+ "blockNumber": 29465371,
569
569
  "cumulativeGasUsed": "1613568",
570
570
  "status": 1,
571
571
  "byzantium": true
572
572
  },
573
573
  "args": [],
574
- "numDeployments": 3,
575
- "solcInputHash": "feaeba8968072f8b2adb8e01a6611e9d",
576
- "bytecode": "0x608060405234801561001057600080fd5b50611c69806100206000396000f3fe6080604052600436106100f75760003560e01c80638596f3631161008a578063d135ca9311610059578063d135ca9314610352578063dfdd8b9014610373578063f0b81bb414610393578063f2fde38b146103b357600080fd5b80638596f363146102515780638da5cb5b146102715780639e9449651461029c578063b44966801461032457600080fd5b806371a6fbfe116100c657806371a6fbfe146101c4578063724e78da146101e4578063741bef1a146102045780637ebef5291461023157600080fd5b806301e336671461010357806317b00e7d146101255780636a22d8cc14610182578063715018a6146101af57600080fd5b366100fe57005b600080fd5b34801561010f57600080fd5b5061012361011e3660046114fc565b6103d3565b005b34801561013157600080fd5b506065546101589062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561018e57600080fd5b506066546101589073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101bb57600080fd5b50610123610443565b3480156101d057600080fd5b506101236101df36600461154a565b610457565b3480156101f057600080fd5b506101236101ff36600461156c565b6104c7565b34801561021057600080fd5b506067546101589073ffffffffffffffffffffffffffffffffffffffff1681565b34801561023d57600080fd5b5061012361024c366004611587565b610542565b34801561025d57600080fd5b5061012361026c3660046115ca565b610826565b34801561027d57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610158565b3480156102a857600080fd5b506102f36102b7366004611653565b60686020526000908152604090205467ffffffffffffffff8116906801000000000000000090046fffffffffffffffffffffffffffffffff1682565b6040805167ffffffffffffffff90931683526fffffffffffffffffffffffffffffffff909116602083015201610179565b34801561033057600080fd5b5060655461033f9061ffff1681565b60405161ffff9091168152602001610179565b6103656103603660046116fe565b610974565b604051908152602001610179565b34801561037f57600080fd5b5061012361038e36600461156c565b610b5f565b34801561039f57600080fd5b506103656103ae36600461183f565b610bda565b3480156103bf57600080fd5b506101236103ce36600461156c565b610c52565b6103db610d09565b6103e6838383610d8a565b6040805173ffffffffffffffffffffffffffffffffffffffff8086168252841660208201529081018290527f8210728e7c071f615b840ee026032693858fbcd5e5359e67e438c890f59e56209060600160405180910390a1505050565b61044b610d09565b6104556000610dbf565b565b61045f610d09565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff83169081179091556040519081527f9cdcd7ab8980314cc1c51bbe119a035a775ddb353b9b897287d010d00f4bb01c906020015b60405180910390a150565b6104cf610d09565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f40d8738b990e6ff9a2f56f11247e657a1e7070472260b020a4fc3ab1844787bd906020016104bc565b600061056c7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166105c55773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103556105e7565b3373ffffffffffffffffffffffffffffffffffffffff8216146105e757600080fd5b600054610100900460ff16158080156106075750600054600160ff909116105b806106215750303b158015610621575060005460ff166001145b6106b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561071057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610718610e36565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff87811691909117909155606580547fffffffffffffffffffff000000000000000000000000000000000000000000001662010000928716929092027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000169190911761ffff8516179055801561081f57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b61082e610d09565b60005b81811015610936573683838381811061084c5761084c6118b7565b9050606002019050604051806040016040528082602001602081019061087291906118fe565b67ffffffffffffffff1681526020016108916060840160408501611939565b6fffffffffffffffffffffffffffffffff169052606860006108b66020850185611653565b63ffffffff1681526020808201929092526040016000208251815493909201516fffffffffffffffffffffffffffffffff1668010000000000000000027fffffffffffffffff00000000000000000000000000000000000000000000000090931667ffffffffffffffff9092169190911791909117905550600101610831565b507f4bc47f7ad04f6122b687e6997c1313863ab8340f575aedbf8c2496fa5274861b8282604051610968929190611954565b60405180910390a15050565b600082156109ae576040517fe866179f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006109bd8760600135610ed5565b90506109e86109d26060890160408a0161154a565b6109e260808b0160608c0161154a565b83610efd565b91504781811015610ac6576065546040517f1271241700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301526201000090920490911690631271241790602401600060405180830381600087803b158015610a6757600080fd5b505af1158015610a7b573d6000803e3d6000fd5b5050505047905081811015610ac6576040517fcf47918100000000000000000000000000000000000000000000000000000000815260048101829052602481018390526044016106a9565b60665473ffffffffffffffffffffffffffffffffffffffff16630c93e3bb8330610af08c806119dd565b610afd60208f018f6119dd565b8e306040518963ffffffff1660e01b8152600401610b219796959493929190611af9565b6000604051808303818588803b158015610b3a57600080fd5b505af1158015610b4e573d6000803e3d6000fd5b505050505050509695505050505050565b610b67610d09565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f83650e857191635cdf372edf115c49497fa8a7db67978cab532ffa395405803a906020016104bc565b60008115610c14576040517fe866179f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610c238560600135610ed5565b9050610c48610c38606087016040880161154a565b6109e26080890160608a0161154a565b9695505050505050565b610c5a610d09565b73ffffffffffffffffffffffffffffffffffffffff8116610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106a9565b610d0681610dbf565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610455576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106a9565b73ffffffffffffffffffffffffffffffffffffffff8316610db457610daf8282610f38565b505050565b610daf83838361103e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610ecd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b6104556110ac565b60655460009061271090610eed9061ffff1684611b69565b610ef79190611ba7565b92915050565b60008061ffff851615610f105784610f12565b835b61ffff169050612710610f258285611b69565b610f2f9190611ba7565b95945050505050565b73ffffffffffffffffffffffffffffffffffffffff8216610f85576040517f32fa6a1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114610fdf576040519150601f19603f3d011682016040523d82523d6000602084013e610fe4565b606091505b5050905080610daf576040517f2c024f9200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602481018390526044016106a9565b73ffffffffffffffffffffffffffffffffffffffff821661108b576040517f32fa6a1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610daf73ffffffffffffffffffffffffffffffffffffffff8416838361114c565b600054610100900460ff16611143576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b61045533610dbf565b6040805173ffffffffffffffffffffffffffffffffffffffff848116602483015260448083018590528351808403909101815260649092018352602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656490840152610daf928692916000916112179185169084906112c4565b90508051600014806112385750808060200190518101906112389190611be2565b610daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016106a9565b60606112d384846000856112db565b949350505050565b60608247101561136d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016106a9565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516113969190611c04565b60006040518083038185875af1925050503d80600081146113d3576040519150601f19603f3d011682016040523d82523d6000602084013e6113d8565b606091505b50915091506113e9878383876113f4565b979650505050505050565b6060831561148a5782516000036114835773ffffffffffffffffffffffffffffffffffffffff85163b611483576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106a9565b50816112d3565b6112d3838381511561149f5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a99190611c20565b803573ffffffffffffffffffffffffffffffffffffffff811681146114f757600080fd5b919050565b60008060006060848603121561151157600080fd5b61151a846114d3565b9250611528602085016114d3565b9150604084013590509250925092565b803561ffff811681146114f757600080fd5b60006020828403121561155c57600080fd5b61156582611538565b9392505050565b60006020828403121561157e57600080fd5b611565826114d3565b60008060006060848603121561159c57600080fd5b6115a5846114d3565b92506115b3602085016114d3565b91506115c160408501611538565b90509250925092565b600080602083850312156115dd57600080fd5b823567ffffffffffffffff808211156115f557600080fd5b818501915085601f83011261160957600080fd5b81358181111561161857600080fd5b86602060608302850101111561162d57600080fd5b60209290920196919550909350505050565b803563ffffffff811681146114f757600080fd5b60006020828403121561166557600080fd5b6115658261163f565b60006080828403121561168057600080fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008083601f8401126116c757600080fd5b50813567ffffffffffffffff8111156116df57600080fd5b6020830191508360208285010111156116f757600080fd5b9250929050565b600080600080600080610100878903121561171857600080fd5b611722888861166e565b9550608087013567ffffffffffffffff8082111561173f57600080fd5b61174b8a838b0161166e565b965060a089013591508082111561176157600080fd5b818901915089601f83011261177557600080fd5b81358181111561178757611787611686565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156117cd576117cd611686565b816040528281528c60208487010111156117e657600080fd5b8260208601602083013760006020848301015280985050505060c089013591508082111561181357600080fd5b5061182089828a016116b5565b9094509250611833905060e088016114d3565b90509295509295509295565b60008060008060c0858703121561185557600080fd5b61185f868661166e565b9350608085013567ffffffffffffffff8082111561187c57600080fd5b6118888883890161166e565b945060a087013591508082111561189e57600080fd5b506118ab878288016116b5565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b803567ffffffffffffffff811681146114f757600080fd5b60006020828403121561191057600080fd5b611565826118e6565b80356fffffffffffffffffffffffffffffffff811681146114f757600080fd5b60006020828403121561194b57600080fd5b61156582611919565b6020808252818101839052600090604080840186845b878110156119d05763ffffffff6119808361163f565b16835267ffffffffffffffff6119978684016118e6565b16858401526fffffffffffffffffffffffffffffffff6119b8858401611919565b1683850152606092830192919091019060010161196a565b5090979650505050505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611a1257600080fd5b83018035915067ffffffffffffffff821115611a2d57600080fd5b6020019150368190038213156116f757600080fd5b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b60005b83811015611aa6578181015183820152602001611a8e565b50506000910152565b60008151808452611ac7816020860160208601611a8b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a06020840152611b2a60a08401898b611a42565b8381036040850152611b3d81888a611a42565b90508381036060850152611b518187611aaf565b92505080841660808401525098975050505050505050565b8082028115828204841417610ef7577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082611bdd577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600060208284031215611bf457600080fd5b8151801515811461156557600080fd5b60008251611c16818460208701611a8b565b9190910192915050565b6020815260006115656020830184611aaf56fea26469706673582212203197b27eda5ffc4b166297b14fa2b001a2e22ee4b6dfd57ac6027a373c14e56264736f6c63430008160033",
577
- "deployedBytecode": "0x6080604052600436106100f75760003560e01c80638596f3631161008a578063d135ca9311610059578063d135ca9314610352578063dfdd8b9014610373578063f0b81bb414610393578063f2fde38b146103b357600080fd5b80638596f363146102515780638da5cb5b146102715780639e9449651461029c578063b44966801461032457600080fd5b806371a6fbfe116100c657806371a6fbfe146101c4578063724e78da146101e4578063741bef1a146102045780637ebef5291461023157600080fd5b806301e336671461010357806317b00e7d146101255780636a22d8cc14610182578063715018a6146101af57600080fd5b366100fe57005b600080fd5b34801561010f57600080fd5b5061012361011e3660046114fc565b6103d3565b005b34801561013157600080fd5b506065546101589062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561018e57600080fd5b506066546101589073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101bb57600080fd5b50610123610443565b3480156101d057600080fd5b506101236101df36600461154a565b610457565b3480156101f057600080fd5b506101236101ff36600461156c565b6104c7565b34801561021057600080fd5b506067546101589073ffffffffffffffffffffffffffffffffffffffff1681565b34801561023d57600080fd5b5061012361024c366004611587565b610542565b34801561025d57600080fd5b5061012361026c3660046115ca565b610826565b34801561027d57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610158565b3480156102a857600080fd5b506102f36102b7366004611653565b60686020526000908152604090205467ffffffffffffffff8116906801000000000000000090046fffffffffffffffffffffffffffffffff1682565b6040805167ffffffffffffffff90931683526fffffffffffffffffffffffffffffffff909116602083015201610179565b34801561033057600080fd5b5060655461033f9061ffff1681565b60405161ffff9091168152602001610179565b6103656103603660046116fe565b610974565b604051908152602001610179565b34801561037f57600080fd5b5061012361038e36600461156c565b610b5f565b34801561039f57600080fd5b506103656103ae36600461183f565b610bda565b3480156103bf57600080fd5b506101236103ce36600461156c565b610c52565b6103db610d09565b6103e6838383610d8a565b6040805173ffffffffffffffffffffffffffffffffffffffff8086168252841660208201529081018290527f8210728e7c071f615b840ee026032693858fbcd5e5359e67e438c890f59e56209060600160405180910390a1505050565b61044b610d09565b6104556000610dbf565b565b61045f610d09565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff83169081179091556040519081527f9cdcd7ab8980314cc1c51bbe119a035a775ddb353b9b897287d010d00f4bb01c906020015b60405180910390a150565b6104cf610d09565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f40d8738b990e6ff9a2f56f11247e657a1e7070472260b020a4fc3ab1844787bd906020016104bc565b600061056c7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166105c55773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103556105e7565b3373ffffffffffffffffffffffffffffffffffffffff8216146105e757600080fd5b600054610100900460ff16158080156106075750600054600160ff909116105b806106215750303b158015610621575060005460ff166001145b6106b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561071057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610718610e36565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff87811691909117909155606580547fffffffffffffffffffff000000000000000000000000000000000000000000001662010000928716929092027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000169190911761ffff8516179055801561081f57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b61082e610d09565b60005b81811015610936573683838381811061084c5761084c6118b7565b9050606002019050604051806040016040528082602001602081019061087291906118fe565b67ffffffffffffffff1681526020016108916060840160408501611939565b6fffffffffffffffffffffffffffffffff169052606860006108b66020850185611653565b63ffffffff1681526020808201929092526040016000208251815493909201516fffffffffffffffffffffffffffffffff1668010000000000000000027fffffffffffffffff00000000000000000000000000000000000000000000000090931667ffffffffffffffff9092169190911791909117905550600101610831565b507f4bc47f7ad04f6122b687e6997c1313863ab8340f575aedbf8c2496fa5274861b8282604051610968929190611954565b60405180910390a15050565b600082156109ae576040517fe866179f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006109bd8760600135610ed5565b90506109e86109d26060890160408a0161154a565b6109e260808b0160608c0161154a565b83610efd565b91504781811015610ac6576065546040517f1271241700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301526201000090920490911690631271241790602401600060405180830381600087803b158015610a6757600080fd5b505af1158015610a7b573d6000803e3d6000fd5b5050505047905081811015610ac6576040517fcf47918100000000000000000000000000000000000000000000000000000000815260048101829052602481018390526044016106a9565b60665473ffffffffffffffffffffffffffffffffffffffff16630c93e3bb8330610af08c806119dd565b610afd60208f018f6119dd565b8e306040518963ffffffff1660e01b8152600401610b219796959493929190611af9565b6000604051808303818588803b158015610b3a57600080fd5b505af1158015610b4e573d6000803e3d6000fd5b505050505050509695505050505050565b610b67610d09565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f83650e857191635cdf372edf115c49497fa8a7db67978cab532ffa395405803a906020016104bc565b60008115610c14576040517fe866179f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610c238560600135610ed5565b9050610c48610c38606087016040880161154a565b6109e26080890160608a0161154a565b9695505050505050565b610c5a610d09565b73ffffffffffffffffffffffffffffffffffffffff8116610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106a9565b610d0681610dbf565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610455576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106a9565b73ffffffffffffffffffffffffffffffffffffffff8316610db457610daf8282610f38565b505050565b610daf83838361103e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610ecd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b6104556110ac565b60655460009061271090610eed9061ffff1684611b69565b610ef79190611ba7565b92915050565b60008061ffff851615610f105784610f12565b835b61ffff169050612710610f258285611b69565b610f2f9190611ba7565b95945050505050565b73ffffffffffffffffffffffffffffffffffffffff8216610f85576040517f32fa6a1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114610fdf576040519150601f19603f3d011682016040523d82523d6000602084013e610fe4565b606091505b5050905080610daf576040517f2c024f9200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602481018390526044016106a9565b73ffffffffffffffffffffffffffffffffffffffff821661108b576040517f32fa6a1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610daf73ffffffffffffffffffffffffffffffffffffffff8416838361114c565b600054610100900460ff16611143576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b61045533610dbf565b6040805173ffffffffffffffffffffffffffffffffffffffff848116602483015260448083018590528351808403909101815260649092018352602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656490840152610daf928692916000916112179185169084906112c4565b90508051600014806112385750808060200190518101906112389190611be2565b610daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016106a9565b60606112d384846000856112db565b949350505050565b60608247101561136d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016106a9565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516113969190611c04565b60006040518083038185875af1925050503d80600081146113d3576040519150601f19603f3d011682016040523d82523d6000602084013e6113d8565b606091505b50915091506113e9878383876113f4565b979650505050505050565b6060831561148a5782516000036114835773ffffffffffffffffffffffffffffffffffffffff85163b611483576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106a9565b50816112d3565b6112d3838381511561149f5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a99190611c20565b803573ffffffffffffffffffffffffffffffffffffffff811681146114f757600080fd5b919050565b60008060006060848603121561151157600080fd5b61151a846114d3565b9250611528602085016114d3565b9150604084013590509250925092565b803561ffff811681146114f757600080fd5b60006020828403121561155c57600080fd5b61156582611538565b9392505050565b60006020828403121561157e57600080fd5b611565826114d3565b60008060006060848603121561159c57600080fd5b6115a5846114d3565b92506115b3602085016114d3565b91506115c160408501611538565b90509250925092565b600080602083850312156115dd57600080fd5b823567ffffffffffffffff808211156115f557600080fd5b818501915085601f83011261160957600080fd5b81358181111561161857600080fd5b86602060608302850101111561162d57600080fd5b60209290920196919550909350505050565b803563ffffffff811681146114f757600080fd5b60006020828403121561166557600080fd5b6115658261163f565b60006080828403121561168057600080fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008083601f8401126116c757600080fd5b50813567ffffffffffffffff8111156116df57600080fd5b6020830191508360208285010111156116f757600080fd5b9250929050565b600080600080600080610100878903121561171857600080fd5b611722888861166e565b9550608087013567ffffffffffffffff8082111561173f57600080fd5b61174b8a838b0161166e565b965060a089013591508082111561176157600080fd5b818901915089601f83011261177557600080fd5b81358181111561178757611787611686565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156117cd576117cd611686565b816040528281528c60208487010111156117e657600080fd5b8260208601602083013760006020848301015280985050505060c089013591508082111561181357600080fd5b5061182089828a016116b5565b9094509250611833905060e088016114d3565b90509295509295509295565b60008060008060c0858703121561185557600080fd5b61185f868661166e565b9350608085013567ffffffffffffffff8082111561187c57600080fd5b6118888883890161166e565b945060a087013591508082111561189e57600080fd5b506118ab878288016116b5565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b803567ffffffffffffffff811681146114f757600080fd5b60006020828403121561191057600080fd5b611565826118e6565b80356fffffffffffffffffffffffffffffffff811681146114f757600080fd5b60006020828403121561194b57600080fd5b61156582611919565b6020808252818101839052600090604080840186845b878110156119d05763ffffffff6119808361163f565b16835267ffffffffffffffff6119978684016118e6565b16858401526fffffffffffffffffffffffffffffffff6119b8858401611919565b1683850152606092830192919091019060010161196a565b5090979650505050505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611a1257600080fd5b83018035915067ffffffffffffffff821115611a2d57600080fd5b6020019150368190038213156116f757600080fd5b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b60005b83811015611aa6578181015183820152602001611a8e565b50506000910152565b60008151808452611ac7816020860160208601611a8b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a06020840152611b2a60a08401898b611a42565b8381036040850152611b3d81888a611a42565b90508381036060850152611b518187611aaf565b92505080841660808401525098975050505050505050565b8082028115828204841417610ef7577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082611bdd577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600060208284031215611bf457600080fd5b8151801515811461156557600080fd5b60008251611c16818460208701611a8b565b9190910192915050565b6020815260006115656020830184611aaf56fea26469706673582212203197b27eda5ffc4b166297b14fa2b001a2e22ee4b6dfd57ac6027a373c14e56264736f6c63430008160033",
574
+ "numDeployments": 4,
575
+ "solcInputHash": "c7494350b0d0158e0d5ce98590e0726a",
576
+ "bytecode": "0x608060405234801561001057600080fd5b50611c69806100206000396000f3fe6080604052600436106100f75760003560e01c80638596f3631161008a578063d135ca9311610059578063d135ca9314610352578063dfdd8b9014610373578063f0b81bb414610393578063f2fde38b146103b357600080fd5b80638596f363146102515780638da5cb5b146102715780639e9449651461029c578063b44966801461032457600080fd5b806371a6fbfe116100c657806371a6fbfe146101c4578063724e78da146101e4578063741bef1a146102045780637ebef5291461023157600080fd5b806301e336671461010357806317b00e7d146101255780636a22d8cc14610182578063715018a6146101af57600080fd5b366100fe57005b600080fd5b34801561010f57600080fd5b5061012361011e3660046114fc565b6103d3565b005b34801561013157600080fd5b506065546101589062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561018e57600080fd5b506066546101589073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101bb57600080fd5b50610123610443565b3480156101d057600080fd5b506101236101df36600461154a565b610457565b3480156101f057600080fd5b506101236101ff36600461156c565b6104c7565b34801561021057600080fd5b506067546101589073ffffffffffffffffffffffffffffffffffffffff1681565b34801561023d57600080fd5b5061012361024c366004611587565b610542565b34801561025d57600080fd5b5061012361026c3660046115ca565b610826565b34801561027d57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610158565b3480156102a857600080fd5b506102f36102b7366004611653565b60686020526000908152604090205467ffffffffffffffff8116906801000000000000000090046fffffffffffffffffffffffffffffffff1682565b6040805167ffffffffffffffff90931683526fffffffffffffffffffffffffffffffff909116602083015201610179565b34801561033057600080fd5b5060655461033f9061ffff1681565b60405161ffff9091168152602001610179565b6103656103603660046116fe565b610974565b604051908152602001610179565b34801561037f57600080fd5b5061012361038e36600461156c565b610b5f565b34801561039f57600080fd5b506103656103ae36600461183f565b610bda565b3480156103bf57600080fd5b506101236103ce36600461156c565b610c52565b6103db610d09565b6103e6838383610d8a565b6040805173ffffffffffffffffffffffffffffffffffffffff8086168252841660208201529081018290527f8210728e7c071f615b840ee026032693858fbcd5e5359e67e438c890f59e56209060600160405180910390a1505050565b61044b610d09565b6104556000610dbf565b565b61045f610d09565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff83169081179091556040519081527f9cdcd7ab8980314cc1c51bbe119a035a775ddb353b9b897287d010d00f4bb01c906020015b60405180910390a150565b6104cf610d09565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f40d8738b990e6ff9a2f56f11247e657a1e7070472260b020a4fc3ab1844787bd906020016104bc565b600061056c7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166105c55773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103556105e7565b3373ffffffffffffffffffffffffffffffffffffffff8216146105e757600080fd5b600054610100900460ff16158080156106075750600054600160ff909116105b806106215750303b158015610621575060005460ff166001145b6106b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561071057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610718610e36565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff87811691909117909155606580547fffffffffffffffffffff000000000000000000000000000000000000000000001662010000928716929092027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000169190911761ffff8516179055801561081f57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b61082e610d09565b60005b81811015610936573683838381811061084c5761084c6118b7565b9050606002019050604051806040016040528082602001602081019061087291906118fe565b67ffffffffffffffff1681526020016108916060840160408501611939565b6fffffffffffffffffffffffffffffffff169052606860006108b66020850185611653565b63ffffffff1681526020808201929092526040016000208251815493909201516fffffffffffffffffffffffffffffffff1668010000000000000000027fffffffffffffffff00000000000000000000000000000000000000000000000090931667ffffffffffffffff9092169190911791909117905550600101610831565b507f4bc47f7ad04f6122b687e6997c1313863ab8340f575aedbf8c2496fa5274861b8282604051610968929190611954565b60405180910390a15050565b600082156109ae576040517f26cbb93300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006109bd8760600135610ed5565b90506109e86109d26060890160408a0161154a565b6109e260808b0160608c0161154a565b83610efd565b91504781811015610ac6576065546040517f1271241700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301526201000090920490911690631271241790602401600060405180830381600087803b158015610a6757600080fd5b505af1158015610a7b573d6000803e3d6000fd5b5050505047905081811015610ac6576040517f576cbba300000000000000000000000000000000000000000000000000000000815260048101829052602481018390526044016106a9565b60665473ffffffffffffffffffffffffffffffffffffffff16630c93e3bb8330610af08c806119dd565b610afd60208f018f6119dd565b8e306040518963ffffffff1660e01b8152600401610b219796959493929190611af9565b6000604051808303818588803b158015610b3a57600080fd5b505af1158015610b4e573d6000803e3d6000fd5b505050505050509695505050505050565b610b67610d09565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f83650e857191635cdf372edf115c49497fa8a7db67978cab532ffa395405803a906020016104bc565b60008115610c14576040517f26cbb93300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610c238560600135610ed5565b9050610c48610c38606087016040880161154a565b6109e26080890160608a0161154a565b9695505050505050565b610c5a610d09565b73ffffffffffffffffffffffffffffffffffffffff8116610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106a9565b610d0681610dbf565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610455576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106a9565b73ffffffffffffffffffffffffffffffffffffffff8316610db457610daf8282610f38565b505050565b610daf83838361103e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610ecd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b6104556110ac565b60655460009061271090610eed9061ffff1684611b69565b610ef79190611ba7565b92915050565b60008061ffff851615610f105784610f12565b835b61ffff169050612710610f258285611b69565b610f2f9190611ba7565b95945050505050565b73ffffffffffffffffffffffffffffffffffffffff8216610f85576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114610fdf576040519150601f19603f3d011682016040523d82523d6000602084013e610fe4565b606091505b5050905080610daf576040517f465bc83400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602481018390526044016106a9565b73ffffffffffffffffffffffffffffffffffffffff821661108b576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610daf73ffffffffffffffffffffffffffffffffffffffff8416838361114c565b600054610100900460ff16611143576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b61045533610dbf565b6040805173ffffffffffffffffffffffffffffffffffffffff848116602483015260448083018590528351808403909101815260649092018352602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656490840152610daf928692916000916112179185169084906112c4565b90508051600014806112385750808060200190518101906112389190611be2565b610daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016106a9565b60606112d384846000856112db565b949350505050565b60608247101561136d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016106a9565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516113969190611c04565b60006040518083038185875af1925050503d80600081146113d3576040519150601f19603f3d011682016040523d82523d6000602084013e6113d8565b606091505b50915091506113e9878383876113f4565b979650505050505050565b6060831561148a5782516000036114835773ffffffffffffffffffffffffffffffffffffffff85163b611483576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106a9565b50816112d3565b6112d3838381511561149f5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a99190611c20565b803573ffffffffffffffffffffffffffffffffffffffff811681146114f757600080fd5b919050565b60008060006060848603121561151157600080fd5b61151a846114d3565b9250611528602085016114d3565b9150604084013590509250925092565b803561ffff811681146114f757600080fd5b60006020828403121561155c57600080fd5b61156582611538565b9392505050565b60006020828403121561157e57600080fd5b611565826114d3565b60008060006060848603121561159c57600080fd5b6115a5846114d3565b92506115b3602085016114d3565b91506115c160408501611538565b90509250925092565b600080602083850312156115dd57600080fd5b823567ffffffffffffffff808211156115f557600080fd5b818501915085601f83011261160957600080fd5b81358181111561161857600080fd5b86602060608302850101111561162d57600080fd5b60209290920196919550909350505050565b803563ffffffff811681146114f757600080fd5b60006020828403121561166557600080fd5b6115658261163f565b60006080828403121561168057600080fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008083601f8401126116c757600080fd5b50813567ffffffffffffffff8111156116df57600080fd5b6020830191508360208285010111156116f757600080fd5b9250929050565b600080600080600080610100878903121561171857600080fd5b611722888861166e565b9550608087013567ffffffffffffffff8082111561173f57600080fd5b61174b8a838b0161166e565b965060a089013591508082111561176157600080fd5b818901915089601f83011261177557600080fd5b81358181111561178757611787611686565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156117cd576117cd611686565b816040528281528c60208487010111156117e657600080fd5b8260208601602083013760006020848301015280985050505060c089013591508082111561181357600080fd5b5061182089828a016116b5565b9094509250611833905060e088016114d3565b90509295509295509295565b60008060008060c0858703121561185557600080fd5b61185f868661166e565b9350608085013567ffffffffffffffff8082111561187c57600080fd5b6118888883890161166e565b945060a087013591508082111561189e57600080fd5b506118ab878288016116b5565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b803567ffffffffffffffff811681146114f757600080fd5b60006020828403121561191057600080fd5b611565826118e6565b80356fffffffffffffffffffffffffffffffff811681146114f757600080fd5b60006020828403121561194b57600080fd5b61156582611919565b6020808252818101839052600090604080840186845b878110156119d05763ffffffff6119808361163f565b16835267ffffffffffffffff6119978684016118e6565b16858401526fffffffffffffffffffffffffffffffff6119b8858401611919565b1683850152606092830192919091019060010161196a565b5090979650505050505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611a1257600080fd5b83018035915067ffffffffffffffff821115611a2d57600080fd5b6020019150368190038213156116f757600080fd5b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b60005b83811015611aa6578181015183820152602001611a8e565b50506000910152565b60008151808452611ac7816020860160208601611a8b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a06020840152611b2a60a08401898b611a42565b8381036040850152611b3d81888a611a42565b90508381036060850152611b518187611aaf565b92505080841660808401525098975050505050505050565b8082028115828204841417610ef7577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082611bdd577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600060208284031215611bf457600080fd5b8151801515811461156557600080fd5b60008251611c16818460208701611a8b565b9190910192915050565b6020815260006115656020830184611aaf56fea2646970667358221220330b51cb769d324ff42444c444720b4ebae44fb08d09bc85c4b4e0faebca2b5764736f6c63430008160033",
577
+ "deployedBytecode": "0x6080604052600436106100f75760003560e01c80638596f3631161008a578063d135ca9311610059578063d135ca9314610352578063dfdd8b9014610373578063f0b81bb414610393578063f2fde38b146103b357600080fd5b80638596f363146102515780638da5cb5b146102715780639e9449651461029c578063b44966801461032457600080fd5b806371a6fbfe116100c657806371a6fbfe146101c4578063724e78da146101e4578063741bef1a146102045780637ebef5291461023157600080fd5b806301e336671461010357806317b00e7d146101255780636a22d8cc14610182578063715018a6146101af57600080fd5b366100fe57005b600080fd5b34801561010f57600080fd5b5061012361011e3660046114fc565b6103d3565b005b34801561013157600080fd5b506065546101589062010000900473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561018e57600080fd5b506066546101589073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101bb57600080fd5b50610123610443565b3480156101d057600080fd5b506101236101df36600461154a565b610457565b3480156101f057600080fd5b506101236101ff36600461156c565b6104c7565b34801561021057600080fd5b506067546101589073ffffffffffffffffffffffffffffffffffffffff1681565b34801561023d57600080fd5b5061012361024c366004611587565b610542565b34801561025d57600080fd5b5061012361026c3660046115ca565b610826565b34801561027d57600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff16610158565b3480156102a857600080fd5b506102f36102b7366004611653565b60686020526000908152604090205467ffffffffffffffff8116906801000000000000000090046fffffffffffffffffffffffffffffffff1682565b6040805167ffffffffffffffff90931683526fffffffffffffffffffffffffffffffff909116602083015201610179565b34801561033057600080fd5b5060655461033f9061ffff1681565b60405161ffff9091168152602001610179565b6103656103603660046116fe565b610974565b604051908152602001610179565b34801561037f57600080fd5b5061012361038e36600461156c565b610b5f565b34801561039f57600080fd5b506103656103ae36600461183f565b610bda565b3480156103bf57600080fd5b506101236103ce36600461156c565b610c52565b6103db610d09565b6103e6838383610d8a565b6040805173ffffffffffffffffffffffffffffffffffffffff8086168252841660208201529081018290527f8210728e7c071f615b840ee026032693858fbcd5e5359e67e438c890f59e56209060600160405180910390a1505050565b61044b610d09565b6104556000610dbf565b565b61045f610d09565b606580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff83169081179091556040519081527f9cdcd7ab8980314cc1c51bbe119a035a775ddb353b9b897287d010d00f4bb01c906020015b60405180910390a150565b6104cf610d09565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f40d8738b990e6ff9a2f56f11247e657a1e7070472260b020a4fc3ab1844787bd906020016104bc565b600061056c7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166105c55773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103556105e7565b3373ffffffffffffffffffffffffffffffffffffffff8216146105e757600080fd5b600054610100900460ff16158080156106075750600054600160ff909116105b806106215750303b158015610621575060005460ff166001145b6106b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561071057600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610718610e36565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff87811691909117909155606580547fffffffffffffffffffff000000000000000000000000000000000000000000001662010000928716929092027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000169190911761ffff8516179055801561081f57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b61082e610d09565b60005b81811015610936573683838381811061084c5761084c6118b7565b9050606002019050604051806040016040528082602001602081019061087291906118fe565b67ffffffffffffffff1681526020016108916060840160408501611939565b6fffffffffffffffffffffffffffffffff169052606860006108b66020850185611653565b63ffffffff1681526020808201929092526040016000208251815493909201516fffffffffffffffffffffffffffffffff1668010000000000000000027fffffffffffffffff00000000000000000000000000000000000000000000000090931667ffffffffffffffff9092169190911791909117905550600101610831565b507f4bc47f7ad04f6122b687e6997c1313863ab8340f575aedbf8c2496fa5274861b8282604051610968929190611954565b60405180910390a15050565b600082156109ae576040517f26cbb93300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006109bd8760600135610ed5565b90506109e86109d26060890160408a0161154a565b6109e260808b0160608c0161154a565b83610efd565b91504781811015610ac6576065546040517f1271241700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301526201000090920490911690631271241790602401600060405180830381600087803b158015610a6757600080fd5b505af1158015610a7b573d6000803e3d6000fd5b5050505047905081811015610ac6576040517f576cbba300000000000000000000000000000000000000000000000000000000815260048101829052602481018390526044016106a9565b60665473ffffffffffffffffffffffffffffffffffffffff16630c93e3bb8330610af08c806119dd565b610afd60208f018f6119dd565b8e306040518963ffffffff1660e01b8152600401610b219796959493929190611af9565b6000604051808303818588803b158015610b3a57600080fd5b505af1158015610b4e573d6000803e3d6000fd5b505050505050509695505050505050565b610b67610d09565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040519081527f83650e857191635cdf372edf115c49497fa8a7db67978cab532ffa395405803a906020016104bc565b60008115610c14576040517f26cbb93300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610c238560600135610ed5565b9050610c48610c38606087016040880161154a565b6109e26080890160608a0161154a565b9695505050505050565b610c5a610d09565b73ffffffffffffffffffffffffffffffffffffffff8116610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106a9565b610d0681610dbf565b50565b60335473ffffffffffffffffffffffffffffffffffffffff163314610455576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106a9565b73ffffffffffffffffffffffffffffffffffffffff8316610db457610daf8282610f38565b505050565b610daf83838361103e565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16610ecd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b6104556110ac565b60655460009061271090610eed9061ffff1684611b69565b610ef79190611ba7565b92915050565b60008061ffff851615610f105784610f12565b835b61ffff169050612710610f258285611b69565b610f2f9190611ba7565b95945050505050565b73ffffffffffffffffffffffffffffffffffffffff8216610f85576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d8060008114610fdf576040519150601f19603f3d011682016040523d82523d6000602084013e610fe4565b606091505b5050905080610daf576040517f465bc83400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84166004820152602481018390526044016106a9565b73ffffffffffffffffffffffffffffffffffffffff821661108b576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610daf73ffffffffffffffffffffffffffffffffffffffff8416838361114c565b600054610100900460ff16611143576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e6700000000000000000000000000000000000000000060648201526084016106a9565b61045533610dbf565b6040805173ffffffffffffffffffffffffffffffffffffffff848116602483015260448083018590528351808403909101815260649092018352602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656490840152610daf928692916000916112179185169084906112c4565b90508051600014806112385750808060200190518101906112389190611be2565b610daf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016106a9565b60606112d384846000856112db565b949350505050565b60608247101561136d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016106a9565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516113969190611c04565b60006040518083038185875af1925050503d80600081146113d3576040519150601f19603f3d011682016040523d82523d6000602084013e6113d8565b606091505b50915091506113e9878383876113f4565b979650505050505050565b6060831561148a5782516000036114835773ffffffffffffffffffffffffffffffffffffffff85163b611483576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106a9565b50816112d3565b6112d3838381511561149f5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a99190611c20565b803573ffffffffffffffffffffffffffffffffffffffff811681146114f757600080fd5b919050565b60008060006060848603121561151157600080fd5b61151a846114d3565b9250611528602085016114d3565b9150604084013590509250925092565b803561ffff811681146114f757600080fd5b60006020828403121561155c57600080fd5b61156582611538565b9392505050565b60006020828403121561157e57600080fd5b611565826114d3565b60008060006060848603121561159c57600080fd5b6115a5846114d3565b92506115b3602085016114d3565b91506115c160408501611538565b90509250925092565b600080602083850312156115dd57600080fd5b823567ffffffffffffffff808211156115f557600080fd5b818501915085601f83011261160957600080fd5b81358181111561161857600080fd5b86602060608302850101111561162d57600080fd5b60209290920196919550909350505050565b803563ffffffff811681146114f757600080fd5b60006020828403121561166557600080fd5b6115658261163f565b60006080828403121561168057600080fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008083601f8401126116c757600080fd5b50813567ffffffffffffffff8111156116df57600080fd5b6020830191508360208285010111156116f757600080fd5b9250929050565b600080600080600080610100878903121561171857600080fd5b611722888861166e565b9550608087013567ffffffffffffffff8082111561173f57600080fd5b61174b8a838b0161166e565b965060a089013591508082111561176157600080fd5b818901915089601f83011261177557600080fd5b81358181111561178757611787611686565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156117cd576117cd611686565b816040528281528c60208487010111156117e657600080fd5b8260208601602083013760006020848301015280985050505060c089013591508082111561181357600080fd5b5061182089828a016116b5565b9094509250611833905060e088016114d3565b90509295509295509295565b60008060008060c0858703121561185557600080fd5b61185f868661166e565b9350608085013567ffffffffffffffff8082111561187c57600080fd5b6118888883890161166e565b945060a087013591508082111561189e57600080fd5b506118ab878288016116b5565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b803567ffffffffffffffff811681146114f757600080fd5b60006020828403121561191057600080fd5b611565826118e6565b80356fffffffffffffffffffffffffffffffff811681146114f757600080fd5b60006020828403121561194b57600080fd5b61156582611919565b6020808252818101839052600090604080840186845b878110156119d05763ffffffff6119808361163f565b16835267ffffffffffffffff6119978684016118e6565b16858401526fffffffffffffffffffffffffffffffff6119b8858401611919565b1683850152606092830192919091019060010161196a565b5090979650505050505050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112611a1257600080fd5b83018035915067ffffffffffffffff821115611a2d57600080fd5b6020019150368190038213156116f757600080fd5b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b60005b83811015611aa6578181015183820152602001611a8e565b50506000910152565b60008151808452611ac7816020860160208601611a8b565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff808a16835260a06020840152611b2a60a08401898b611a42565b8381036040850152611b3d81888a611a42565b90508381036060850152611b518187611aaf565b92505080841660808401525098975050505050505050565b8082028115828204841417610ef7577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082611bdd577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600060208284031215611bf457600080fd5b8151801515811461156557600080fd5b60008251611c16818460208701611a8b565b9190910192915050565b6020815260006115656020830184611aaf56fea2646970667358221220330b51cb769d324ff42444c444720b4ebae44fb08d09bc85c4b4e0faebca2b5764736f6c63430008160033",
578
578
  "devdoc": {
579
579
  "events": {
580
580
  "Initialized(uint8)": {
@@ -608,7 +608,7 @@
608
608
  "storageLayout": {
609
609
  "storage": [
610
610
  {
611
- "astId": 783,
611
+ "astId": 5381,
612
612
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
613
613
  "label": "_initialized",
614
614
  "offset": 0,
@@ -616,7 +616,7 @@
616
616
  "type": "t_uint8"
617
617
  },
618
618
  {
619
- "astId": 786,
619
+ "astId": 5384,
620
620
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
621
621
  "label": "_initializing",
622
622
  "offset": 1,
@@ -624,7 +624,7 @@
624
624
  "type": "t_bool"
625
625
  },
626
626
  {
627
- "astId": 1316,
627
+ "astId": 6125,
628
628
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
629
629
  "label": "__gap",
630
630
  "offset": 0,
@@ -632,7 +632,7 @@
632
632
  "type": "t_array(t_uint256)50_storage"
633
633
  },
634
634
  {
635
- "astId": 655,
635
+ "astId": 5253,
636
636
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
637
637
  "label": "_owner",
638
638
  "offset": 0,
@@ -640,7 +640,7 @@
640
640
  "type": "t_address"
641
641
  },
642
642
  {
643
- "astId": 775,
643
+ "astId": 5373,
644
644
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
645
645
  "label": "__gap",
646
646
  "offset": 0,
@@ -648,7 +648,7 @@
648
648
  "type": "t_array(t_uint256)49_storage"
649
649
  },
650
650
  {
651
- "astId": 2272,
651
+ "astId": 21227,
652
652
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
653
653
  "label": "nativeGasFeeMultiplierBps",
654
654
  "offset": 0,
@@ -656,36 +656,36 @@
656
656
  "type": "t_uint16"
657
657
  },
658
658
  {
659
- "astId": 2275,
659
+ "astId": 21230,
660
660
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
661
661
  "label": "dvn",
662
662
  "offset": 2,
663
663
  "slot": "101",
664
- "type": "t_contract(IAxelarDVNAdapter)2704"
664
+ "type": "t_contract(IAxelarDVNAdapter)22222"
665
665
  },
666
666
  {
667
- "astId": 2278,
667
+ "astId": 21233,
668
668
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
669
669
  "label": "gasService",
670
670
  "offset": 0,
671
671
  "slot": "102",
672
- "type": "t_contract(IAxelarGasService)431"
672
+ "type": "t_contract(IAxelarGasService)1520"
673
673
  },
674
674
  {
675
- "astId": 2281,
675
+ "astId": 21236,
676
676
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
677
677
  "label": "priceFeed",
678
678
  "offset": 0,
679
679
  "slot": "103",
680
- "type": "t_contract(ILayerZeroPriceFeed)2244"
680
+ "type": "t_contract(ILayerZeroPriceFeed)15895"
681
681
  },
682
682
  {
683
- "astId": 2286,
683
+ "astId": 21241,
684
684
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
685
685
  "label": "dstConfig",
686
686
  "offset": 0,
687
687
  "slot": "104",
688
- "type": "t_mapping(t_uint32,t_struct(DstConfig)2722_storage)"
688
+ "type": "t_mapping(t_uint32,t_struct(DstConfig)22240_storage)"
689
689
  }
690
690
  ],
691
691
  "types": {
@@ -711,34 +711,34 @@
711
711
  "label": "bool",
712
712
  "numberOfBytes": "1"
713
713
  },
714
- "t_contract(IAxelarDVNAdapter)2704": {
714
+ "t_contract(IAxelarDVNAdapter)22222": {
715
715
  "encoding": "inplace",
716
716
  "label": "contract IAxelarDVNAdapter",
717
717
  "numberOfBytes": "20"
718
718
  },
719
- "t_contract(IAxelarGasService)431": {
719
+ "t_contract(IAxelarGasService)1520": {
720
720
  "encoding": "inplace",
721
721
  "label": "contract IAxelarGasService",
722
722
  "numberOfBytes": "20"
723
723
  },
724
- "t_contract(ILayerZeroPriceFeed)2244": {
724
+ "t_contract(ILayerZeroPriceFeed)15895": {
725
725
  "encoding": "inplace",
726
726
  "label": "contract ILayerZeroPriceFeed",
727
727
  "numberOfBytes": "20"
728
728
  },
729
- "t_mapping(t_uint32,t_struct(DstConfig)2722_storage)": {
729
+ "t_mapping(t_uint32,t_struct(DstConfig)22240_storage)": {
730
730
  "encoding": "mapping",
731
731
  "key": "t_uint32",
732
732
  "label": "mapping(uint32 => struct IAxelarDVNAdapterFeeLib.DstConfig)",
733
733
  "numberOfBytes": "32",
734
- "value": "t_struct(DstConfig)2722_storage"
734
+ "value": "t_struct(DstConfig)22240_storage"
735
735
  },
736
- "t_struct(DstConfig)2722_storage": {
736
+ "t_struct(DstConfig)22240_storage": {
737
737
  "encoding": "inplace",
738
738
  "label": "struct IAxelarDVNAdapterFeeLib.DstConfig",
739
739
  "members": [
740
740
  {
741
- "astId": 2719,
741
+ "astId": 22237,
742
742
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
743
743
  "label": "gas",
744
744
  "offset": 0,
@@ -746,7 +746,7 @@
746
746
  "type": "t_uint64"
747
747
  },
748
748
  {
749
- "astId": 2721,
749
+ "astId": 22239,
750
750
  "contract": "contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol:AxelarDVNAdapterFeeLib",
751
751
  "label": "floorMarginUSD",
752
752
  "offset": 8,