@enclave-e3/contracts 0.1.4 → 0.1.6
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.md +46 -2
- package/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +135 -0
- package/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/artifacts.d.ts +27 -0
- package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.json +77 -0
- package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +126 -0
- package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/artifacts.d.ts +43 -0
- package/artifacts/build-info/solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc.json +311 -0
- package/artifacts/build-info/solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc.output.json +1 -0
- package/artifacts/contracts/Enclave.sol/Enclave.json +239 -147
- package/artifacts/contracts/Enclave.sol/artifacts.d.ts +6 -6
- package/artifacts/contracts/interfaces/IBondingRegistry.sol/IBondingRegistry.json +881 -0
- package/artifacts/contracts/interfaces/IBondingRegistry.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/interfaces/ICiphernodeRegistry.sol/ICiphernodeRegistry.json +326 -10
- package/artifacts/contracts/interfaces/ICiphernodeRegistry.sol/artifacts.d.ts +2 -2
- package/artifacts/contracts/interfaces/IComputeProvider.sol/IComputeProvider.json +1 -1
- package/artifacts/contracts/interfaces/IComputeProvider.sol/artifacts.d.ts +1 -1
- package/artifacts/contracts/interfaces/IDecryptionVerifier.sol/IDecryptionVerifier.json +1 -1
- package/artifacts/contracts/interfaces/IDecryptionVerifier.sol/artifacts.d.ts +1 -1
- package/artifacts/contracts/interfaces/IE3Program.sol/IE3Program.json +21 -3
- package/artifacts/contracts/interfaces/IE3Program.sol/artifacts.d.ts +2 -2
- package/artifacts/contracts/interfaces/IEnclave.sol/IEnclave.json +247 -27
- package/artifacts/contracts/interfaces/IEnclave.sol/artifacts.d.ts +2 -2
- package/artifacts/contracts/interfaces/{IRegistryFilter.sol/IRegistryFilter.json → ISlashVerifier.sol/ISlashVerifier.json} +10 -10
- package/artifacts/contracts/interfaces/ISlashVerifier.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/interfaces/ISlashingManager.sol/ISlashingManager.json +759 -0
- package/artifacts/contracts/interfaces/ISlashingManager.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/lib/ExitQueueLib.sol/ExitQueueLib.json +116 -0
- package/artifacts/contracts/lib/ExitQueueLib.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/registry/BondingRegistry.sol/BondingRegistry.json +1217 -0
- package/artifacts/contracts/registry/BondingRegistry.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/registry/CiphernodeRegistryOwnable.sol/CiphernodeRegistryOwnable.json +351 -57
- package/artifacts/contracts/registry/CiphernodeRegistryOwnable.sol/artifacts.d.ts +6 -6
- package/artifacts/contracts/slashing/SlashingManager.sol/SlashingManager.json +1107 -0
- package/artifacts/contracts/slashing/SlashingManager.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.json +328 -12
- package/artifacts/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.json +328 -12
- package/artifacts/contracts/test/MockCiphernodeRegistry.sol/artifacts.d.ts +8 -8
- package/artifacts/contracts/test/MockComputeProvider.sol/MockComputeProvider.json +4 -4
- package/artifacts/contracts/test/MockComputeProvider.sol/artifacts.d.ts +4 -4
- package/artifacts/contracts/test/MockDecryptionVerifier.sol/MockDecryptionVerifier.json +3 -3
- package/artifacts/contracts/test/MockDecryptionVerifier.sol/artifacts.d.ts +3 -3
- package/artifacts/contracts/test/MockE3Program.sol/MockE3Program.json +26 -32
- package/artifacts/contracts/test/MockE3Program.sol/artifacts.d.ts +4 -4
- package/artifacts/contracts/test/MockSlashingVerifier.sol/MockSlashingVerifier.json +38 -0
- package/artifacts/contracts/test/MockSlashingVerifier.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/test/MockStableToken.sol/MockUSDC.json +425 -0
- package/artifacts/contracts/test/MockStableToken.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/token/EnclaveTicketToken.sol/EnclaveTicketToken.json +1222 -0
- package/artifacts/contracts/token/EnclaveTicketToken.sol/artifacts.d.ts +27 -0
- package/artifacts/contracts/token/EnclaveToken.sol/EnclaveToken.json +1460 -0
- package/artifacts/contracts/token/EnclaveToken.sol/artifacts.d.ts +27 -0
- package/artifacts/poseidon-solidity/PoseidonT3.sol/PoseidonT3.json +3 -3
- package/artifacts/poseidon-solidity/PoseidonT3.sol/artifacts.d.ts +3 -3
- package/contracts/Enclave.sol +230 -81
- package/contracts/interfaces/IBondingRegistry.sol +446 -0
- package/contracts/interfaces/ICiphernodeRegistry.sol +153 -9
- package/contracts/interfaces/IComputeProvider.sol +12 -2
- package/contracts/interfaces/IDecryptionVerifier.sol +11 -6
- package/contracts/interfaces/IE3.sol +21 -17
- package/contracts/interfaces/IE3Program.sol +30 -17
- package/contracts/interfaces/IEnclave.sol +95 -21
- package/contracts/interfaces/ISlashVerifier.sol +23 -0
- package/contracts/interfaces/ISlashingManager.sol +426 -0
- package/contracts/lib/ExitQueueLib.sol +490 -0
- package/contracts/registry/BondingRegistry.sol +737 -0
- package/contracts/registry/CiphernodeRegistryOwnable.sol +393 -26
- package/contracts/slashing/SlashingManager.sol +367 -0
- package/contracts/test/MockCiphernodeRegistry.sol +118 -24
- package/contracts/test/MockComputeProvider.sol +2 -2
- package/contracts/test/MockE3Program.sol +17 -14
- package/contracts/test/MockSlashingVerifier.sol +19 -0
- package/contracts/test/MockStableToken.sol +28 -0
- package/contracts/token/EnclaveTicketToken.sol +243 -0
- package/contracts/token/EnclaveToken.sol +267 -0
- package/dist/hardhat.config.d.ts.map +1 -1
- package/dist/hardhat.config.js +35 -16
- package/dist/ignition/modules/{mockInputValidator.d.ts → bondingRegistry.d.ts} +1 -1
- package/dist/ignition/modules/bondingRegistry.d.ts.map +1 -0
- package/dist/ignition/modules/bondingRegistry.js +35 -0
- package/dist/ignition/modules/ciphernodeRegistry.d.ts.map +1 -1
- package/dist/ignition/modules/ciphernodeRegistry.js +12 -2
- package/dist/ignition/modules/enclave.d.ts.map +1 -1
- package/dist/ignition/modules/enclave.js +16 -7
- package/dist/ignition/modules/{naiveRegistryFilter.d.ts → enclaveTicketToken.d.ts} +1 -1
- package/dist/ignition/modules/enclaveTicketToken.d.ts.map +1 -0
- package/dist/ignition/modules/enclaveTicketToken.js +17 -0
- package/dist/ignition/modules/enclaveToken.d.ts +3 -0
- package/dist/ignition/modules/enclaveToken.d.ts.map +1 -0
- package/dist/ignition/modules/{mockInputValidator.js → enclaveToken.js} +4 -4
- package/dist/ignition/modules/mockCiphernodeRegistry.d.ts.map +1 -1
- package/dist/ignition/modules/mockCiphernodeRegistry.js +0 -1
- package/dist/ignition/modules/mockCiphernodeRegistryEmptyKey.d.ts.map +1 -1
- package/dist/ignition/modules/mockCiphernodeRegistryEmptyKey.js +0 -1
- package/dist/ignition/modules/mockComputeProvider.d.ts.map +1 -1
- package/dist/ignition/modules/mockComputeProvider.js +0 -1
- package/dist/ignition/modules/mockDecryptionVerifier.d.ts.map +1 -1
- package/dist/ignition/modules/mockDecryptionVerifier.js +0 -1
- package/dist/ignition/modules/mockE3Program.d.ts.map +1 -1
- package/dist/ignition/modules/mockE3Program.js +1 -3
- package/dist/ignition/modules/mockSlashingVerifier.d.ts +3 -0
- package/dist/ignition/modules/mockSlashingVerifier.d.ts.map +1 -0
- package/dist/ignition/modules/mockSlashingVerifier.js +10 -0
- package/dist/ignition/modules/mockStableToken.d.ts +3 -0
- package/dist/ignition/modules/mockStableToken.d.ts.map +1 -0
- package/dist/ignition/modules/mockStableToken.js +11 -0
- package/dist/ignition/modules/poseidonT3.d.ts.map +1 -1
- package/dist/ignition/modules/poseidonT3.js +0 -1
- package/dist/ignition/modules/slashingManager.d.ts +3 -0
- package/dist/ignition/modules/slashingManager.d.ts.map +1 -0
- package/dist/ignition/modules/slashingManager.js +16 -0
- package/dist/scripts/cleanIgnitionState.d.ts +12 -0
- package/dist/scripts/cleanIgnitionState.d.ts.map +1 -0
- package/dist/scripts/cleanIgnitionState.js +41 -0
- package/dist/scripts/deployAndSave/bondingRegistry.d.ts +38 -0
- package/dist/scripts/deployAndSave/bondingRegistry.d.ts.map +1 -0
- package/dist/scripts/deployAndSave/bondingRegistry.js +133 -0
- package/dist/scripts/deployAndSave/ciphernodeRegistryOwnable.d.ts +11 -1
- package/dist/scripts/deployAndSave/ciphernodeRegistryOwnable.d.ts.map +1 -1
- package/dist/scripts/deployAndSave/ciphernodeRegistryOwnable.js +76 -19
- package/dist/scripts/deployAndSave/enclave.d.ts +16 -2
- package/dist/scripts/deployAndSave/enclave.d.ts.map +1 -1
- package/dist/scripts/deployAndSave/enclave.js +89 -22
- package/dist/scripts/deployAndSave/enclaveTicketToken.d.ts +20 -0
- package/dist/scripts/deployAndSave/enclaveTicketToken.d.ts.map +1 -0
- package/dist/scripts/deployAndSave/enclaveTicketToken.js +41 -0
- package/dist/scripts/deployAndSave/enclaveToken.d.ts +18 -0
- package/dist/scripts/deployAndSave/enclaveToken.d.ts.map +1 -0
- package/dist/scripts/deployAndSave/enclaveToken.js +57 -0
- package/dist/scripts/deployAndSave/mockComputeProvider.d.ts.map +1 -1
- package/dist/scripts/deployAndSave/mockComputeProvider.js +5 -5
- package/dist/scripts/deployAndSave/mockDecryptionVerifier.d.ts.map +1 -1
- package/dist/scripts/deployAndSave/mockDecryptionVerifier.js +5 -5
- package/dist/scripts/deployAndSave/mockProgram.d.ts +1 -2
- package/dist/scripts/deployAndSave/mockProgram.d.ts.map +1 -1
- package/dist/scripts/deployAndSave/mockProgram.js +7 -19
- package/dist/scripts/deployAndSave/mockStableToken.d.ts +18 -0
- package/dist/scripts/deployAndSave/mockStableToken.d.ts.map +1 -0
- package/dist/scripts/deployAndSave/mockStableToken.js +36 -0
- package/dist/scripts/deployAndSave/poseidonT3.d.ts +11 -0
- package/dist/scripts/deployAndSave/poseidonT3.d.ts.map +1 -0
- package/dist/scripts/deployAndSave/poseidonT3.js +41 -0
- package/dist/scripts/deployAndSave/slashingManager.d.ts +19 -0
- package/dist/scripts/deployAndSave/slashingManager.d.ts.map +1 -0
- package/dist/scripts/deployAndSave/slashingManager.js +38 -0
- package/dist/scripts/deployEnclave.d.ts.map +1 -1
- package/dist/scripts/deployEnclave.js +109 -23
- package/dist/scripts/deployMocks.d.ts +0 -1
- package/dist/scripts/deployMocks.d.ts.map +1 -1
- package/dist/scripts/deployMocks.js +3 -6
- package/dist/scripts/index.d.ts +7 -2
- package/dist/scripts/index.d.ts.map +1 -1
- package/dist/scripts/index.js +7 -2
- package/dist/scripts/proxy.d.ts +22 -0
- package/dist/scripts/proxy.d.ts.map +1 -0
- package/dist/scripts/proxy.js +36 -0
- package/dist/scripts/runVerification.d.ts +2 -0
- package/dist/scripts/runVerification.d.ts.map +1 -0
- package/dist/scripts/runVerification.js +16 -0
- package/dist/scripts/upgrade/bondingRegistry.d.ts +6 -0
- package/dist/scripts/upgrade/bondingRegistry.d.ts.map +1 -0
- package/dist/scripts/upgrade/bondingRegistry.js +49 -0
- package/dist/scripts/upgrade/ciphernodeRegistryOwnable.d.ts +6 -0
- package/dist/scripts/upgrade/ciphernodeRegistryOwnable.d.ts.map +1 -0
- package/dist/scripts/upgrade/ciphernodeRegistryOwnable.js +52 -0
- package/dist/scripts/upgrade/enclave.d.ts +6 -0
- package/dist/scripts/upgrade/enclave.d.ts.map +1 -0
- package/dist/scripts/upgrade/enclave.js +49 -0
- package/dist/scripts/utils.d.ts +51 -2
- package/dist/scripts/utils.d.ts.map +1 -1
- package/dist/scripts/utils.js +67 -4
- package/dist/scripts/verify.d.ts +6 -0
- package/dist/scripts/verify.d.ts.map +1 -0
- package/dist/scripts/verify.js +142 -0
- package/dist/tasks/ciphernode.d.ts +2 -0
- package/dist/tasks/ciphernode.d.ts.map +1 -1
- package/dist/tasks/ciphernode.js +290 -19
- package/dist/tasks/enclave.d.ts.map +1 -1
- package/dist/tasks/enclave.js +76 -31
- package/dist/test/Enclave.spec.js +377 -370
- package/dist/test/Registry/BondingRegistry.spec.d.ts +2 -0
- package/dist/test/Registry/BondingRegistry.spec.d.ts.map +1 -0
- package/dist/test/Registry/BondingRegistry.spec.js +684 -0
- package/dist/test/Registry/CiphernodeRegistryOwnable.spec.d.ts.map +1 -0
- package/dist/test/Registry/CiphernodeRegistryOwnable.spec.js +374 -0
- package/dist/test/Slashing/SlashingManager.spec.d.ts +2 -0
- package/dist/test/Slashing/SlashingManager.spec.d.ts.map +1 -0
- package/dist/test/Slashing/SlashingManager.spec.js +672 -0
- package/dist/types/@openzeppelin/contracts/index.d.ts +3 -0
- package/dist/types/@openzeppelin/contracts/index.d.ts.map +1 -0
- package/dist/types/@openzeppelin/contracts/proxy/index.d.ts +3 -0
- package/dist/types/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.d.ts +97 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.d.ts.map +1 -0
- package/dist/types/{contracts/registry/NaiveRegistryFilter.js → @openzeppelin/contracts/proxy/transparent/ProxyAdmin.js} +0 -4
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.d.ts +81 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.d.ts.map +1 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.js +12 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.d.ts +52 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.d.ts.map +1 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.js +8 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +3 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts.map +1 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/index.d.ts +4 -0
- package/dist/types/@openzeppelin/contracts/proxy/transparent/index.d.ts.map +1 -0
- package/dist/types/@openzeppelin/index.d.ts +3 -0
- package/dist/types/@openzeppelin/index.d.ts.map +1 -0
- package/dist/types/contracts/Enclave.d.ts +126 -53
- package/dist/types/contracts/Enclave.d.ts.map +1 -1
- package/dist/types/contracts/Enclave.js +12 -0
- package/dist/types/contracts/index.d.ts +6 -0
- package/dist/types/contracts/index.d.ts.map +1 -1
- package/dist/types/contracts/interfaces/IBondingRegistry.d.ts +622 -0
- package/dist/types/contracts/interfaces/IBondingRegistry.d.ts.map +1 -0
- package/dist/types/contracts/interfaces/IBondingRegistry.js +24 -0
- package/dist/types/contracts/interfaces/ICiphernodeRegistry.d.ts +245 -15
- package/dist/types/contracts/interfaces/ICiphernodeRegistry.d.ts.map +1 -1
- package/dist/types/contracts/interfaces/ICiphernodeRegistry.js +16 -0
- package/dist/types/contracts/interfaces/IE3Program.d.ts +20 -10
- package/dist/types/contracts/interfaces/IE3Program.d.ts.map +1 -1
- package/dist/types/contracts/interfaces/IEnclave.d.ts +149 -20
- package/dist/types/contracts/interfaces/IEnclave.d.ts.map +1 -1
- package/dist/types/contracts/interfaces/IEnclave.js +12 -0
- package/dist/types/contracts/interfaces/{IRegistryFilter.d.ts → ISlashVerifier.d.ts} +16 -16
- package/dist/types/contracts/interfaces/ISlashVerifier.d.ts.map +1 -0
- package/dist/types/contracts/interfaces/ISlashVerifier.js +1 -0
- package/dist/types/contracts/interfaces/ISlashingManager.d.ts +384 -0
- package/dist/types/contracts/interfaces/ISlashingManager.d.ts.map +1 -0
- package/dist/types/contracts/interfaces/ISlashingManager.js +24 -0
- package/dist/types/contracts/interfaces/index.d.ts +3 -2
- package/dist/types/contracts/interfaces/index.d.ts.map +1 -1
- package/dist/types/contracts/lib/ExitQueueLib.d.ts +73 -0
- package/dist/types/contracts/lib/ExitQueueLib.d.ts.map +1 -0
- package/dist/types/contracts/lib/ExitQueueLib.js +12 -0
- package/dist/types/contracts/lib/index.d.ts +2 -0
- package/dist/types/contracts/lib/index.d.ts.map +1 -0
- package/dist/types/contracts/lib/index.js +1 -0
- package/dist/types/contracts/registry/BondingRegistry.d.ts +821 -0
- package/dist/types/contracts/registry/BondingRegistry.d.ts.map +1 -0
- package/dist/types/contracts/registry/BondingRegistry.js +44 -0
- package/dist/types/contracts/registry/CiphernodeRegistryOwnable.d.ts +194 -34
- package/dist/types/contracts/registry/CiphernodeRegistryOwnable.d.ts.map +1 -1
- package/dist/types/contracts/registry/CiphernodeRegistryOwnable.js +20 -0
- package/dist/types/contracts/registry/index.d.ts +1 -1
- package/dist/types/contracts/registry/index.d.ts.map +1 -1
- package/dist/types/contracts/slashing/SlashingManager.d.ts +592 -0
- package/dist/types/contracts/slashing/SlashingManager.d.ts.map +1 -0
- package/dist/types/contracts/slashing/SlashingManager.js +36 -0
- package/dist/types/contracts/slashing/index.d.ts +2 -0
- package/dist/types/contracts/slashing/index.d.ts.map +1 -0
- package/dist/types/contracts/slashing/index.js +1 -0
- package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.d.ts +247 -17
- package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.d.ts.map +1 -1
- package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.js +16 -0
- package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.d.ts +247 -17
- package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.d.ts.map +1 -1
- package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.js +16 -0
- package/dist/types/contracts/test/MockE3Program.d.ts +20 -14
- package/dist/types/contracts/test/MockE3Program.d.ts.map +1 -1
- package/dist/types/contracts/test/{MockInputValidator.d.ts → MockSlashingVerifier.d.ts} +15 -15
- package/dist/types/contracts/test/MockSlashingVerifier.d.ts.map +1 -0
- package/dist/types/contracts/test/MockSlashingVerifier.js +1 -0
- package/dist/types/contracts/test/MockStableToken.sol/MockUSDC.d.ts +227 -0
- package/dist/types/contracts/test/MockStableToken.sol/MockUSDC.d.ts.map +1 -0
- package/dist/types/contracts/test/MockStableToken.sol/MockUSDC.js +12 -0
- package/dist/types/contracts/test/MockStableToken.sol/index.d.ts +2 -0
- package/dist/types/contracts/test/MockStableToken.sol/index.d.ts.map +1 -0
- package/dist/types/contracts/test/MockStableToken.sol/index.js +1 -0
- package/dist/types/contracts/test/index.d.ts +3 -3
- package/dist/types/contracts/test/index.d.ts.map +1 -1
- package/dist/types/contracts/token/EnclaveTicketToken.d.ts +574 -0
- package/dist/types/contracts/token/EnclaveTicketToken.d.ts.map +1 -0
- package/dist/types/contracts/token/EnclaveTicketToken.js +24 -0
- package/dist/types/contracts/token/EnclaveToken.d.ts +775 -0
- package/dist/types/contracts/token/EnclaveToken.d.ts.map +1 -0
- package/dist/types/contracts/token/EnclaveToken.js +48 -0
- package/dist/types/contracts/token/index.d.ts +3 -0
- package/dist/types/contracts/token/index.d.ts.map +1 -0
- package/dist/types/contracts/token/index.js +1 -0
- package/dist/types/factories/@openzeppelin/contracts/index.d.ts +2 -0
- package/dist/types/factories/@openzeppelin/contracts/index.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/contracts/index.js +4 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/index.d.ts +2 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/index.js +4 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.d.ts +118 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.js +157 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.d.ts +57 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.js +78 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.d.ts +105 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.js +141 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +3 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.js +5 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/index.d.ts +3 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/index.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/index.js +5 -0
- package/dist/types/factories/@openzeppelin/index.d.ts +2 -0
- package/dist/types/factories/@openzeppelin/index.d.ts.map +1 -0
- package/dist/types/factories/@openzeppelin/index.js +4 -0
- package/dist/types/factories/contracts/Enclave__factory.d.ts +190 -104
- package/dist/types/factories/contracts/Enclave__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/Enclave__factory.js +241 -134
- package/dist/types/factories/contracts/index.d.ts +3 -0
- package/dist/types/factories/contracts/index.d.ts.map +1 -1
- package/dist/types/factories/contracts/index.js +3 -0
- package/dist/types/factories/contracts/interfaces/IBondingRegistry__factory.d.ts +678 -0
- package/dist/types/factories/contracts/interfaces/IBondingRegistry__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/interfaces/IBondingRegistry__factory.js +882 -0
- package/dist/types/factories/contracts/interfaces/ICiphernodeRegistry__factory.d.ts +253 -9
- package/dist/types/factories/contracts/interfaces/ICiphernodeRegistry__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/interfaces/ICiphernodeRegistry__factory.js +325 -9
- package/dist/types/factories/contracts/interfaces/IE3Program__factory.d.ts +16 -2
- package/dist/types/factories/contracts/interfaces/IE3Program__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/interfaces/IE3Program__factory.js +20 -2
- package/dist/types/factories/contracts/interfaces/IEnclave__factory.d.ts +190 -24
- package/dist/types/factories/contracts/interfaces/IEnclave__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/interfaces/IEnclave__factory.js +246 -26
- package/dist/types/factories/contracts/interfaces/ISlashVerifier__factory.d.ts +26 -0
- package/dist/types/factories/contracts/interfaces/ISlashVerifier__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/interfaces/{IRegistryFilter__factory.js → ISlashVerifier__factory.js} +7 -7
- package/dist/types/factories/contracts/interfaces/ISlashingManager__factory.d.ts +594 -0
- package/dist/types/factories/contracts/interfaces/ISlashingManager__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/interfaces/ISlashingManager__factory.js +760 -0
- package/dist/types/factories/contracts/interfaces/index.d.ts +3 -2
- package/dist/types/factories/contracts/interfaces/index.d.ts.map +1 -1
- package/dist/types/factories/contracts/interfaces/index.js +3 -2
- package/dist/types/factories/contracts/lib/ExitQueueLib__factory.d.ts +107 -0
- package/dist/types/factories/contracts/lib/ExitQueueLib__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/lib/ExitQueueLib__factory.js +138 -0
- package/dist/types/factories/contracts/lib/index.d.ts +2 -0
- package/dist/types/factories/contracts/lib/index.d.ts.map +1 -0
- package/dist/types/factories/contracts/lib/index.js +4 -0
- package/dist/types/factories/contracts/registry/BondingRegistry__factory.d.ts +958 -0
- package/dist/types/factories/contracts/registry/BondingRegistry__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/registry/BondingRegistry__factory.js +1239 -0
- package/dist/types/factories/contracts/registry/CiphernodeRegistryOwnable__factory.d.ts +272 -40
- package/dist/types/factories/contracts/registry/CiphernodeRegistryOwnable__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/registry/CiphernodeRegistryOwnable__factory.js +343 -49
- package/dist/types/factories/contracts/registry/index.d.ts +1 -1
- package/dist/types/factories/contracts/registry/index.d.ts.map +1 -1
- package/dist/types/factories/contracts/registry/index.js +1 -1
- package/dist/types/factories/contracts/slashing/SlashingManager__factory.d.ts +879 -0
- package/dist/types/factories/contracts/slashing/SlashingManager__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/slashing/SlashingManager__factory.js +1129 -0
- package/dist/types/factories/contracts/slashing/index.d.ts +2 -0
- package/dist/types/factories/contracts/slashing/index.d.ts.map +1 -0
- package/dist/types/factories/contracts/slashing/index.js +4 -0
- package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey__factory.d.ts +254 -10
- package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey__factory.js +326 -10
- package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry__factory.d.ts +254 -10
- package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry__factory.js +326 -10
- package/dist/types/factories/contracts/test/MockComputeProvider__factory.d.ts +2 -2
- package/dist/types/factories/contracts/test/MockComputeProvider__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/test/MockComputeProvider__factory.js +2 -2
- package/dist/types/factories/contracts/test/MockDecryptionVerifier__factory.d.ts +1 -1
- package/dist/types/factories/contracts/test/MockDecryptionVerifier__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/test/MockDecryptionVerifier__factory.js +1 -1
- package/dist/types/factories/contracts/test/MockE3Program__factory.d.ts +23 -27
- package/dist/types/factories/contracts/test/MockE3Program__factory.d.ts.map +1 -1
- package/dist/types/factories/contracts/test/MockE3Program__factory.js +28 -34
- package/dist/types/factories/contracts/test/MockSlashingVerifier__factory.d.ts +43 -0
- package/dist/types/factories/contracts/test/MockSlashingVerifier__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/test/MockSlashingVerifier__factory.js +60 -0
- package/dist/types/factories/contracts/test/MockStableToken.sol/MockUSDC__factory.d.ts +338 -0
- package/dist/types/factories/contracts/test/MockStableToken.sol/MockUSDC__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/test/MockStableToken.sol/MockUSDC__factory.js +447 -0
- package/dist/types/factories/contracts/test/MockStableToken.sol/index.d.ts +2 -0
- package/dist/types/factories/contracts/test/MockStableToken.sol/index.d.ts.map +1 -0
- package/dist/types/factories/contracts/test/MockStableToken.sol/index.js +4 -0
- package/dist/types/factories/contracts/test/index.d.ts +2 -2
- package/dist/types/factories/contracts/test/index.d.ts.map +1 -1
- package/dist/types/factories/contracts/test/index.js +2 -2
- package/dist/types/factories/contracts/token/EnclaveTicketToken__factory.d.ts +894 -0
- package/dist/types/factories/contracts/token/EnclaveTicketToken__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/token/EnclaveTicketToken__factory.js +1175 -0
- package/dist/types/factories/contracts/token/EnclaveToken__factory.d.ts +1101 -0
- package/dist/types/factories/contracts/token/EnclaveToken__factory.d.ts.map +1 -0
- package/dist/types/factories/contracts/token/EnclaveToken__factory.js +1439 -0
- package/dist/types/factories/contracts/token/index.d.ts +3 -0
- package/dist/types/factories/contracts/token/index.d.ts.map +1 -0
- package/dist/types/factories/contracts/token/index.js +5 -0
- package/dist/types/factories/index.d.ts +1 -0
- package/dist/types/factories/index.d.ts.map +1 -1
- package/dist/types/factories/index.js +1 -0
- package/dist/types/factories/poseidon-solidity/PoseidonT3__factory.d.ts +1 -1
- package/dist/types/factories/poseidon-solidity/PoseidonT3__factory.d.ts.map +1 -1
- package/dist/types/factories/poseidon-solidity/PoseidonT3__factory.js +1 -1
- package/dist/types/index.d.ts +28 -12
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +13 -6
- package/package.json +30 -21
- package/LICENSE.md +0 -165
- package/artifacts/build-info/solc-0_8_27-9aea5e3f6e25811e781e96c22e8edaf1eb1a01c5.json +0 -130
- package/artifacts/build-info/solc-0_8_27-9aea5e3f6e25811e781e96c22e8edaf1eb1a01c5.output.json +0 -1
- package/artifacts/contracts/interfaces/IInputValidator.sol/IInputValidator.json +0 -38
- package/artifacts/contracts/interfaces/IInputValidator.sol/artifacts.d.ts +0 -27
- package/artifacts/contracts/interfaces/IRegistryFilter.sol/artifacts.d.ts +0 -27
- package/artifacts/contracts/registry/NaiveRegistryFilter.sol/NaiveRegistryFilter.json +0 -309
- package/artifacts/contracts/registry/NaiveRegistryFilter.sol/artifacts.d.ts +0 -27
- package/artifacts/contracts/test/MockInputValidator.sol/MockInputValidator.json +0 -43
- package/artifacts/contracts/test/MockInputValidator.sol/artifacts.d.ts +0 -27
- package/artifacts/contracts/test/MockRegistryFilter.sol/IRegistry.json +0 -37
- package/artifacts/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.json +0 -262
- package/artifacts/contracts/test/MockRegistryFilter.sol/artifacts.d.ts +0 -43
- package/contracts/interfaces/IInputValidator.sol +0 -18
- package/contracts/interfaces/IRegistryFilter.sol +0 -13
- package/contracts/registry/NaiveRegistryFilter.sol +0 -124
- package/contracts/test/MockInputValidator.sol +0 -29
- package/contracts/test/MockRegistryFilter.sol +0 -117
- package/dist/ignition/modules/mockInputValidator.d.ts.map +0 -1
- package/dist/ignition/modules/naiveRegistryFilter.d.ts.map +0 -1
- package/dist/ignition/modules/naiveRegistryFilter.js +0 -16
- package/dist/scripts/deployAndSave/mockInputValidator.d.ts +0 -6
- package/dist/scripts/deployAndSave/mockInputValidator.d.ts.map +0 -1
- package/dist/scripts/deployAndSave/mockInputValidator.js +0 -18
- package/dist/scripts/deployAndSave/naiveRegistryFilter.d.ts +0 -11
- package/dist/scripts/deployAndSave/naiveRegistryFilter.d.ts.map +0 -1
- package/dist/scripts/deployAndSave/naiveRegistryFilter.js +0 -41
- package/dist/test/CiphernodeRegistry/CiphernodeRegistryOwnable.spec.d.ts.map +0 -1
- package/dist/test/CiphernodeRegistry/CiphernodeRegistryOwnable.spec.js +0 -279
- package/dist/test/CiphernodeRegistry/NaiveRegistryFilter.spec.d.ts +0 -2
- package/dist/test/CiphernodeRegistry/NaiveRegistryFilter.spec.d.ts.map +0 -1
- package/dist/test/CiphernodeRegistry/NaiveRegistryFilter.spec.js +0 -160
- package/dist/types/contracts/interfaces/IInputValidator.d.ts +0 -36
- package/dist/types/contracts/interfaces/IInputValidator.d.ts.map +0 -1
- package/dist/types/contracts/interfaces/IRegistryFilter.d.ts.map +0 -1
- package/dist/types/contracts/registry/NaiveRegistryFilter.d.ts +0 -187
- package/dist/types/contracts/registry/NaiveRegistryFilter.d.ts.map +0 -1
- package/dist/types/contracts/test/MockInputValidator.d.ts.map +0 -1
- package/dist/types/contracts/test/MockRegistryFilter.sol/IRegistry.d.ts +0 -38
- package/dist/types/contracts/test/MockRegistryFilter.sol/IRegistry.d.ts.map +0 -1
- package/dist/types/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.d.ts +0 -163
- package/dist/types/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.d.ts.map +0 -1
- package/dist/types/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.js +0 -8
- package/dist/types/contracts/test/MockRegistryFilter.sol/index.d.ts +0 -3
- package/dist/types/contracts/test/MockRegistryFilter.sol/index.d.ts.map +0 -1
- package/dist/types/factories/contracts/interfaces/IInputValidator__factory.d.ts +0 -26
- package/dist/types/factories/contracts/interfaces/IInputValidator__factory.d.ts.map +0 -1
- package/dist/types/factories/contracts/interfaces/IInputValidator__factory.js +0 -39
- package/dist/types/factories/contracts/interfaces/IRegistryFilter__factory.d.ts +0 -26
- package/dist/types/factories/contracts/interfaces/IRegistryFilter__factory.d.ts.map +0 -1
- package/dist/types/factories/contracts/registry/NaiveRegistryFilter__factory.d.ts +0 -251
- package/dist/types/factories/contracts/registry/NaiveRegistryFilter__factory.d.ts.map +0 -1
- package/dist/types/factories/contracts/registry/NaiveRegistryFilter__factory.js +0 -331
- package/dist/types/factories/contracts/test/MockInputValidator__factory.d.ts +0 -47
- package/dist/types/factories/contracts/test/MockInputValidator__factory.d.ts.map +0 -1
- package/dist/types/factories/contracts/test/MockInputValidator__factory.js +0 -65
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/IRegistry__factory.d.ts +0 -26
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/IRegistry__factory.d.ts.map +0 -1
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/IRegistry__factory.js +0 -38
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter__factory.d.ts +0 -216
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter__factory.d.ts.map +0 -1
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter__factory.js +0 -284
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/index.d.ts +0 -3
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/index.d.ts.map +0 -1
- package/dist/types/factories/contracts/test/MockRegistryFilter.sol/index.js +0 -5
- /package/dist/test/{CiphernodeRegistry → Registry}/CiphernodeRegistryOwnable.spec.d.ts +0 -0
- /package/dist/types/{contracts/test/MockRegistryFilter.sol → @openzeppelin/contracts}/index.js +0 -0
- /package/dist/types/{contracts/interfaces/IInputValidator.js → @openzeppelin/contracts/proxy/index.js} +0 -0
- /package/dist/types/{contracts/interfaces/IRegistryFilter.js → @openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.js} +0 -0
- /package/dist/types/{contracts/test/MockInputValidator.js → @openzeppelin/contracts/proxy/transparent/index.js} +0 -0
- /package/dist/types/{contracts/test/MockRegistryFilter.sol/IRegistry.js → @openzeppelin/index.js} +0 -0
|
@@ -0,0 +1,1217 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh3-artifact-1",
|
|
3
|
+
"contractName": "BondingRegistry",
|
|
4
|
+
"sourceName": "contracts/registry/BondingRegistry.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [],
|
|
8
|
+
"stateMutability": "nonpayable",
|
|
9
|
+
"type": "constructor"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"inputs": [],
|
|
13
|
+
"name": "AlreadyRegistered",
|
|
14
|
+
"type": "error"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"inputs": [],
|
|
18
|
+
"name": "ArrayLengthMismatch",
|
|
19
|
+
"type": "error"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"inputs": [],
|
|
23
|
+
"name": "CiphernodeBanned",
|
|
24
|
+
"type": "error"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"inputs": [],
|
|
28
|
+
"name": "ExitInProgress",
|
|
29
|
+
"type": "error"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"inputs": [],
|
|
33
|
+
"name": "ExitNotReady",
|
|
34
|
+
"type": "error"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"inputs": [],
|
|
38
|
+
"name": "InsufficientBalance",
|
|
39
|
+
"type": "error"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"inputs": [],
|
|
43
|
+
"name": "InvalidAmount",
|
|
44
|
+
"type": "error"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"inputs": [],
|
|
48
|
+
"name": "InvalidConfiguration",
|
|
49
|
+
"type": "error"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"inputs": [],
|
|
53
|
+
"name": "InvalidInitialization",
|
|
54
|
+
"type": "error"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"inputs": [],
|
|
58
|
+
"name": "NoPendingDeregistration",
|
|
59
|
+
"type": "error"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"inputs": [],
|
|
63
|
+
"name": "NotInitializing",
|
|
64
|
+
"type": "error"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"inputs": [],
|
|
68
|
+
"name": "NotLicensed",
|
|
69
|
+
"type": "error"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"inputs": [],
|
|
73
|
+
"name": "NotRegistered",
|
|
74
|
+
"type": "error"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"inputs": [],
|
|
78
|
+
"name": "OnlyRewardDistributor",
|
|
79
|
+
"type": "error"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"inputs": [
|
|
83
|
+
{
|
|
84
|
+
"internalType": "address",
|
|
85
|
+
"name": "owner",
|
|
86
|
+
"type": "address"
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
"name": "OwnableInvalidOwner",
|
|
90
|
+
"type": "error"
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"inputs": [
|
|
94
|
+
{
|
|
95
|
+
"internalType": "address",
|
|
96
|
+
"name": "account",
|
|
97
|
+
"type": "address"
|
|
98
|
+
}
|
|
99
|
+
],
|
|
100
|
+
"name": "OwnableUnauthorizedAccount",
|
|
101
|
+
"type": "error"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"inputs": [
|
|
105
|
+
{
|
|
106
|
+
"internalType": "address",
|
|
107
|
+
"name": "token",
|
|
108
|
+
"type": "address"
|
|
109
|
+
}
|
|
110
|
+
],
|
|
111
|
+
"name": "SafeERC20FailedOperation",
|
|
112
|
+
"type": "error"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"inputs": [],
|
|
116
|
+
"name": "TimestampOverflow",
|
|
117
|
+
"type": "error"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"inputs": [],
|
|
121
|
+
"name": "Unauthorized",
|
|
122
|
+
"type": "error"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"inputs": [],
|
|
126
|
+
"name": "ZeroAddress",
|
|
127
|
+
"type": "error"
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"inputs": [],
|
|
131
|
+
"name": "ZeroAmount",
|
|
132
|
+
"type": "error"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"anonymous": false,
|
|
136
|
+
"inputs": [
|
|
137
|
+
{
|
|
138
|
+
"indexed": true,
|
|
139
|
+
"internalType": "address",
|
|
140
|
+
"name": "operator",
|
|
141
|
+
"type": "address"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"indexed": false,
|
|
145
|
+
"internalType": "uint256",
|
|
146
|
+
"name": "ticketAmount",
|
|
147
|
+
"type": "uint256"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"indexed": false,
|
|
151
|
+
"internalType": "uint256",
|
|
152
|
+
"name": "licenseAmount",
|
|
153
|
+
"type": "uint256"
|
|
154
|
+
}
|
|
155
|
+
],
|
|
156
|
+
"name": "AssetsClaimed",
|
|
157
|
+
"type": "event"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"anonymous": false,
|
|
161
|
+
"inputs": [
|
|
162
|
+
{
|
|
163
|
+
"indexed": true,
|
|
164
|
+
"internalType": "address",
|
|
165
|
+
"name": "operator",
|
|
166
|
+
"type": "address"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"indexed": false,
|
|
170
|
+
"internalType": "uint256",
|
|
171
|
+
"name": "ticketAmount",
|
|
172
|
+
"type": "uint256"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"indexed": false,
|
|
176
|
+
"internalType": "uint256",
|
|
177
|
+
"name": "licenseAmount",
|
|
178
|
+
"type": "uint256"
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
"indexed": false,
|
|
182
|
+
"internalType": "uint64",
|
|
183
|
+
"name": "unlockTimestamp",
|
|
184
|
+
"type": "uint64"
|
|
185
|
+
}
|
|
186
|
+
],
|
|
187
|
+
"name": "AssetsQueuedForExit",
|
|
188
|
+
"type": "event"
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"anonymous": false,
|
|
192
|
+
"inputs": [
|
|
193
|
+
{
|
|
194
|
+
"indexed": true,
|
|
195
|
+
"internalType": "address",
|
|
196
|
+
"name": "operator",
|
|
197
|
+
"type": "address"
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"indexed": false,
|
|
201
|
+
"internalType": "uint64",
|
|
202
|
+
"name": "unlockAt",
|
|
203
|
+
"type": "uint64"
|
|
204
|
+
}
|
|
205
|
+
],
|
|
206
|
+
"name": "CiphernodeDeregistrationRequested",
|
|
207
|
+
"type": "event"
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
"anonymous": false,
|
|
211
|
+
"inputs": [
|
|
212
|
+
{
|
|
213
|
+
"indexed": true,
|
|
214
|
+
"internalType": "bytes32",
|
|
215
|
+
"name": "parameter",
|
|
216
|
+
"type": "bytes32"
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
"indexed": false,
|
|
220
|
+
"internalType": "uint256",
|
|
221
|
+
"name": "oldValue",
|
|
222
|
+
"type": "uint256"
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
"indexed": false,
|
|
226
|
+
"internalType": "uint256",
|
|
227
|
+
"name": "newValue",
|
|
228
|
+
"type": "uint256"
|
|
229
|
+
}
|
|
230
|
+
],
|
|
231
|
+
"name": "ConfigurationUpdated",
|
|
232
|
+
"type": "event"
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
"anonymous": false,
|
|
236
|
+
"inputs": [
|
|
237
|
+
{
|
|
238
|
+
"indexed": false,
|
|
239
|
+
"internalType": "uint64",
|
|
240
|
+
"name": "version",
|
|
241
|
+
"type": "uint64"
|
|
242
|
+
}
|
|
243
|
+
],
|
|
244
|
+
"name": "Initialized",
|
|
245
|
+
"type": "event"
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"anonymous": false,
|
|
249
|
+
"inputs": [
|
|
250
|
+
{
|
|
251
|
+
"indexed": true,
|
|
252
|
+
"internalType": "address",
|
|
253
|
+
"name": "operator",
|
|
254
|
+
"type": "address"
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"indexed": false,
|
|
258
|
+
"internalType": "int256",
|
|
259
|
+
"name": "delta",
|
|
260
|
+
"type": "int256"
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
"indexed": false,
|
|
264
|
+
"internalType": "uint256",
|
|
265
|
+
"name": "newBond",
|
|
266
|
+
"type": "uint256"
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
"indexed": true,
|
|
270
|
+
"internalType": "bytes32",
|
|
271
|
+
"name": "reason",
|
|
272
|
+
"type": "bytes32"
|
|
273
|
+
}
|
|
274
|
+
],
|
|
275
|
+
"name": "LicenseBondUpdated",
|
|
276
|
+
"type": "event"
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"anonymous": false,
|
|
280
|
+
"inputs": [
|
|
281
|
+
{
|
|
282
|
+
"indexed": true,
|
|
283
|
+
"internalType": "address",
|
|
284
|
+
"name": "operator",
|
|
285
|
+
"type": "address"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"indexed": false,
|
|
289
|
+
"internalType": "bool",
|
|
290
|
+
"name": "active",
|
|
291
|
+
"type": "bool"
|
|
292
|
+
}
|
|
293
|
+
],
|
|
294
|
+
"name": "OperatorActivationChanged",
|
|
295
|
+
"type": "event"
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
"anonymous": false,
|
|
299
|
+
"inputs": [
|
|
300
|
+
{
|
|
301
|
+
"indexed": true,
|
|
302
|
+
"internalType": "address",
|
|
303
|
+
"name": "previousOwner",
|
|
304
|
+
"type": "address"
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
"indexed": true,
|
|
308
|
+
"internalType": "address",
|
|
309
|
+
"name": "newOwner",
|
|
310
|
+
"type": "address"
|
|
311
|
+
}
|
|
312
|
+
],
|
|
313
|
+
"name": "OwnershipTransferred",
|
|
314
|
+
"type": "event"
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
"anonymous": false,
|
|
318
|
+
"inputs": [
|
|
319
|
+
{
|
|
320
|
+
"indexed": true,
|
|
321
|
+
"internalType": "address",
|
|
322
|
+
"name": "operator",
|
|
323
|
+
"type": "address"
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
"indexed": false,
|
|
327
|
+
"internalType": "uint256",
|
|
328
|
+
"name": "ticketAmount",
|
|
329
|
+
"type": "uint256"
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
"indexed": false,
|
|
333
|
+
"internalType": "uint256",
|
|
334
|
+
"name": "licenseAmount",
|
|
335
|
+
"type": "uint256"
|
|
336
|
+
},
|
|
337
|
+
{
|
|
338
|
+
"indexed": false,
|
|
339
|
+
"internalType": "bool",
|
|
340
|
+
"name": "includedLockedAssets",
|
|
341
|
+
"type": "bool"
|
|
342
|
+
}
|
|
343
|
+
],
|
|
344
|
+
"name": "PendingAssetsSlashed",
|
|
345
|
+
"type": "event"
|
|
346
|
+
},
|
|
347
|
+
{
|
|
348
|
+
"anonymous": false,
|
|
349
|
+
"inputs": [
|
|
350
|
+
{
|
|
351
|
+
"indexed": true,
|
|
352
|
+
"internalType": "address",
|
|
353
|
+
"name": "to",
|
|
354
|
+
"type": "address"
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"indexed": false,
|
|
358
|
+
"internalType": "uint256",
|
|
359
|
+
"name": "ticketAmount",
|
|
360
|
+
"type": "uint256"
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
"indexed": false,
|
|
364
|
+
"internalType": "uint256",
|
|
365
|
+
"name": "licenseAmount",
|
|
366
|
+
"type": "uint256"
|
|
367
|
+
}
|
|
368
|
+
],
|
|
369
|
+
"name": "SlashedFundsWithdrawn",
|
|
370
|
+
"type": "event"
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
"anonymous": false,
|
|
374
|
+
"inputs": [
|
|
375
|
+
{
|
|
376
|
+
"indexed": true,
|
|
377
|
+
"internalType": "address",
|
|
378
|
+
"name": "operator",
|
|
379
|
+
"type": "address"
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
"indexed": false,
|
|
383
|
+
"internalType": "int256",
|
|
384
|
+
"name": "delta",
|
|
385
|
+
"type": "int256"
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"indexed": false,
|
|
389
|
+
"internalType": "uint256",
|
|
390
|
+
"name": "newBalance",
|
|
391
|
+
"type": "uint256"
|
|
392
|
+
},
|
|
393
|
+
{
|
|
394
|
+
"indexed": true,
|
|
395
|
+
"internalType": "bytes32",
|
|
396
|
+
"name": "reason",
|
|
397
|
+
"type": "bytes32"
|
|
398
|
+
}
|
|
399
|
+
],
|
|
400
|
+
"name": "TicketBalanceUpdated",
|
|
401
|
+
"type": "event"
|
|
402
|
+
},
|
|
403
|
+
{
|
|
404
|
+
"inputs": [
|
|
405
|
+
{
|
|
406
|
+
"internalType": "uint256",
|
|
407
|
+
"name": "amount",
|
|
408
|
+
"type": "uint256"
|
|
409
|
+
}
|
|
410
|
+
],
|
|
411
|
+
"name": "addTicketBalance",
|
|
412
|
+
"outputs": [],
|
|
413
|
+
"stateMutability": "nonpayable",
|
|
414
|
+
"type": "function"
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
"inputs": [
|
|
418
|
+
{
|
|
419
|
+
"internalType": "address",
|
|
420
|
+
"name": "operator",
|
|
421
|
+
"type": "address"
|
|
422
|
+
}
|
|
423
|
+
],
|
|
424
|
+
"name": "availableTickets",
|
|
425
|
+
"outputs": [
|
|
426
|
+
{
|
|
427
|
+
"internalType": "uint256",
|
|
428
|
+
"name": "",
|
|
429
|
+
"type": "uint256"
|
|
430
|
+
}
|
|
431
|
+
],
|
|
432
|
+
"stateMutability": "view",
|
|
433
|
+
"type": "function"
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
"inputs": [
|
|
437
|
+
{
|
|
438
|
+
"internalType": "uint256",
|
|
439
|
+
"name": "amount",
|
|
440
|
+
"type": "uint256"
|
|
441
|
+
}
|
|
442
|
+
],
|
|
443
|
+
"name": "bondLicense",
|
|
444
|
+
"outputs": [],
|
|
445
|
+
"stateMutability": "nonpayable",
|
|
446
|
+
"type": "function"
|
|
447
|
+
},
|
|
448
|
+
{
|
|
449
|
+
"inputs": [
|
|
450
|
+
{
|
|
451
|
+
"internalType": "uint256",
|
|
452
|
+
"name": "maxTicketAmount",
|
|
453
|
+
"type": "uint256"
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
"internalType": "uint256",
|
|
457
|
+
"name": "maxLicenseAmount",
|
|
458
|
+
"type": "uint256"
|
|
459
|
+
}
|
|
460
|
+
],
|
|
461
|
+
"name": "claimExits",
|
|
462
|
+
"outputs": [],
|
|
463
|
+
"stateMutability": "nonpayable",
|
|
464
|
+
"type": "function"
|
|
465
|
+
},
|
|
466
|
+
{
|
|
467
|
+
"inputs": [
|
|
468
|
+
{
|
|
469
|
+
"internalType": "uint256[]",
|
|
470
|
+
"name": "siblingNodes",
|
|
471
|
+
"type": "uint256[]"
|
|
472
|
+
}
|
|
473
|
+
],
|
|
474
|
+
"name": "deregisterOperator",
|
|
475
|
+
"outputs": [],
|
|
476
|
+
"stateMutability": "nonpayable",
|
|
477
|
+
"type": "function"
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
"inputs": [
|
|
481
|
+
{
|
|
482
|
+
"internalType": "contract IERC20",
|
|
483
|
+
"name": "rewardToken",
|
|
484
|
+
"type": "address"
|
|
485
|
+
},
|
|
486
|
+
{
|
|
487
|
+
"internalType": "address[]",
|
|
488
|
+
"name": "recipients",
|
|
489
|
+
"type": "address[]"
|
|
490
|
+
},
|
|
491
|
+
{
|
|
492
|
+
"internalType": "uint256[]",
|
|
493
|
+
"name": "amounts",
|
|
494
|
+
"type": "uint256[]"
|
|
495
|
+
}
|
|
496
|
+
],
|
|
497
|
+
"name": "distributeRewards",
|
|
498
|
+
"outputs": [],
|
|
499
|
+
"stateMutability": "nonpayable",
|
|
500
|
+
"type": "function"
|
|
501
|
+
},
|
|
502
|
+
{
|
|
503
|
+
"inputs": [],
|
|
504
|
+
"name": "exitDelay",
|
|
505
|
+
"outputs": [
|
|
506
|
+
{
|
|
507
|
+
"internalType": "uint64",
|
|
508
|
+
"name": "",
|
|
509
|
+
"type": "uint64"
|
|
510
|
+
}
|
|
511
|
+
],
|
|
512
|
+
"stateMutability": "view",
|
|
513
|
+
"type": "function"
|
|
514
|
+
},
|
|
515
|
+
{
|
|
516
|
+
"inputs": [
|
|
517
|
+
{
|
|
518
|
+
"internalType": "address",
|
|
519
|
+
"name": "operator",
|
|
520
|
+
"type": "address"
|
|
521
|
+
}
|
|
522
|
+
],
|
|
523
|
+
"name": "getLicenseBond",
|
|
524
|
+
"outputs": [
|
|
525
|
+
{
|
|
526
|
+
"internalType": "uint256",
|
|
527
|
+
"name": "",
|
|
528
|
+
"type": "uint256"
|
|
529
|
+
}
|
|
530
|
+
],
|
|
531
|
+
"stateMutability": "view",
|
|
532
|
+
"type": "function"
|
|
533
|
+
},
|
|
534
|
+
{
|
|
535
|
+
"inputs": [],
|
|
536
|
+
"name": "getLicenseToken",
|
|
537
|
+
"outputs": [
|
|
538
|
+
{
|
|
539
|
+
"internalType": "address",
|
|
540
|
+
"name": "",
|
|
541
|
+
"type": "address"
|
|
542
|
+
}
|
|
543
|
+
],
|
|
544
|
+
"stateMutability": "view",
|
|
545
|
+
"type": "function"
|
|
546
|
+
},
|
|
547
|
+
{
|
|
548
|
+
"inputs": [
|
|
549
|
+
{
|
|
550
|
+
"internalType": "address",
|
|
551
|
+
"name": "operator",
|
|
552
|
+
"type": "address"
|
|
553
|
+
}
|
|
554
|
+
],
|
|
555
|
+
"name": "getTicketBalance",
|
|
556
|
+
"outputs": [
|
|
557
|
+
{
|
|
558
|
+
"internalType": "uint256",
|
|
559
|
+
"name": "",
|
|
560
|
+
"type": "uint256"
|
|
561
|
+
}
|
|
562
|
+
],
|
|
563
|
+
"stateMutability": "view",
|
|
564
|
+
"type": "function"
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
"inputs": [
|
|
568
|
+
{
|
|
569
|
+
"internalType": "address",
|
|
570
|
+
"name": "operator",
|
|
571
|
+
"type": "address"
|
|
572
|
+
},
|
|
573
|
+
{
|
|
574
|
+
"internalType": "uint256",
|
|
575
|
+
"name": "blockNumber",
|
|
576
|
+
"type": "uint256"
|
|
577
|
+
}
|
|
578
|
+
],
|
|
579
|
+
"name": "getTicketBalanceAtBlock",
|
|
580
|
+
"outputs": [
|
|
581
|
+
{
|
|
582
|
+
"internalType": "uint256",
|
|
583
|
+
"name": "",
|
|
584
|
+
"type": "uint256"
|
|
585
|
+
}
|
|
586
|
+
],
|
|
587
|
+
"stateMutability": "view",
|
|
588
|
+
"type": "function"
|
|
589
|
+
},
|
|
590
|
+
{
|
|
591
|
+
"inputs": [],
|
|
592
|
+
"name": "getTicketToken",
|
|
593
|
+
"outputs": [
|
|
594
|
+
{
|
|
595
|
+
"internalType": "address",
|
|
596
|
+
"name": "",
|
|
597
|
+
"type": "address"
|
|
598
|
+
}
|
|
599
|
+
],
|
|
600
|
+
"stateMutability": "view",
|
|
601
|
+
"type": "function"
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
"inputs": [
|
|
605
|
+
{
|
|
606
|
+
"internalType": "address",
|
|
607
|
+
"name": "operator",
|
|
608
|
+
"type": "address"
|
|
609
|
+
}
|
|
610
|
+
],
|
|
611
|
+
"name": "hasExitInProgress",
|
|
612
|
+
"outputs": [
|
|
613
|
+
{
|
|
614
|
+
"internalType": "bool",
|
|
615
|
+
"name": "",
|
|
616
|
+
"type": "bool"
|
|
617
|
+
}
|
|
618
|
+
],
|
|
619
|
+
"stateMutability": "view",
|
|
620
|
+
"type": "function"
|
|
621
|
+
},
|
|
622
|
+
{
|
|
623
|
+
"inputs": [
|
|
624
|
+
{
|
|
625
|
+
"internalType": "address",
|
|
626
|
+
"name": "_owner",
|
|
627
|
+
"type": "address"
|
|
628
|
+
},
|
|
629
|
+
{
|
|
630
|
+
"internalType": "contract EnclaveTicketToken",
|
|
631
|
+
"name": "_ticketToken",
|
|
632
|
+
"type": "address"
|
|
633
|
+
},
|
|
634
|
+
{
|
|
635
|
+
"internalType": "contract IERC20",
|
|
636
|
+
"name": "_licenseToken",
|
|
637
|
+
"type": "address"
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
"internalType": "contract ICiphernodeRegistry",
|
|
641
|
+
"name": "_registry",
|
|
642
|
+
"type": "address"
|
|
643
|
+
},
|
|
644
|
+
{
|
|
645
|
+
"internalType": "address",
|
|
646
|
+
"name": "_slashedFundsTreasury",
|
|
647
|
+
"type": "address"
|
|
648
|
+
},
|
|
649
|
+
{
|
|
650
|
+
"internalType": "uint256",
|
|
651
|
+
"name": "_ticketPrice",
|
|
652
|
+
"type": "uint256"
|
|
653
|
+
},
|
|
654
|
+
{
|
|
655
|
+
"internalType": "uint256",
|
|
656
|
+
"name": "_licenseRequiredBond",
|
|
657
|
+
"type": "uint256"
|
|
658
|
+
},
|
|
659
|
+
{
|
|
660
|
+
"internalType": "uint256",
|
|
661
|
+
"name": "_minTicketBalance",
|
|
662
|
+
"type": "uint256"
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
"internalType": "uint64",
|
|
666
|
+
"name": "_exitDelay",
|
|
667
|
+
"type": "uint64"
|
|
668
|
+
}
|
|
669
|
+
],
|
|
670
|
+
"name": "initialize",
|
|
671
|
+
"outputs": [],
|
|
672
|
+
"stateMutability": "nonpayable",
|
|
673
|
+
"type": "function"
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
"inputs": [
|
|
677
|
+
{
|
|
678
|
+
"internalType": "address",
|
|
679
|
+
"name": "operator",
|
|
680
|
+
"type": "address"
|
|
681
|
+
}
|
|
682
|
+
],
|
|
683
|
+
"name": "isActive",
|
|
684
|
+
"outputs": [
|
|
685
|
+
{
|
|
686
|
+
"internalType": "bool",
|
|
687
|
+
"name": "",
|
|
688
|
+
"type": "bool"
|
|
689
|
+
}
|
|
690
|
+
],
|
|
691
|
+
"stateMutability": "view",
|
|
692
|
+
"type": "function"
|
|
693
|
+
},
|
|
694
|
+
{
|
|
695
|
+
"inputs": [
|
|
696
|
+
{
|
|
697
|
+
"internalType": "address",
|
|
698
|
+
"name": "operator",
|
|
699
|
+
"type": "address"
|
|
700
|
+
}
|
|
701
|
+
],
|
|
702
|
+
"name": "isLicensed",
|
|
703
|
+
"outputs": [
|
|
704
|
+
{
|
|
705
|
+
"internalType": "bool",
|
|
706
|
+
"name": "",
|
|
707
|
+
"type": "bool"
|
|
708
|
+
}
|
|
709
|
+
],
|
|
710
|
+
"stateMutability": "view",
|
|
711
|
+
"type": "function"
|
|
712
|
+
},
|
|
713
|
+
{
|
|
714
|
+
"inputs": [
|
|
715
|
+
{
|
|
716
|
+
"internalType": "address",
|
|
717
|
+
"name": "operator",
|
|
718
|
+
"type": "address"
|
|
719
|
+
}
|
|
720
|
+
],
|
|
721
|
+
"name": "isRegistered",
|
|
722
|
+
"outputs": [
|
|
723
|
+
{
|
|
724
|
+
"internalType": "bool",
|
|
725
|
+
"name": "",
|
|
726
|
+
"type": "bool"
|
|
727
|
+
}
|
|
728
|
+
],
|
|
729
|
+
"stateMutability": "view",
|
|
730
|
+
"type": "function"
|
|
731
|
+
},
|
|
732
|
+
{
|
|
733
|
+
"inputs": [],
|
|
734
|
+
"name": "licenseActiveBps",
|
|
735
|
+
"outputs": [
|
|
736
|
+
{
|
|
737
|
+
"internalType": "uint256",
|
|
738
|
+
"name": "",
|
|
739
|
+
"type": "uint256"
|
|
740
|
+
}
|
|
741
|
+
],
|
|
742
|
+
"stateMutability": "view",
|
|
743
|
+
"type": "function"
|
|
744
|
+
},
|
|
745
|
+
{
|
|
746
|
+
"inputs": [],
|
|
747
|
+
"name": "licenseRequiredBond",
|
|
748
|
+
"outputs": [
|
|
749
|
+
{
|
|
750
|
+
"internalType": "uint256",
|
|
751
|
+
"name": "",
|
|
752
|
+
"type": "uint256"
|
|
753
|
+
}
|
|
754
|
+
],
|
|
755
|
+
"stateMutability": "view",
|
|
756
|
+
"type": "function"
|
|
757
|
+
},
|
|
758
|
+
{
|
|
759
|
+
"inputs": [],
|
|
760
|
+
"name": "licenseToken",
|
|
761
|
+
"outputs": [
|
|
762
|
+
{
|
|
763
|
+
"internalType": "contract IERC20",
|
|
764
|
+
"name": "",
|
|
765
|
+
"type": "address"
|
|
766
|
+
}
|
|
767
|
+
],
|
|
768
|
+
"stateMutability": "view",
|
|
769
|
+
"type": "function"
|
|
770
|
+
},
|
|
771
|
+
{
|
|
772
|
+
"inputs": [],
|
|
773
|
+
"name": "minTicketBalance",
|
|
774
|
+
"outputs": [
|
|
775
|
+
{
|
|
776
|
+
"internalType": "uint256",
|
|
777
|
+
"name": "",
|
|
778
|
+
"type": "uint256"
|
|
779
|
+
}
|
|
780
|
+
],
|
|
781
|
+
"stateMutability": "view",
|
|
782
|
+
"type": "function"
|
|
783
|
+
},
|
|
784
|
+
{
|
|
785
|
+
"inputs": [],
|
|
786
|
+
"name": "owner",
|
|
787
|
+
"outputs": [
|
|
788
|
+
{
|
|
789
|
+
"internalType": "address",
|
|
790
|
+
"name": "",
|
|
791
|
+
"type": "address"
|
|
792
|
+
}
|
|
793
|
+
],
|
|
794
|
+
"stateMutability": "view",
|
|
795
|
+
"type": "function"
|
|
796
|
+
},
|
|
797
|
+
{
|
|
798
|
+
"inputs": [
|
|
799
|
+
{
|
|
800
|
+
"internalType": "address",
|
|
801
|
+
"name": "operator",
|
|
802
|
+
"type": "address"
|
|
803
|
+
}
|
|
804
|
+
],
|
|
805
|
+
"name": "pendingExits",
|
|
806
|
+
"outputs": [
|
|
807
|
+
{
|
|
808
|
+
"internalType": "uint256",
|
|
809
|
+
"name": "ticket",
|
|
810
|
+
"type": "uint256"
|
|
811
|
+
},
|
|
812
|
+
{
|
|
813
|
+
"internalType": "uint256",
|
|
814
|
+
"name": "license",
|
|
815
|
+
"type": "uint256"
|
|
816
|
+
}
|
|
817
|
+
],
|
|
818
|
+
"stateMutability": "view",
|
|
819
|
+
"type": "function"
|
|
820
|
+
},
|
|
821
|
+
{
|
|
822
|
+
"inputs": [
|
|
823
|
+
{
|
|
824
|
+
"internalType": "address",
|
|
825
|
+
"name": "operator",
|
|
826
|
+
"type": "address"
|
|
827
|
+
}
|
|
828
|
+
],
|
|
829
|
+
"name": "previewClaimable",
|
|
830
|
+
"outputs": [
|
|
831
|
+
{
|
|
832
|
+
"internalType": "uint256",
|
|
833
|
+
"name": "ticket",
|
|
834
|
+
"type": "uint256"
|
|
835
|
+
},
|
|
836
|
+
{
|
|
837
|
+
"internalType": "uint256",
|
|
838
|
+
"name": "license",
|
|
839
|
+
"type": "uint256"
|
|
840
|
+
}
|
|
841
|
+
],
|
|
842
|
+
"stateMutability": "view",
|
|
843
|
+
"type": "function"
|
|
844
|
+
},
|
|
845
|
+
{
|
|
846
|
+
"inputs": [],
|
|
847
|
+
"name": "registerOperator",
|
|
848
|
+
"outputs": [],
|
|
849
|
+
"stateMutability": "nonpayable",
|
|
850
|
+
"type": "function"
|
|
851
|
+
},
|
|
852
|
+
{
|
|
853
|
+
"inputs": [],
|
|
854
|
+
"name": "registry",
|
|
855
|
+
"outputs": [
|
|
856
|
+
{
|
|
857
|
+
"internalType": "contract ICiphernodeRegistry",
|
|
858
|
+
"name": "",
|
|
859
|
+
"type": "address"
|
|
860
|
+
}
|
|
861
|
+
],
|
|
862
|
+
"stateMutability": "view",
|
|
863
|
+
"type": "function"
|
|
864
|
+
},
|
|
865
|
+
{
|
|
866
|
+
"inputs": [
|
|
867
|
+
{
|
|
868
|
+
"internalType": "uint256",
|
|
869
|
+
"name": "amount",
|
|
870
|
+
"type": "uint256"
|
|
871
|
+
}
|
|
872
|
+
],
|
|
873
|
+
"name": "removeTicketBalance",
|
|
874
|
+
"outputs": [],
|
|
875
|
+
"stateMutability": "nonpayable",
|
|
876
|
+
"type": "function"
|
|
877
|
+
},
|
|
878
|
+
{
|
|
879
|
+
"inputs": [],
|
|
880
|
+
"name": "renounceOwnership",
|
|
881
|
+
"outputs": [],
|
|
882
|
+
"stateMutability": "nonpayable",
|
|
883
|
+
"type": "function"
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
"inputs": [],
|
|
887
|
+
"name": "rewardDistributor",
|
|
888
|
+
"outputs": [
|
|
889
|
+
{
|
|
890
|
+
"internalType": "address",
|
|
891
|
+
"name": "",
|
|
892
|
+
"type": "address"
|
|
893
|
+
}
|
|
894
|
+
],
|
|
895
|
+
"stateMutability": "view",
|
|
896
|
+
"type": "function"
|
|
897
|
+
},
|
|
898
|
+
{
|
|
899
|
+
"inputs": [
|
|
900
|
+
{
|
|
901
|
+
"internalType": "uint64",
|
|
902
|
+
"name": "newExitDelay",
|
|
903
|
+
"type": "uint64"
|
|
904
|
+
}
|
|
905
|
+
],
|
|
906
|
+
"name": "setExitDelay",
|
|
907
|
+
"outputs": [],
|
|
908
|
+
"stateMutability": "nonpayable",
|
|
909
|
+
"type": "function"
|
|
910
|
+
},
|
|
911
|
+
{
|
|
912
|
+
"inputs": [
|
|
913
|
+
{
|
|
914
|
+
"internalType": "uint256",
|
|
915
|
+
"name": "newBps",
|
|
916
|
+
"type": "uint256"
|
|
917
|
+
}
|
|
918
|
+
],
|
|
919
|
+
"name": "setLicenseActiveBps",
|
|
920
|
+
"outputs": [],
|
|
921
|
+
"stateMutability": "nonpayable",
|
|
922
|
+
"type": "function"
|
|
923
|
+
},
|
|
924
|
+
{
|
|
925
|
+
"inputs": [
|
|
926
|
+
{
|
|
927
|
+
"internalType": "uint256",
|
|
928
|
+
"name": "newLicenseRequiredBond",
|
|
929
|
+
"type": "uint256"
|
|
930
|
+
}
|
|
931
|
+
],
|
|
932
|
+
"name": "setLicenseRequiredBond",
|
|
933
|
+
"outputs": [],
|
|
934
|
+
"stateMutability": "nonpayable",
|
|
935
|
+
"type": "function"
|
|
936
|
+
},
|
|
937
|
+
{
|
|
938
|
+
"inputs": [
|
|
939
|
+
{
|
|
940
|
+
"internalType": "contract IERC20",
|
|
941
|
+
"name": "newLicenseToken",
|
|
942
|
+
"type": "address"
|
|
943
|
+
}
|
|
944
|
+
],
|
|
945
|
+
"name": "setLicenseToken",
|
|
946
|
+
"outputs": [],
|
|
947
|
+
"stateMutability": "nonpayable",
|
|
948
|
+
"type": "function"
|
|
949
|
+
},
|
|
950
|
+
{
|
|
951
|
+
"inputs": [
|
|
952
|
+
{
|
|
953
|
+
"internalType": "uint256",
|
|
954
|
+
"name": "newMinTicketBalance",
|
|
955
|
+
"type": "uint256"
|
|
956
|
+
}
|
|
957
|
+
],
|
|
958
|
+
"name": "setMinTicketBalance",
|
|
959
|
+
"outputs": [],
|
|
960
|
+
"stateMutability": "nonpayable",
|
|
961
|
+
"type": "function"
|
|
962
|
+
},
|
|
963
|
+
{
|
|
964
|
+
"inputs": [
|
|
965
|
+
{
|
|
966
|
+
"internalType": "contract ICiphernodeRegistry",
|
|
967
|
+
"name": "newRegistry",
|
|
968
|
+
"type": "address"
|
|
969
|
+
}
|
|
970
|
+
],
|
|
971
|
+
"name": "setRegistry",
|
|
972
|
+
"outputs": [],
|
|
973
|
+
"stateMutability": "nonpayable",
|
|
974
|
+
"type": "function"
|
|
975
|
+
},
|
|
976
|
+
{
|
|
977
|
+
"inputs": [
|
|
978
|
+
{
|
|
979
|
+
"internalType": "address",
|
|
980
|
+
"name": "newRewardDistributor",
|
|
981
|
+
"type": "address"
|
|
982
|
+
}
|
|
983
|
+
],
|
|
984
|
+
"name": "setRewardDistributor",
|
|
985
|
+
"outputs": [],
|
|
986
|
+
"stateMutability": "nonpayable",
|
|
987
|
+
"type": "function"
|
|
988
|
+
},
|
|
989
|
+
{
|
|
990
|
+
"inputs": [
|
|
991
|
+
{
|
|
992
|
+
"internalType": "address",
|
|
993
|
+
"name": "newSlashedFundsTreasury",
|
|
994
|
+
"type": "address"
|
|
995
|
+
}
|
|
996
|
+
],
|
|
997
|
+
"name": "setSlashedFundsTreasury",
|
|
998
|
+
"outputs": [],
|
|
999
|
+
"stateMutability": "nonpayable",
|
|
1000
|
+
"type": "function"
|
|
1001
|
+
},
|
|
1002
|
+
{
|
|
1003
|
+
"inputs": [
|
|
1004
|
+
{
|
|
1005
|
+
"internalType": "address",
|
|
1006
|
+
"name": "newSlashingManager",
|
|
1007
|
+
"type": "address"
|
|
1008
|
+
}
|
|
1009
|
+
],
|
|
1010
|
+
"name": "setSlashingManager",
|
|
1011
|
+
"outputs": [],
|
|
1012
|
+
"stateMutability": "nonpayable",
|
|
1013
|
+
"type": "function"
|
|
1014
|
+
},
|
|
1015
|
+
{
|
|
1016
|
+
"inputs": [
|
|
1017
|
+
{
|
|
1018
|
+
"internalType": "uint256",
|
|
1019
|
+
"name": "newTicketPrice",
|
|
1020
|
+
"type": "uint256"
|
|
1021
|
+
}
|
|
1022
|
+
],
|
|
1023
|
+
"name": "setTicketPrice",
|
|
1024
|
+
"outputs": [],
|
|
1025
|
+
"stateMutability": "nonpayable",
|
|
1026
|
+
"type": "function"
|
|
1027
|
+
},
|
|
1028
|
+
{
|
|
1029
|
+
"inputs": [
|
|
1030
|
+
{
|
|
1031
|
+
"internalType": "contract EnclaveTicketToken",
|
|
1032
|
+
"name": "newTicketToken",
|
|
1033
|
+
"type": "address"
|
|
1034
|
+
}
|
|
1035
|
+
],
|
|
1036
|
+
"name": "setTicketToken",
|
|
1037
|
+
"outputs": [],
|
|
1038
|
+
"stateMutability": "nonpayable",
|
|
1039
|
+
"type": "function"
|
|
1040
|
+
},
|
|
1041
|
+
{
|
|
1042
|
+
"inputs": [
|
|
1043
|
+
{
|
|
1044
|
+
"internalType": "address",
|
|
1045
|
+
"name": "operator",
|
|
1046
|
+
"type": "address"
|
|
1047
|
+
},
|
|
1048
|
+
{
|
|
1049
|
+
"internalType": "uint256",
|
|
1050
|
+
"name": "requestedSlashAmount",
|
|
1051
|
+
"type": "uint256"
|
|
1052
|
+
},
|
|
1053
|
+
{
|
|
1054
|
+
"internalType": "bytes32",
|
|
1055
|
+
"name": "slashReason",
|
|
1056
|
+
"type": "bytes32"
|
|
1057
|
+
}
|
|
1058
|
+
],
|
|
1059
|
+
"name": "slashLicenseBond",
|
|
1060
|
+
"outputs": [],
|
|
1061
|
+
"stateMutability": "nonpayable",
|
|
1062
|
+
"type": "function"
|
|
1063
|
+
},
|
|
1064
|
+
{
|
|
1065
|
+
"inputs": [
|
|
1066
|
+
{
|
|
1067
|
+
"internalType": "address",
|
|
1068
|
+
"name": "operator",
|
|
1069
|
+
"type": "address"
|
|
1070
|
+
},
|
|
1071
|
+
{
|
|
1072
|
+
"internalType": "uint256",
|
|
1073
|
+
"name": "requestedSlashAmount",
|
|
1074
|
+
"type": "uint256"
|
|
1075
|
+
},
|
|
1076
|
+
{
|
|
1077
|
+
"internalType": "bytes32",
|
|
1078
|
+
"name": "slashReason",
|
|
1079
|
+
"type": "bytes32"
|
|
1080
|
+
}
|
|
1081
|
+
],
|
|
1082
|
+
"name": "slashTicketBalance",
|
|
1083
|
+
"outputs": [],
|
|
1084
|
+
"stateMutability": "nonpayable",
|
|
1085
|
+
"type": "function"
|
|
1086
|
+
},
|
|
1087
|
+
{
|
|
1088
|
+
"inputs": [],
|
|
1089
|
+
"name": "slashedFundsTreasury",
|
|
1090
|
+
"outputs": [
|
|
1091
|
+
{
|
|
1092
|
+
"internalType": "address",
|
|
1093
|
+
"name": "",
|
|
1094
|
+
"type": "address"
|
|
1095
|
+
}
|
|
1096
|
+
],
|
|
1097
|
+
"stateMutability": "view",
|
|
1098
|
+
"type": "function"
|
|
1099
|
+
},
|
|
1100
|
+
{
|
|
1101
|
+
"inputs": [],
|
|
1102
|
+
"name": "slashedLicenseBond",
|
|
1103
|
+
"outputs": [
|
|
1104
|
+
{
|
|
1105
|
+
"internalType": "uint256",
|
|
1106
|
+
"name": "",
|
|
1107
|
+
"type": "uint256"
|
|
1108
|
+
}
|
|
1109
|
+
],
|
|
1110
|
+
"stateMutability": "view",
|
|
1111
|
+
"type": "function"
|
|
1112
|
+
},
|
|
1113
|
+
{
|
|
1114
|
+
"inputs": [],
|
|
1115
|
+
"name": "slashedTicketBalance",
|
|
1116
|
+
"outputs": [
|
|
1117
|
+
{
|
|
1118
|
+
"internalType": "uint256",
|
|
1119
|
+
"name": "",
|
|
1120
|
+
"type": "uint256"
|
|
1121
|
+
}
|
|
1122
|
+
],
|
|
1123
|
+
"stateMutability": "view",
|
|
1124
|
+
"type": "function"
|
|
1125
|
+
},
|
|
1126
|
+
{
|
|
1127
|
+
"inputs": [],
|
|
1128
|
+
"name": "slashingManager",
|
|
1129
|
+
"outputs": [
|
|
1130
|
+
{
|
|
1131
|
+
"internalType": "address",
|
|
1132
|
+
"name": "",
|
|
1133
|
+
"type": "address"
|
|
1134
|
+
}
|
|
1135
|
+
],
|
|
1136
|
+
"stateMutability": "view",
|
|
1137
|
+
"type": "function"
|
|
1138
|
+
},
|
|
1139
|
+
{
|
|
1140
|
+
"inputs": [],
|
|
1141
|
+
"name": "ticketPrice",
|
|
1142
|
+
"outputs": [
|
|
1143
|
+
{
|
|
1144
|
+
"internalType": "uint256",
|
|
1145
|
+
"name": "",
|
|
1146
|
+
"type": "uint256"
|
|
1147
|
+
}
|
|
1148
|
+
],
|
|
1149
|
+
"stateMutability": "view",
|
|
1150
|
+
"type": "function"
|
|
1151
|
+
},
|
|
1152
|
+
{
|
|
1153
|
+
"inputs": [],
|
|
1154
|
+
"name": "ticketToken",
|
|
1155
|
+
"outputs": [
|
|
1156
|
+
{
|
|
1157
|
+
"internalType": "contract EnclaveTicketToken",
|
|
1158
|
+
"name": "",
|
|
1159
|
+
"type": "address"
|
|
1160
|
+
}
|
|
1161
|
+
],
|
|
1162
|
+
"stateMutability": "view",
|
|
1163
|
+
"type": "function"
|
|
1164
|
+
},
|
|
1165
|
+
{
|
|
1166
|
+
"inputs": [
|
|
1167
|
+
{
|
|
1168
|
+
"internalType": "address",
|
|
1169
|
+
"name": "newOwner",
|
|
1170
|
+
"type": "address"
|
|
1171
|
+
}
|
|
1172
|
+
],
|
|
1173
|
+
"name": "transferOwnership",
|
|
1174
|
+
"outputs": [],
|
|
1175
|
+
"stateMutability": "nonpayable",
|
|
1176
|
+
"type": "function"
|
|
1177
|
+
},
|
|
1178
|
+
{
|
|
1179
|
+
"inputs": [
|
|
1180
|
+
{
|
|
1181
|
+
"internalType": "uint256",
|
|
1182
|
+
"name": "amount",
|
|
1183
|
+
"type": "uint256"
|
|
1184
|
+
}
|
|
1185
|
+
],
|
|
1186
|
+
"name": "unbondLicense",
|
|
1187
|
+
"outputs": [],
|
|
1188
|
+
"stateMutability": "nonpayable",
|
|
1189
|
+
"type": "function"
|
|
1190
|
+
},
|
|
1191
|
+
{
|
|
1192
|
+
"inputs": [
|
|
1193
|
+
{
|
|
1194
|
+
"internalType": "uint256",
|
|
1195
|
+
"name": "ticketAmount",
|
|
1196
|
+
"type": "uint256"
|
|
1197
|
+
},
|
|
1198
|
+
{
|
|
1199
|
+
"internalType": "uint256",
|
|
1200
|
+
"name": "licenseAmount",
|
|
1201
|
+
"type": "uint256"
|
|
1202
|
+
}
|
|
1203
|
+
],
|
|
1204
|
+
"name": "withdrawSlashedFunds",
|
|
1205
|
+
"outputs": [],
|
|
1206
|
+
"stateMutability": "nonpayable",
|
|
1207
|
+
"type": "function"
|
|
1208
|
+
}
|
|
1209
|
+
],
|
|
1210
|
+
"bytecode": "0x6080604052348015600e575f5ffd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6134fb806100d65f395ff3fe608060405234801561000f575f5ffd5b5060043610610330575f3560e01c80638e05aaae116101b3578063b7e833e0116100f3578063cca3a5011161009e578063dd8c818e11610079578063dd8c818e14610745578063e5da378f14610758578063e8341e891461076b578063f2fde38b14610774575f5ffd5b8063cca3a5011461070d578063d32759ed14610720578063d5ed4d5a14610733575f5ffd5b8063c3c5a547116100ce578063c3c5a547146106b2578063c43b1f34146106e7578063c9ca1acc146106fa575f5ffd5b8063b7e833e014610683578063bb03bd711461068c578063bff232c11461069f575f5ffd5b80639f8dfddd1161015e578063a91ee0dc11610139578063a91ee0dc14610622578063acc2166a14610635578063ada332dd14610648578063b2f3f6691461065b575f5ffd5b80639f8dfddd146105e9578063a1809b95146105fc578063a542c2a41461060f575f5ffd5b80638f9b1d871161018e5780638f9b1d87146105885780639d7555de146105915780639f8a13d7146105a4575f5ffd5b80638e05aaae1461054f5780638e5ce3ad146105625780638e9ddc0314610575575f5ffd5b8063671b93071161027e5780637333fa82116102295780637b103999116102045780637b103999146104e85780637c79a9da146104fb5780638450e44e1461050c5780638da5cb5b1461051f575f5ffd5b80637333fa82146104bc578063752c36c0146104cf578063781545b3146104d8575f5ffd5b806370f868a61161025957806370f868a61461048e578063715018a6146104a15780637264f3f2146104a9575f5ffd5b8063671b9307146104405780636d3c18d3146104685780636ecfef9a1461047b575f5ffd5b80632c98fd3b116102de5780634cabdd3d116102b95780634cabdd3d146103ef57806351ec538214610402578063561df99e1461042d575f5ffd5b80632c98fd3b146103c05780632e8d9930146103c9578063450e9dec146103dc575f5ffd5b806319fb279a1161030e57806319fb279a14610378578063283886301461038b5780632acde098146103b8575f5ffd5b80630691bdcf146103345780631209b1f6146103495780631598165014610365575b5f5ffd5b6103476103423660046130ff565b610787565b005b61035260065481565b6040519081526020015b60405180910390f35b61034761037336600461313e565b610b23565b61034761038636600461313e565b610bb3565b60095461039f9067ffffffffffffffff1681565b60405167ffffffffffffffff909116815260200161035c565b610347610e7b565b61035260085481565b6103476103d736600461313e565b6110e4565b6103476103ea366004613169565b61117a565b6103476103fd366004613184565b6111a3565b600154610415906001600160a01b031681565b6040516001600160a01b03909116815260200161035c565b61034761043b366004613169565b611412565b61035261044e366004613169565b6001600160a01b03165f908152600b602052604090205490565b610347610476366004613169565b611463565b610352610489366004613169565b61148d565b61034761049c36600461313e565b61150f565b610347611577565b6103476104b73660046131b6565b61158a565b6103476104ca3660046131f2565b6116d5565b61035260075481565b5f546001600160a01b0316610415565b600254610415906001600160a01b031681565b6001546001600160a01b0316610415565b61034761051a366004613289565b611870565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b0316610415565b61034761055d36600461313e565b6118f8565b600354610415906001600160a01b031681565b610347610583366004613184565b611ae8565b610352600a5481565b61034761059f36600461313e565b611c3d565b6105d96105b2366004613169565b6001600160a01b03165f908152600b6020526040902060010154600160501b900460ff1690565b604051901515815260200161035c565b6103476105f73660046131b6565b611e88565b61034761060a366004613169565b611f4d565b6105d961061d366004613169565b611f77565b610347610630366004613169565b611fa3565b600454610415906001600160a01b031681565b61034761065636600461313e565b611fcd565b61066e610669366004613169565b612157565b6040805192835260208301919091520161035c565b610352600c5481565b61035261069a3660046132a2565b61216d565b6103476106ad366004613169565b6121e7565b6105d96106c0366004613169565b6001600160a01b03165f908152600b6020526040902060010154600160401b900460ff1690565b6103476106f536600461313e565b612211565b61066e610708366004613169565b612299565b600554610415906001600160a01b031681565b6105d961072e366004613169565b6122a6565b5f54610415906001600160a01b031681565b6103476107533660046132cc565b61233a565b610352610766366004613169565b61247a565b610352600d5481565b610347610782366004613169565b6124e6565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b909304909316151560808201529161080e5750806020015167ffffffffffffffff1642105b1561082c5760405163376d91e160e21b815260040160405180910390fd5b335f908152600b602052604090206001810154600160401b900460ff166108665760405163aba4733960e01b815260040160405180910390fd5b60018101805469ffff00000000000000001916600160481b1790556009546108989067ffffffffffffffff1642613362565b60018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790555f80546040516370a0823160e01b81523360048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610902573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109269190613382565b825490915081156109e7575f5460405163216f226360e21b8152336004820152602481018490526001600160a01b03909116906385bc898c906044015f604051808303815f87803b158015610979575f5ffd5b505af115801561098b573d5f5f3e3d5ffd5b5050505067574954484452415760c01b336001600160a01b03167f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e846109d090613399565b604080519182525f60208301520160405180910390a35b8015610a3c575f83556515539093d39160d21b337f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6610a2584613399565b604080519182525f60208301520160405180910390a35b81151580610a4957508015155b15610a6b57600954610a6b90600e90339067ffffffffffffffff168585612528565b60025460405163a04e606560e01b81526001600160a01b039091169063a04e606590610a9f9033908b908b906004016133b3565b5f604051808303815f87803b158015610ab6575f5ffd5b505af1158015610ac8573d5f5f3e3d5ffd5b50505050600183015460405167ffffffffffffffff909116815233907f55278ae09e344fb61a9a1d094010b3ce004a7eacca9b11e10f0f119d03f1f38f9060200160405180910390a2610b1a336126ec565b50505050505050565b610b2b612839565b805f03610b4b5760405163c52a9bd360e01b815260040160405180910390fd5b600680549082905560408051828152602081018490527f7469636b65745072696365000000000000000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a91015b60405180910390a25050565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291610c3a5750806020015167ffffffffffffffff1642105b15610c585760405163376d91e160e21b815260040160405180910390fd5b825f03610c7857604051631f2a200560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff16610cb15760405163aba4733960e01b815260040160405180910390fd5b5f546040516370a0823160e01b815233600482015284916001600160a01b0316906370a0823190602401602060405180830381865afa158015610cf6573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d1a9190613382565b1015610d3957604051631e9acf1760e31b815260040160405180910390fd5b5f5460405163216f226360e21b8152336004820152602481018590526001600160a01b03909116906385bc898c906044015f604051808303815f87803b158015610d81575f5ffd5b505af1158015610d93573d5f5f3e3d5ffd5b5050600954610db39250600e9150339067ffffffffffffffff1686612894565b67574954484452415760c01b337f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e610dea86613399565b5f546040516370a0823160e01b81523360048201526001600160a01b03909116906370a08231906024015b602060405180830381865afa158015610e30573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e549190613382565b604080519283526020830191909152015b60405180910390a3610e76336126ec565b505050565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291610f025750806020015167ffffffffffffffff1642105b15610f205760405163376d91e160e21b815260040160405180910390fd5b335f908152600b6020526040902060010154600160481b900460ff1615610f6457335f908152600b60205260409020600101805469ff00ffffffffffffffff191690555b6003546040516397f735d560e01b81523360048201526001600160a01b03909116906397f735d590602401602060405180830381865afa158015610faa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fce9190613413565b15610fec576040516359b217d560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff161561102657604051630ea075bf60e21b815260040160405180910390fd5b600754335f908152600b60205260409020541015611057576040516396dcc1ef60e01b815260040160405180910390fd5b335f818152600b602052604090819020600101805468ff00000000000000001916600160401b1790556002549051638a78bb1560e01b815260048101929092526001600160a01b031690638a78bb15906024015f604051808303815f87803b1580156110c1575f5ffd5b505af11580156110d3573d5f5f3e3d5ffd5b505050506110e0336126ec565b5050565b6110ec612839565b5f811180156110fd57506127108111155b61111a5760405163c52a9bd360e01b815260040160405180910390fd5b600a80549082905560408051828152602081018490527f6c6963656e736541637469766542707300000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b611182612839565b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b031633146111cd576040516282b42960e81b815260040160405180910390fd5b815f036111ed57604051631f2a200560e01b815260040160405180910390fd5b5f6111f9600e856128a1565b505f80546040516370a0823160e01b81526001600160a01b038881166004830152939450919216906370a0823190602401602060405180830381865afa158015611245573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112699190613382565b90505f6112768383613432565b90505f61128386836128ca565b9050805f036112955750505050505050565b5f6112a082856128ca565b90508015611309575f5460405163216f226360e21b81526001600160a01b038a8116600483015260248201849052909116906385bc898c906044015f604051808303815f87803b1580156112f2575f5ffd5b505af1158015611304573d5f5f3e3d5ffd5b505050505b5f6113148284613445565b9050801561132e5761132b600e8a835f60016128d9565b50505b82600c5f82825461133f9190613432565b909155508790506001600160a01b038a167f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e61137a86613399565b5f546040516370a0823160e01b81526001600160a01b038f81166004830152909116906370a0823190602401602060405180830381865afa1580156113c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e59190613382565b604080519283526020830191909152015b60405180910390a3611407896126ec565b505050505050505050565b61141a612839565b6001600160a01b0381166114415760405163d92e233d60e01b815260040160405180910390fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b61146b612839565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6006545f80546040516370a0823160e01b81526001600160a01b038581166004830152929392909116906370a0823190602401602060405180830381865afa1580156114db573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114ff9190613382565b6115099190613458565b92915050565b611517612839565b600880549082905560408051828152602081018490527f6d696e5469636b657442616c616e636500000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b61157f612839565b6115885f6129e7565b565b611592612839565b600c548211156115b557604051631e9acf1760e31b815260040160405180910390fd5b600d548111156115d857604051631e9acf1760e31b815260040160405180910390fd5b81156116575781600c5f8282546115ef9190613445565b90915550505f5460055460405163117de2fd60e01b81526001600160a01b0391821660048201526024810185905291169063117de2fd906044015f604051808303815f87803b158015611640575f5ffd5b505af1158015611652573d5f5f3e3d5ffd5b505050505b80156116905780600d5f82825461166e9190613445565b9091555050600554600154611690916001600160a01b03918216911683612a57565b60055460408051848152602081018490526001600160a01b03909216917f402cfba2a3f22a9ea7e8ad10259b9b4c638cc9c44444b06d6d0927c9e0275b119101610ba7565b5f6116de612acb565b805490915060ff600160401b820416159067ffffffffffffffff165f811580156117055750825b90505f8267ffffffffffffffff1660011480156117215750303b155b90508115801561172f575080155b1561174d5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561177c57845468ff00000000000000001916600160401b1785555b61178533612af3565b61178e8d61117a565b6117978c611463565b6117a08b611fa3565b6117a98a611412565b6117b289610b23565b6117bb88612211565b6117c48761150f565b6117cd86611870565b6117d8611f406110e4565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b038f8116911614611815576118158e6124e6565b831561186057845468ff000000000000000019168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050505050505050565b611878612839565b6009805467ffffffffffffffff83811667ffffffffffffffff19831681179093556040519116917f6578697444656c61790000000000000000000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a91610ba791859190918252602082015260400190565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b909304909316151560808201529161197f5750806020015167ffffffffffffffff1642105b1561199d5760405163376d91e160e21b815260040160405180910390fd5b825f036119bd57604051631f2a200560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff166119f65760405163aba4733960e01b815260040160405180910390fd5b5f546040516368a9674d60e01b815233600482018190526024820152604481018590526001600160a01b03909116906368a9674d906064016020604051808303815f875af1158015611a4a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a6e9190613413565b505f546040516370a0823160e01b815233600482018190527f4445504f534954000000000000000000000000000000000000000000000000009290917f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e9187916001600160a01b03909116906370a0823190602401610e15565b6003546001600160a01b03163314611b12576040516282b42960e81b815260040160405180910390fd5b815f03611b3257604051631f2a200560e01b815260040160405180910390fd5b6001600160a01b0383165f908152600b6020526040812090611b55600e866128a1565b9150505f81835f0154611b689190613432565b90505f611b7586836128ca565b9050805f03611b875750505050505050565b5f611b9582865f01546128ca565b90508015611bb55780855f015f828254611baf9190613445565b90915550505b5f611bc08284613445565b90508015611bda57611bd7600e8a5f8460016128d9565b50505b82600d5f828254611beb9190613432565b909155508790506001600160a01b038a167f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6611c2686613399565b8954604080519283526020830191909152016113f6565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291611cc45750806020015167ffffffffffffffff1642105b15611ce25760405163376d91e160e21b815260040160405180910390fd5b825f03611d0257604051631f2a200560e01b815260040160405180910390fd5b6001546040516370a0823160e01b81523060048201525f916001600160a01b0316906370a0823190602401602060405180830381865afa158015611d48573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d6c9190613382565b600154909150611d87906001600160a01b0316333087612b04565b6001546040516370a0823160e01b81523060048201525f9183916001600160a01b03909116906370a0823190602401602060405180830381865afa158015611dd1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611df59190613382565b611dff9190613445565b335f908152600b6020526040812080549293508392909190611e22908490613432565b9091555050335f818152600b602090815260409182902054825185815291820152631093d39160e21b92917f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6910160405180910390a3611e81336126ec565b5050505050565b5f80611e97600e338686612b3d565b915091505f821180611ea857505f81115b611ec5576040516353d8d5b960e01b815260040160405180910390fd5b8115611f2a575f5460405163117de2fd60e01b8152336004820152602481018490526001600160a01b039091169063117de2fd906044015f604051808303815f87803b158015611f13575f5ffd5b505af1158015611f25573d5f5f3e3d5ffd5b505050505b8015611f4757600154611f47906001600160a01b03163383612a57565b50505050565b611f55612839565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f611f80612c41565b6001600160a01b039092165f908152600b60205260409020549190911015919050565b611fab612839565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b90930490931615156080820152916120545750806020015167ffffffffffffffff1642105b156120725760405163376d91e160e21b815260040160405180910390fd5b825f0361209257604051631f2a200560e01b815260040160405180910390fd5b335f908152600b60205260409020548311156120c157604051631e9acf1760e31b815260040160405180910390fd5b335f908152600b6020526040812080548592906120df908490613445565b909155505060095461210090600e90339067ffffffffffffffff1686612c64565b6515539093d39160d21b337f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d661213586613399565b335f908152600b60209081526040918290205482519384529083015201610e65565b5f80612164600e846128a1565b91509150915091565b5f8054604051630748d63560e31b81526001600160a01b0385811660048301526024820185905290911690633a46b1a890604401602060405180830381865afa1580156121bc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121e09190613382565b9392505050565b6121ef612839565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b612219612839565b805f036122395760405163c52a9bd360e01b815260040160405180910390fd5b600780549082905560408051828152602081018490527f6c6963656e73655265717569726564426f6e6400000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b5f80612164600e84612c71565b6001600160a01b0381165f908152600b60209081526040808320815160a0810183528154815260019091015467ffffffffffffffff81169382019390935260ff600160401b84048116151592820192909252600160481b8304821615801560608301819052600160501b9094049092161515608082015291906121e057506020015167ffffffffffffffff16421092915050565b6004546001600160a01b03163314612365576040516301e803c360e01b815260040160405180910390fd5b8281146123855760405163512509d360e11b815260040160405180910390fd5b825f5b81811015610b1a575f8484838181106123a3576123a3613477565b905060200201351180156124035750600b5f8787848181106123c7576123c7613477565b90506020020160208101906123dc9190613169565b6001600160a01b0316815260208101919091526040015f2060010154600160401b900460ff165b1561247257600454612472906001600160a01b031687878481811061242a5761242a613477565b905060200201602081019061243f9190613169565b86868581811061245157612451613477565b905060200201358a6001600160a01b0316612b04909392919063ffffffff16565b600101612388565b5f80546040516370a0823160e01b81526001600160a01b038481166004830152909116906370a0823190602401602060405180830381865afa1580156124c2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115099190613382565b6124ee612839565b6001600160a01b03811661251c57604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b612525816129e7565b50565b81158015612534575080155b611e81574261254b8467ffffffffffffffff61348b565b67ffffffffffffffff168167ffffffffffffffff16111561257f5760405163549a019760e01b815260040160405180910390fd5b5f61258a8583613362565b6001600160a01b0387165f908152602089905260408120805492935091908115612637575f836125bb600185613445565b815481106125cb576125cb613477565b5f9182526020909120600390910201805490915067ffffffffffffffff8087169116036126355787156126115787816001015f82825461260b9190613432565b90915550505b86156126305786816002015f82825461262a9190613432565b90915550505b600191505b505b8061267d578254600180820185555f858152602090206003909202909101805467ffffffffffffffff191667ffffffffffffffff87161781559081018890556002018690555b61268b8a8a89896001612d15565b604080518881526020810188905267ffffffffffffffff86168183015290516001600160a01b038b16917fa798fa3372862b9279e9279338081d2e0828e908501dbdf4cf8e2ef83867649d919081900360600190a250505050505050505050565b6001600160a01b0381165f908152600b602052604081206001810154909190600160401b900460ff1680156127295750612724612c41565b825410155b80156127ae57506008546006545f546040516370a0823160e01b81526001600160a01b038781166004830152909116906370a0823190602401602060405180830381865afa15801561277d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127a19190613382565b6127ab9190613458565b10155b600183015490915060ff600160501b90910416151581151514610e7657600182018054821515600160501b026aff00000000000000000000199091161790556040516001600160a01b038416907f1e5cd4157c0bec375761492bfd692468cecd66e6cb75f397a5195b570692d9059061282c90841515815260200190565b60405180910390a2505050565b3361286b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6001600160a01b0316146115885760405163118cdaa760e01b8152336004820152602401612513565b611f47848484845f612528565b6001600160a01b0381165f908152600283016020526040902080546001909101545b9250929050565b5f8282188284100282186121e0565b5f808415612925576128ee8787875f87612dc3565b91508115612925576001600160a01b0386165f9081526002880160205260408120805484929061291f908490613445565b90915550505b831561297357612939878786600187612dc3565b90508015612973576001600160a01b0386165f9081526002880160205260408120600101805483929061296d908490613445565b90915550505b5f82118061298057505f81115b156129dd5761298f8787612f66565b60408051838152602081018390528415158183015290516001600160a01b038816917faaff5d2d15d2258450693fb56a7e9be67429e9a925525019086c620c5323fd9b919081900360600190a25b9550959350505050565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b6040516001600160a01b03838116602483015260448201839052610e7691859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061300c565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00611509565b612afb613078565b6125258161309d565b6040516001600160a01b038481166024830152838116604483015260648201839052611f479186918216906323b872dd90608401612a84565b5f808315612b8957612b528686865f5f612dc3565b91508115612b89576001600160a01b0385165f90815260028701602052604081208054849290612b83908490613445565b90915550505b8215612bd757612b9d86868560015f612dc3565b90508015612bd7576001600160a01b0385165f90815260028701602052604081206001018054839290612bd1908490613445565b90915550505b5f821180612be457505f81115b15612c3857612bf38686612f66565b60408051838152602081018390526001600160a01b038716917fbd58523b9978b5fb3c6487ecc5b6a8ef9cd69c5fb07fb39e0af1e45ef2855fcc910160405180910390a25b94509492505050565b5f612710600a54600754612c5591906134ab565b612c5f9190613458565b905090565b611f478484845f85612528565b6001600160a01b0381165f9081526020838152604080832060018601909252822054829190805b8254811015612d0b575f838281548110612cb457612cb4613477565b5f9182526020909120600390910201805490915067ffffffffffffffff16421015612cdf5750612d0b565b6001810154612cee9087613432565b9550806002015485612d009190613432565b945050600101612c98565b5050509250929050565b82821715611e81576001600160a01b0384165f90815260028601602052604090208115612d7e578315612d5a5783815f015f828254612d549190613432565b90915550505b8215612d795782816001015f828254612d739190613432565b90915550505b612dbb565b8315612d9c5783815f015f828254612d969190613445565b90915550505b8215612dbb5782816001015f828254612db59190613445565b90915550505b505050505050565b5f835f03612dd257505f612f5d565b6001600160a01b0385165f9081526020878152604080832060018a01909252909120548154865b5f81118015612e0757508183105b15612f3f575f848481548110612e1f57612e1f613477565b905f5260205f209060030201905086158015612e455750805467ffffffffffffffff1642105b15612e505750612f3f565b5f80896001811115612e6457612e646134c2565b03612e7457506001810154612e7b565b5060028101545b805f03612e965784612e8c816134d6565b9550505050612df9565b5f818410612ea45781612ea6565b835b90505f8a6001811115612ebb57612ebb6134c2565b03612ede5780836001015f828254612ed39190613445565b90915550612ef79050565b80836002015f828254612ef19190613445565b90915550505b612f018185613445565b9350612f0d8189613432565b975082600101545f148015612f2457506002830154155b15612f375785612f33816134d6565b9650505b505050612df9565b50506001600160a01b0387165f908152600189016020526040902055505b95945050505050565b6001600160a01b0381165f9081526020838152604080832060018601909252909120545b8154811015612fec575f828281548110612fa657612fa6613477565b905f5260205f209060030201905080600101545f148015612fc957506002810154155b15612fe05781612fd8816134d6565b925050612fe6565b50612fec565b50612f8a565b6001600160a01b039092165f908152600190930160205250604090912055565b5f5f60205f8451602086015f885af18061302b576040513d5f823e3d81fd5b50505f513d9150811561304257806001141561304f565b6001600160a01b0384163b155b15611f4757604051635274afe760e01b81526001600160a01b0385166004820152602401612513565b6130806130a5565b61158857604051631afcd79f60e31b815260040160405180910390fd5b6124ee613078565b5f6130ae612acb565b54600160401b900460ff16919050565b5f5f83601f8401126130ce575f5ffd5b50813567ffffffffffffffff8111156130e5575f5ffd5b6020830191508360208260051b85010111156128c3575f5ffd5b5f5f60208385031215613110575f5ffd5b823567ffffffffffffffff811115613126575f5ffd5b613132858286016130be565b90969095509350505050565b5f6020828403121561314e575f5ffd5b5035919050565b6001600160a01b0381168114612525575f5ffd5b5f60208284031215613179575f5ffd5b81356121e081613155565b5f5f5f60608486031215613196575f5ffd5b83356131a181613155565b95602085013595506040909401359392505050565b5f5f604083850312156131c7575f5ffd5b50508035926020909101359150565b803567ffffffffffffffff811681146131ed575f5ffd5b919050565b5f5f5f5f5f5f5f5f5f6101208a8c03121561320b575f5ffd5b893561321681613155565b985060208a013561322681613155565b975060408a013561323681613155565b965060608a013561324681613155565b955060808a013561325681613155565b945060a08a0135935060c08a0135925060e08a0135915061327a6101008b016131d6565b90509295985092959850929598565b5f60208284031215613299575f5ffd5b6121e0826131d6565b5f5f604083850312156132b3575f5ffd5b82356132be81613155565b946020939093013593505050565b5f5f5f5f5f606086880312156132e0575f5ffd5b85356132eb81613155565b9450602086013567ffffffffffffffff811115613306575f5ffd5b613312888289016130be565b909550935050604086013567ffffffffffffffff811115613331575f5ffd5b61333d888289016130be565b969995985093965092949392505050565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81811683821601908111156115095761150961334e565b5f60208284031215613392575f5ffd5b5051919050565b5f600160ff1b82016133ad576133ad61334e565b505f0390565b6001600160a01b0384168152604060208201528160408201525f7f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8311156133f9575f5ffd5b8260051b8085606085013791909101606001949350505050565b5f60208284031215613423575f5ffd5b815180151581146121e0575f5ffd5b808201808211156115095761150961334e565b818103818111156115095761150961334e565b5f8261347257634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b67ffffffffffffffff82811682821603908111156115095761150961334e565b80820281158282048414176115095761150961334e565b634e487b7160e01b5f52602160045260245ffd5b5f600182016134e7576134e761334e565b506001019056fea164736f6c634300081c000a",
|
|
1211
|
+
"deployedBytecode": "0x608060405234801561000f575f5ffd5b5060043610610330575f3560e01c80638e05aaae116101b3578063b7e833e0116100f3578063cca3a5011161009e578063dd8c818e11610079578063dd8c818e14610745578063e5da378f14610758578063e8341e891461076b578063f2fde38b14610774575f5ffd5b8063cca3a5011461070d578063d32759ed14610720578063d5ed4d5a14610733575f5ffd5b8063c3c5a547116100ce578063c3c5a547146106b2578063c43b1f34146106e7578063c9ca1acc146106fa575f5ffd5b8063b7e833e014610683578063bb03bd711461068c578063bff232c11461069f575f5ffd5b80639f8dfddd1161015e578063a91ee0dc11610139578063a91ee0dc14610622578063acc2166a14610635578063ada332dd14610648578063b2f3f6691461065b575f5ffd5b80639f8dfddd146105e9578063a1809b95146105fc578063a542c2a41461060f575f5ffd5b80638f9b1d871161018e5780638f9b1d87146105885780639d7555de146105915780639f8a13d7146105a4575f5ffd5b80638e05aaae1461054f5780638e5ce3ad146105625780638e9ddc0314610575575f5ffd5b8063671b93071161027e5780637333fa82116102295780637b103999116102045780637b103999146104e85780637c79a9da146104fb5780638450e44e1461050c5780638da5cb5b1461051f575f5ffd5b80637333fa82146104bc578063752c36c0146104cf578063781545b3146104d8575f5ffd5b806370f868a61161025957806370f868a61461048e578063715018a6146104a15780637264f3f2146104a9575f5ffd5b8063671b9307146104405780636d3c18d3146104685780636ecfef9a1461047b575f5ffd5b80632c98fd3b116102de5780634cabdd3d116102b95780634cabdd3d146103ef57806351ec538214610402578063561df99e1461042d575f5ffd5b80632c98fd3b146103c05780632e8d9930146103c9578063450e9dec146103dc575f5ffd5b806319fb279a1161030e57806319fb279a14610378578063283886301461038b5780632acde098146103b8575f5ffd5b80630691bdcf146103345780631209b1f6146103495780631598165014610365575b5f5ffd5b6103476103423660046130ff565b610787565b005b61035260065481565b6040519081526020015b60405180910390f35b61034761037336600461313e565b610b23565b61034761038636600461313e565b610bb3565b60095461039f9067ffffffffffffffff1681565b60405167ffffffffffffffff909116815260200161035c565b610347610e7b565b61035260085481565b6103476103d736600461313e565b6110e4565b6103476103ea366004613169565b61117a565b6103476103fd366004613184565b6111a3565b600154610415906001600160a01b031681565b6040516001600160a01b03909116815260200161035c565b61034761043b366004613169565b611412565b61035261044e366004613169565b6001600160a01b03165f908152600b602052604090205490565b610347610476366004613169565b611463565b610352610489366004613169565b61148d565b61034761049c36600461313e565b61150f565b610347611577565b6103476104b73660046131b6565b61158a565b6103476104ca3660046131f2565b6116d5565b61035260075481565b5f546001600160a01b0316610415565b600254610415906001600160a01b031681565b6001546001600160a01b0316610415565b61034761051a366004613289565b611870565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b0316610415565b61034761055d36600461313e565b6118f8565b600354610415906001600160a01b031681565b610347610583366004613184565b611ae8565b610352600a5481565b61034761059f36600461313e565b611c3d565b6105d96105b2366004613169565b6001600160a01b03165f908152600b6020526040902060010154600160501b900460ff1690565b604051901515815260200161035c565b6103476105f73660046131b6565b611e88565b61034761060a366004613169565b611f4d565b6105d961061d366004613169565b611f77565b610347610630366004613169565b611fa3565b600454610415906001600160a01b031681565b61034761065636600461313e565b611fcd565b61066e610669366004613169565b612157565b6040805192835260208301919091520161035c565b610352600c5481565b61035261069a3660046132a2565b61216d565b6103476106ad366004613169565b6121e7565b6105d96106c0366004613169565b6001600160a01b03165f908152600b6020526040902060010154600160401b900460ff1690565b6103476106f536600461313e565b612211565b61066e610708366004613169565b612299565b600554610415906001600160a01b031681565b6105d961072e366004613169565b6122a6565b5f54610415906001600160a01b031681565b6103476107533660046132cc565b61233a565b610352610766366004613169565b61247a565b610352600d5481565b610347610782366004613169565b6124e6565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b909304909316151560808201529161080e5750806020015167ffffffffffffffff1642105b1561082c5760405163376d91e160e21b815260040160405180910390fd5b335f908152600b602052604090206001810154600160401b900460ff166108665760405163aba4733960e01b815260040160405180910390fd5b60018101805469ffff00000000000000001916600160481b1790556009546108989067ffffffffffffffff1642613362565b60018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790555f80546040516370a0823160e01b81523360048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610902573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109269190613382565b825490915081156109e7575f5460405163216f226360e21b8152336004820152602481018490526001600160a01b03909116906385bc898c906044015f604051808303815f87803b158015610979575f5ffd5b505af115801561098b573d5f5f3e3d5ffd5b5050505067574954484452415760c01b336001600160a01b03167f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e846109d090613399565b604080519182525f60208301520160405180910390a35b8015610a3c575f83556515539093d39160d21b337f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6610a2584613399565b604080519182525f60208301520160405180910390a35b81151580610a4957508015155b15610a6b57600954610a6b90600e90339067ffffffffffffffff168585612528565b60025460405163a04e606560e01b81526001600160a01b039091169063a04e606590610a9f9033908b908b906004016133b3565b5f604051808303815f87803b158015610ab6575f5ffd5b505af1158015610ac8573d5f5f3e3d5ffd5b50505050600183015460405167ffffffffffffffff909116815233907f55278ae09e344fb61a9a1d094010b3ce004a7eacca9b11e10f0f119d03f1f38f9060200160405180910390a2610b1a336126ec565b50505050505050565b610b2b612839565b805f03610b4b5760405163c52a9bd360e01b815260040160405180910390fd5b600680549082905560408051828152602081018490527f7469636b65745072696365000000000000000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a91015b60405180910390a25050565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291610c3a5750806020015167ffffffffffffffff1642105b15610c585760405163376d91e160e21b815260040160405180910390fd5b825f03610c7857604051631f2a200560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff16610cb15760405163aba4733960e01b815260040160405180910390fd5b5f546040516370a0823160e01b815233600482015284916001600160a01b0316906370a0823190602401602060405180830381865afa158015610cf6573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d1a9190613382565b1015610d3957604051631e9acf1760e31b815260040160405180910390fd5b5f5460405163216f226360e21b8152336004820152602481018590526001600160a01b03909116906385bc898c906044015f604051808303815f87803b158015610d81575f5ffd5b505af1158015610d93573d5f5f3e3d5ffd5b5050600954610db39250600e9150339067ffffffffffffffff1686612894565b67574954484452415760c01b337f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e610dea86613399565b5f546040516370a0823160e01b81523360048201526001600160a01b03909116906370a08231906024015b602060405180830381865afa158015610e30573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e549190613382565b604080519283526020830191909152015b60405180910390a3610e76336126ec565b505050565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291610f025750806020015167ffffffffffffffff1642105b15610f205760405163376d91e160e21b815260040160405180910390fd5b335f908152600b6020526040902060010154600160481b900460ff1615610f6457335f908152600b60205260409020600101805469ff00ffffffffffffffff191690555b6003546040516397f735d560e01b81523360048201526001600160a01b03909116906397f735d590602401602060405180830381865afa158015610faa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fce9190613413565b15610fec576040516359b217d560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff161561102657604051630ea075bf60e21b815260040160405180910390fd5b600754335f908152600b60205260409020541015611057576040516396dcc1ef60e01b815260040160405180910390fd5b335f818152600b602052604090819020600101805468ff00000000000000001916600160401b1790556002549051638a78bb1560e01b815260048101929092526001600160a01b031690638a78bb15906024015f604051808303815f87803b1580156110c1575f5ffd5b505af11580156110d3573d5f5f3e3d5ffd5b505050506110e0336126ec565b5050565b6110ec612839565b5f811180156110fd57506127108111155b61111a5760405163c52a9bd360e01b815260040160405180910390fd5b600a80549082905560408051828152602081018490527f6c6963656e736541637469766542707300000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b611182612839565b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b031633146111cd576040516282b42960e81b815260040160405180910390fd5b815f036111ed57604051631f2a200560e01b815260040160405180910390fd5b5f6111f9600e856128a1565b505f80546040516370a0823160e01b81526001600160a01b038881166004830152939450919216906370a0823190602401602060405180830381865afa158015611245573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112699190613382565b90505f6112768383613432565b90505f61128386836128ca565b9050805f036112955750505050505050565b5f6112a082856128ca565b90508015611309575f5460405163216f226360e21b81526001600160a01b038a8116600483015260248201849052909116906385bc898c906044015f604051808303815f87803b1580156112f2575f5ffd5b505af1158015611304573d5f5f3e3d5ffd5b505050505b5f6113148284613445565b9050801561132e5761132b600e8a835f60016128d9565b50505b82600c5f82825461133f9190613432565b909155508790506001600160a01b038a167f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e61137a86613399565b5f546040516370a0823160e01b81526001600160a01b038f81166004830152909116906370a0823190602401602060405180830381865afa1580156113c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e59190613382565b604080519283526020830191909152015b60405180910390a3611407896126ec565b505050505050505050565b61141a612839565b6001600160a01b0381166114415760405163d92e233d60e01b815260040160405180910390fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b61146b612839565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6006545f80546040516370a0823160e01b81526001600160a01b038581166004830152929392909116906370a0823190602401602060405180830381865afa1580156114db573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114ff9190613382565b6115099190613458565b92915050565b611517612839565b600880549082905560408051828152602081018490527f6d696e5469636b657442616c616e636500000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b61157f612839565b6115885f6129e7565b565b611592612839565b600c548211156115b557604051631e9acf1760e31b815260040160405180910390fd5b600d548111156115d857604051631e9acf1760e31b815260040160405180910390fd5b81156116575781600c5f8282546115ef9190613445565b90915550505f5460055460405163117de2fd60e01b81526001600160a01b0391821660048201526024810185905291169063117de2fd906044015f604051808303815f87803b158015611640575f5ffd5b505af1158015611652573d5f5f3e3d5ffd5b505050505b80156116905780600d5f82825461166e9190613445565b9091555050600554600154611690916001600160a01b03918216911683612a57565b60055460408051848152602081018490526001600160a01b03909216917f402cfba2a3f22a9ea7e8ad10259b9b4c638cc9c44444b06d6d0927c9e0275b119101610ba7565b5f6116de612acb565b805490915060ff600160401b820416159067ffffffffffffffff165f811580156117055750825b90505f8267ffffffffffffffff1660011480156117215750303b155b90508115801561172f575080155b1561174d5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561177c57845468ff00000000000000001916600160401b1785555b61178533612af3565b61178e8d61117a565b6117978c611463565b6117a08b611fa3565b6117a98a611412565b6117b289610b23565b6117bb88612211565b6117c48761150f565b6117cd86611870565b6117d8611f406110e4565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b038f8116911614611815576118158e6124e6565b831561186057845468ff000000000000000019168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050505050505050565b611878612839565b6009805467ffffffffffffffff83811667ffffffffffffffff19831681179093556040519116917f6578697444656c61790000000000000000000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a91610ba791859190918252602082015260400190565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b909304909316151560808201529161197f5750806020015167ffffffffffffffff1642105b1561199d5760405163376d91e160e21b815260040160405180910390fd5b825f036119bd57604051631f2a200560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff166119f65760405163aba4733960e01b815260040160405180910390fd5b5f546040516368a9674d60e01b815233600482018190526024820152604481018590526001600160a01b03909116906368a9674d906064016020604051808303815f875af1158015611a4a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a6e9190613413565b505f546040516370a0823160e01b815233600482018190527f4445504f534954000000000000000000000000000000000000000000000000009290917f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e9187916001600160a01b03909116906370a0823190602401610e15565b6003546001600160a01b03163314611b12576040516282b42960e81b815260040160405180910390fd5b815f03611b3257604051631f2a200560e01b815260040160405180910390fd5b6001600160a01b0383165f908152600b6020526040812090611b55600e866128a1565b9150505f81835f0154611b689190613432565b90505f611b7586836128ca565b9050805f03611b875750505050505050565b5f611b9582865f01546128ca565b90508015611bb55780855f015f828254611baf9190613445565b90915550505b5f611bc08284613445565b90508015611bda57611bd7600e8a5f8460016128d9565b50505b82600d5f828254611beb9190613432565b909155508790506001600160a01b038a167f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6611c2686613399565b8954604080519283526020830191909152016113f6565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291611cc45750806020015167ffffffffffffffff1642105b15611ce25760405163376d91e160e21b815260040160405180910390fd5b825f03611d0257604051631f2a200560e01b815260040160405180910390fd5b6001546040516370a0823160e01b81523060048201525f916001600160a01b0316906370a0823190602401602060405180830381865afa158015611d48573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d6c9190613382565b600154909150611d87906001600160a01b0316333087612b04565b6001546040516370a0823160e01b81523060048201525f9183916001600160a01b03909116906370a0823190602401602060405180830381865afa158015611dd1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611df59190613382565b611dff9190613445565b335f908152600b6020526040812080549293508392909190611e22908490613432565b9091555050335f818152600b602090815260409182902054825185815291820152631093d39160e21b92917f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6910160405180910390a3611e81336126ec565b5050505050565b5f80611e97600e338686612b3d565b915091505f821180611ea857505f81115b611ec5576040516353d8d5b960e01b815260040160405180910390fd5b8115611f2a575f5460405163117de2fd60e01b8152336004820152602481018490526001600160a01b039091169063117de2fd906044015f604051808303815f87803b158015611f13575f5ffd5b505af1158015611f25573d5f5f3e3d5ffd5b505050505b8015611f4757600154611f47906001600160a01b03163383612a57565b50505050565b611f55612839565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f611f80612c41565b6001600160a01b039092165f908152600b60205260409020549190911015919050565b611fab612839565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b90930490931615156080820152916120545750806020015167ffffffffffffffff1642105b156120725760405163376d91e160e21b815260040160405180910390fd5b825f0361209257604051631f2a200560e01b815260040160405180910390fd5b335f908152600b60205260409020548311156120c157604051631e9acf1760e31b815260040160405180910390fd5b335f908152600b6020526040812080548592906120df908490613445565b909155505060095461210090600e90339067ffffffffffffffff1686612c64565b6515539093d39160d21b337f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d661213586613399565b335f908152600b60209081526040918290205482519384529083015201610e65565b5f80612164600e846128a1565b91509150915091565b5f8054604051630748d63560e31b81526001600160a01b0385811660048301526024820185905290911690633a46b1a890604401602060405180830381865afa1580156121bc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121e09190613382565b9392505050565b6121ef612839565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b612219612839565b805f036122395760405163c52a9bd360e01b815260040160405180910390fd5b600780549082905560408051828152602081018490527f6c6963656e73655265717569726564426f6e6400000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b5f80612164600e84612c71565b6001600160a01b0381165f908152600b60209081526040808320815160a0810183528154815260019091015467ffffffffffffffff81169382019390935260ff600160401b84048116151592820192909252600160481b8304821615801560608301819052600160501b9094049092161515608082015291906121e057506020015167ffffffffffffffff16421092915050565b6004546001600160a01b03163314612365576040516301e803c360e01b815260040160405180910390fd5b8281146123855760405163512509d360e11b815260040160405180910390fd5b825f5b81811015610b1a575f8484838181106123a3576123a3613477565b905060200201351180156124035750600b5f8787848181106123c7576123c7613477565b90506020020160208101906123dc9190613169565b6001600160a01b0316815260208101919091526040015f2060010154600160401b900460ff165b1561247257600454612472906001600160a01b031687878481811061242a5761242a613477565b905060200201602081019061243f9190613169565b86868581811061245157612451613477565b905060200201358a6001600160a01b0316612b04909392919063ffffffff16565b600101612388565b5f80546040516370a0823160e01b81526001600160a01b038481166004830152909116906370a0823190602401602060405180830381865afa1580156124c2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115099190613382565b6124ee612839565b6001600160a01b03811661251c57604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b612525816129e7565b50565b81158015612534575080155b611e81574261254b8467ffffffffffffffff61348b565b67ffffffffffffffff168167ffffffffffffffff16111561257f5760405163549a019760e01b815260040160405180910390fd5b5f61258a8583613362565b6001600160a01b0387165f908152602089905260408120805492935091908115612637575f836125bb600185613445565b815481106125cb576125cb613477565b5f9182526020909120600390910201805490915067ffffffffffffffff8087169116036126355787156126115787816001015f82825461260b9190613432565b90915550505b86156126305786816002015f82825461262a9190613432565b90915550505b600191505b505b8061267d578254600180820185555f858152602090206003909202909101805467ffffffffffffffff191667ffffffffffffffff87161781559081018890556002018690555b61268b8a8a89896001612d15565b604080518881526020810188905267ffffffffffffffff86168183015290516001600160a01b038b16917fa798fa3372862b9279e9279338081d2e0828e908501dbdf4cf8e2ef83867649d919081900360600190a250505050505050505050565b6001600160a01b0381165f908152600b602052604081206001810154909190600160401b900460ff1680156127295750612724612c41565b825410155b80156127ae57506008546006545f546040516370a0823160e01b81526001600160a01b038781166004830152909116906370a0823190602401602060405180830381865afa15801561277d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127a19190613382565b6127ab9190613458565b10155b600183015490915060ff600160501b90910416151581151514610e7657600182018054821515600160501b026aff00000000000000000000199091161790556040516001600160a01b038416907f1e5cd4157c0bec375761492bfd692468cecd66e6cb75f397a5195b570692d9059061282c90841515815260200190565b60405180910390a2505050565b3361286b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6001600160a01b0316146115885760405163118cdaa760e01b8152336004820152602401612513565b611f47848484845f612528565b6001600160a01b0381165f908152600283016020526040902080546001909101545b9250929050565b5f8282188284100282186121e0565b5f808415612925576128ee8787875f87612dc3565b91508115612925576001600160a01b0386165f9081526002880160205260408120805484929061291f908490613445565b90915550505b831561297357612939878786600187612dc3565b90508015612973576001600160a01b0386165f9081526002880160205260408120600101805483929061296d908490613445565b90915550505b5f82118061298057505f81115b156129dd5761298f8787612f66565b60408051838152602081018390528415158183015290516001600160a01b038816917faaff5d2d15d2258450693fb56a7e9be67429e9a925525019086c620c5323fd9b919081900360600190a25b9550959350505050565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b6040516001600160a01b03838116602483015260448201839052610e7691859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061300c565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00611509565b612afb613078565b6125258161309d565b6040516001600160a01b038481166024830152838116604483015260648201839052611f479186918216906323b872dd90608401612a84565b5f808315612b8957612b528686865f5f612dc3565b91508115612b89576001600160a01b0385165f90815260028701602052604081208054849290612b83908490613445565b90915550505b8215612bd757612b9d86868560015f612dc3565b90508015612bd7576001600160a01b0385165f90815260028701602052604081206001018054839290612bd1908490613445565b90915550505b5f821180612be457505f81115b15612c3857612bf38686612f66565b60408051838152602081018390526001600160a01b038716917fbd58523b9978b5fb3c6487ecc5b6a8ef9cd69c5fb07fb39e0af1e45ef2855fcc910160405180910390a25b94509492505050565b5f612710600a54600754612c5591906134ab565b612c5f9190613458565b905090565b611f478484845f85612528565b6001600160a01b0381165f9081526020838152604080832060018601909252822054829190805b8254811015612d0b575f838281548110612cb457612cb4613477565b5f9182526020909120600390910201805490915067ffffffffffffffff16421015612cdf5750612d0b565b6001810154612cee9087613432565b9550806002015485612d009190613432565b945050600101612c98565b5050509250929050565b82821715611e81576001600160a01b0384165f90815260028601602052604090208115612d7e578315612d5a5783815f015f828254612d549190613432565b90915550505b8215612d795782816001015f828254612d739190613432565b90915550505b612dbb565b8315612d9c5783815f015f828254612d969190613445565b90915550505b8215612dbb5782816001015f828254612db59190613445565b90915550505b505050505050565b5f835f03612dd257505f612f5d565b6001600160a01b0385165f9081526020878152604080832060018a01909252909120548154865b5f81118015612e0757508183105b15612f3f575f848481548110612e1f57612e1f613477565b905f5260205f209060030201905086158015612e455750805467ffffffffffffffff1642105b15612e505750612f3f565b5f80896001811115612e6457612e646134c2565b03612e7457506001810154612e7b565b5060028101545b805f03612e965784612e8c816134d6565b9550505050612df9565b5f818410612ea45781612ea6565b835b90505f8a6001811115612ebb57612ebb6134c2565b03612ede5780836001015f828254612ed39190613445565b90915550612ef79050565b80836002015f828254612ef19190613445565b90915550505b612f018185613445565b9350612f0d8189613432565b975082600101545f148015612f2457506002830154155b15612f375785612f33816134d6565b9650505b505050612df9565b50506001600160a01b0387165f908152600189016020526040902055505b95945050505050565b6001600160a01b0381165f9081526020838152604080832060018601909252909120545b8154811015612fec575f828281548110612fa657612fa6613477565b905f5260205f209060030201905080600101545f148015612fc957506002810154155b15612fe05781612fd8816134d6565b925050612fe6565b50612fec565b50612f8a565b6001600160a01b039092165f908152600190930160205250604090912055565b5f5f60205f8451602086015f885af18061302b576040513d5f823e3d81fd5b50505f513d9150811561304257806001141561304f565b6001600160a01b0384163b155b15611f4757604051635274afe760e01b81526001600160a01b0385166004820152602401612513565b6130806130a5565b61158857604051631afcd79f60e31b815260040160405180910390fd5b6124ee613078565b5f6130ae612acb565b54600160401b900460ff16919050565b5f5f83601f8401126130ce575f5ffd5b50813567ffffffffffffffff8111156130e5575f5ffd5b6020830191508360208260051b85010111156128c3575f5ffd5b5f5f60208385031215613110575f5ffd5b823567ffffffffffffffff811115613126575f5ffd5b613132858286016130be565b90969095509350505050565b5f6020828403121561314e575f5ffd5b5035919050565b6001600160a01b0381168114612525575f5ffd5b5f60208284031215613179575f5ffd5b81356121e081613155565b5f5f5f60608486031215613196575f5ffd5b83356131a181613155565b95602085013595506040909401359392505050565b5f5f604083850312156131c7575f5ffd5b50508035926020909101359150565b803567ffffffffffffffff811681146131ed575f5ffd5b919050565b5f5f5f5f5f5f5f5f5f6101208a8c03121561320b575f5ffd5b893561321681613155565b985060208a013561322681613155565b975060408a013561323681613155565b965060608a013561324681613155565b955060808a013561325681613155565b945060a08a0135935060c08a0135925060e08a0135915061327a6101008b016131d6565b90509295985092959850929598565b5f60208284031215613299575f5ffd5b6121e0826131d6565b5f5f604083850312156132b3575f5ffd5b82356132be81613155565b946020939093013593505050565b5f5f5f5f5f606086880312156132e0575f5ffd5b85356132eb81613155565b9450602086013567ffffffffffffffff811115613306575f5ffd5b613312888289016130be565b909550935050604086013567ffffffffffffffff811115613331575f5ffd5b61333d888289016130be565b969995985093965092949392505050565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81811683821601908111156115095761150961334e565b5f60208284031215613392575f5ffd5b5051919050565b5f600160ff1b82016133ad576133ad61334e565b505f0390565b6001600160a01b0384168152604060208201528160408201525f7f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8311156133f9575f5ffd5b8260051b8085606085013791909101606001949350505050565b5f60208284031215613423575f5ffd5b815180151581146121e0575f5ffd5b808201808211156115095761150961334e565b818103818111156115095761150961334e565b5f8261347257634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b67ffffffffffffffff82811682821603908111156115095761150961334e565b80820281158282048414176115095761150961334e565b634e487b7160e01b5f52602160045260245ffd5b5f600182016134e7576134e761334e565b506001019056fea164736f6c634300081c000a",
|
|
1212
|
+
"linkReferences": {},
|
|
1213
|
+
"deployedLinkReferences": {},
|
|
1214
|
+
"immutableReferences": {},
|
|
1215
|
+
"inputSourceName": "project/contracts/registry/BondingRegistry.sol",
|
|
1216
|
+
"buildInfoId": "solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc"
|
|
1217
|
+
}
|