Sepolia Testnet

Contract

0x7D8EA07DB94128DBEe66bAfa3eBAa9668B413d72
Source Code Source Code

Overview

ETH Balance

0 ETH

More Info

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Amount
Transfer Ownersh...106741472026-04-16 22:57:2428 days ago1776380244IN
0x7D8EA07D...68B413d72
0 ETH0.000000030.00112758
Set Proof Submit...106741472026-04-16 22:57:2428 days ago1776380244IN
0x7D8EA07D...68B413d72
0 ETH0.000000030.00112758
Add Verify Route106741202026-04-16 22:51:2428 days ago1776379884IN
0x7D8EA07D...68B413d72
0 ETH0.000000060.00124032

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
Source Code Verified Exact Match

Contract Name

NitroEnclaveVerifier

Compiler Version
v0.8.30+commit.73712a01
Optimization Enabled
Yes with 200 runs
Other Settings
prague EvmVersion
License
-NA-
Contract Source Code (Solidity Standard Json-Input format)
Contract ABI
API
[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint64","name":"initialMaxTimeDiff","type":"uint64"},{"internalType":"bytes32[]","name":"initializeTrustedCerts","type":"bytes32[]"},{"internalType":"uint64[]","name":"initializeTrustedCertExpiries","type":"uint64[]"},{"internalType":"bytes32","name":"initialRootCert","type":"bytes32"},{"internalType":"address","name":"initialProofSubmitter","type":"address"},{"internalType":"address","name":"initialRevoker","type":"address"},{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"components":[{"internalType":"bytes32","name":"verifierId","type":"bytes32"},{"internalType":"bytes32","name":"aggregatorId","type":"bytes32"},{"internalType":"address","name":"zkVerifier","type":"address"}],"internalType":"struct ZkCoProcessorConfig","name":"config","type":"tuple"},{"internalType":"bytes32","name":"verifierProofId","type":"bytes32"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AlreadyInitialized","type":"error"},{"inputs":[],"name":"CallerNotOwnerOrRevoker","type":"error"},{"inputs":[],"name":"CallerNotProofSubmitter","type":"error"},{"inputs":[{"internalType":"uint256","name":"certsLen","type":"uint256"},{"internalType":"uint256","name":"expiriesLen","type":"uint256"}],"name":"CertExpiriesLengthMismatch","type":"error"},{"inputs":[{"internalType":"bytes32","name":"certHash","type":"bytes32"}],"name":"CertificateNotFound","type":"error"},{"inputs":[],"name":"InvalidVerifierAddress","type":"error"},{"inputs":[],"name":"NewOwnerIsZeroAddress","type":"error"},{"inputs":[],"name":"NoHandoverRequest","type":"error"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"internalType":"bytes32","name":"identifier","type":"bytes32"}],"name":"ProgramIdAlreadyLatest","type":"error"},{"inputs":[{"internalType":"bytes32","name":"expected","type":"bytes32"},{"internalType":"bytes32","name":"actual","type":"bytes32"}],"name":"RootCertMismatch","type":"error"},{"inputs":[],"name":"Unauthorized","type":"error"},{"inputs":[],"name":"Unknown_Zk_Coprocessor","type":"error"},{"inputs":[{"internalType":"bytes32","name":"expected","type":"bytes32"},{"internalType":"bytes32","name":"actual","type":"bytes32"}],"name":"VerifierVkMismatch","type":"error"},{"inputs":[],"name":"ZeroMaxTimeDiff","type":"error"},{"inputs":[],"name":"ZeroProgramId","type":"error"},{"inputs":[],"name":"ZeroProofSubmitter","type":"error"},{"inputs":[],"name":"ZeroVerifierAddress","type":"error"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"internalType":"bytes4","name":"selector","type":"bytes4"}],"name":"ZkRouteFrozen","type":"error"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"}],"name":"ZkVerifierNotConfigured","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"indexed":true,"internalType":"bytes32","name":"newId","type":"bytes32"}],"name":"AggregatorIdUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"enum VerificationResult","name":"result","type":"uint8"},{"indexed":true,"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"indexed":false,"internalType":"bytes","name":"output","type":"bytes"}],"name":"AttestationSubmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"verifierId","type":"bytes32"},{"indexed":true,"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"indexed":false,"internalType":"bytes","name":"encodedBatch","type":"bytes"}],"name":"BatchAttestationSubmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"certHash","type":"bytes32"}],"name":"CertRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"newMaxTimeDiff","type":"uint64"}],"name":"MaxTimeDiffUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pendingOwner","type":"address"}],"name":"OwnershipHandoverCanceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pendingOwner","type":"address"}],"name":"OwnershipHandoverRequested","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newProofSubmitter","type":"address"}],"name":"ProofSubmitterChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newRevoker","type":"address"}],"name":"RevokerUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"newRootCert","type":"bytes32"}],"name":"RootCertChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"indexed":true,"internalType":"bytes32","name":"newId","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"newProofId","type":"bytes32"}],"name":"VerifierIdUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"components":[{"internalType":"bytes32","name":"verifierId","type":"bytes32"},{"internalType":"bytes32","name":"aggregatorId","type":"bytes32"},{"internalType":"address","name":"zkVerifier","type":"address"}],"indexed":false,"internalType":"struct ZkCoProcessorConfig","name":"config","type":"tuple"},{"indexed":false,"internalType":"bytes32","name":"verifierProofId","type":"bytes32"}],"name":"ZKConfigurationUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"indexed":true,"internalType":"bytes4","name":"selector","type":"bytes4"},{"indexed":false,"internalType":"address","name":"verifier","type":"address"}],"name":"ZkRouteAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"indexed":true,"internalType":"bytes4","name":"selector","type":"bytes4"}],"name":"ZkRouteWasFrozen","type":"event"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"internalType":"bytes4","name":"selector","type":"bytes4"},{"internalType":"address","name":"verifier","type":"address"}],"name":"addVerifyRoute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"output","type":"bytes"},{"internalType":"enum ZkCoProcessorType","name":"zkCoprocessor","type":"uint8"},{"internalType":"bytes","name":"proofBytes","type":"bytes"}],"name":"batchVerify","outputs":[{"components":[{"internalType":"enum VerificationResult","name":"result","type":"uint8"},{"internalType":"uint8","name":"trustedCertsPrefixLen","type":"uint8"},{"internalType":"uint64","name":"timestamp","type":"uint64"},{"internalType":"bytes32[]","name":"certs","type":"bytes32[]"},{"internalType":"uint64[]","name":"certExpiries","type":"uint64[]"},{"internalType":"bytes","name":"userData","type":"bytes"},{"internalType":"bytes","name":"nonce","type":"bytes"},{"internalType":"bytes","name":"publicKey","type":"bytes"},{"components":[{"internalType":"uint64","name":"index","type":"uint64"},{"components":[{"internalType":"bytes32","name":"first","type":"bytes32"},{"internalType":"bytes16","name":"second","type":"bytes16"}],"internalType":"struct Bytes48","name":"value","type":"tuple"}],"internalType":"struct Pcr[]","name":"pcrs","type":"tuple[]"},{"internalType":"string","name":"moduleId","type":"string"}],"internalType":"struct VerifierJournal[]","name":"results","type":"tuple[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cancelOwnershipHandover","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes32[][]","name":"reportCerts","type":"bytes32[][]"}],"name":"checkTrustedIntermediateCerts","outputs":[{"internalType":"uint8[]","name":"","type":"uint8[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"name":"completeOwnershipHandover","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"internalType":"bytes4","name":"selector","type":"bytes4"}],"name":"freezeVerifyRoute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"}],"name":"getVerifierProofId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"}],"name":"getZkConfig","outputs":[{"components":[{"internalType":"bytes32","name":"verifierId","type":"bytes32"},{"internalType":"bytes32","name":"aggregatorId","type":"bytes32"},{"internalType":"address","name":"zkVerifier","type":"address"}],"internalType":"struct ZkCoProcessorConfig","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"internalType":"bytes4","name":"selector","type":"bytes4"}],"name":"getZkVerifier","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTimeDiff","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"result","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"name":"ownershipHandoverExpiresAt","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proofSubmitter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"requestOwnershipHandover","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"certHash","type":"bytes32"}],"name":"revokeCert","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"revoker","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rootCert","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint64","name":"newMaxTimeDiff","type":"uint64"}],"name":"setMaxTimeDiff","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"}],"name":"setProofSubmitter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newRevoker","type":"address"}],"name":"setRevoker","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"newRootCert","type":"bytes32"}],"name":"setRootCert","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"components":[{"internalType":"bytes32","name":"verifierId","type":"bytes32"},{"internalType":"bytes32","name":"aggregatorId","type":"bytes32"},{"internalType":"address","name":"zkVerifier","type":"address"}],"internalType":"struct ZkCoProcessorConfig","name":"config","type":"tuple"},{"internalType":"bytes32","name":"verifierProofId","type":"bytes32"}],"name":"setZkConfiguration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"trustedIntermediateCerts","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"internalType":"bytes32","name":"newAggregatorId","type":"bytes32"}],"name":"updateAggregatorId","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"zkCoProcessor","type":"uint8"},{"internalType":"bytes32","name":"newVerifierId","type":"bytes32"},{"internalType":"bytes32","name":"newVerifierProofId","type":"bytes32"}],"name":"updateVerifierId","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"output","type":"bytes"},{"internalType":"enum ZkCoProcessorType","name":"zkCoprocessor","type":"uint8"},{"internalType":"bytes","name":"proofBytes","type":"bytes"}],"name":"verify","outputs":[{"components":[{"internalType":"enum VerificationResult","name":"result","type":"uint8"},{"internalType":"uint8","name":"trustedCertsPrefixLen","type":"uint8"},{"internalType":"uint64","name":"timestamp","type":"uint64"},{"internalType":"bytes32[]","name":"certs","type":"bytes32[]"},{"internalType":"uint64[]","name":"certExpiries","type":"uint64[]"},{"internalType":"bytes","name":"userData","type":"bytes"},{"internalType":"bytes","name":"nonce","type":"bytes"},{"internalType":"bytes","name":"publicKey","type":"bytes"},{"components":[{"internalType":"uint64","name":"index","type":"uint64"},{"components":[{"internalType":"bytes32","name":"first","type":"bytes32"},{"internalType":"bytes16","name":"second","type":"bytes16"}],"internalType":"struct Bytes48","name":"value","type":"tuple"}],"internalType":"struct Pcr[]","name":"pcrs","type":"tuple[]"},{"internalType":"string","name":"moduleId","type":"string"}],"internalType":"struct VerifierJournal","name":"journal","type":"tuple"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"enum ZkCoProcessorType","name":"","type":"uint8"}],"name":"zkConfig","outputs":[{"internalType":"bytes32","name":"verifierId","type":"bytes32"},{"internalType":"bytes32","name":"aggregatorId","type":"bytes32"},{"internalType":"address","name":"zkVerifier","type":"address"}],"stateMutability":"view","type":"function"}]
608060405234801561000f575f5ffd5b5060405161308138038061308183398101604081905261002e91610517565b886001600160401b03165f0361005757604051635409e3e760e01b815260040160405180910390fd5b865188511461008a57875187516040516334a59dd760e01b81526004810192909252602482015260440160405180910390fd5b600480546001600160401b0319166001600160401b038b161790555f5b885181101561011e578781815181106100c2576100c26105fa565b602002602001015160035f8b84815181106100df576100df6105fa565b60209081029190910181015182528101919091526040015f2080546001600160401b0319166001600160401b03929092169190911790556001016100a7565b506101288a61016f565b610131866101aa565b61013a856101e6565b600180546001600160a01b0319166001600160a01b038616179055610160838383610259565b50505050505050505050610677565b6001600160a01b0316638b78c6d819819055805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a350565b60058190556040518181527f63f2d4dca4c937ba68e57bbddd2b0a3560e5b497593228dbea7372c127c16dc8906020015b60405180910390a150565b6001600160a01b03811661020c57604051629ef5cb60e01b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f6f4e85fb3166a80d086aca6e527682a6c1128bfee79107af6d4216f843e20170906020016101db565b8160025f85600281111561026f5761026f61060e565b60028111156102805761028061060e565b815260208082019290925260409081015f20835181559183015160018301559190910151600290910180546001600160a01b0319166001600160a01b03909216919091179055815115610305578060075f8560028111156102e3576102e361060e565b60028111156102f4576102f461060e565b815260208101919091526040015f20555b7f8c7491c9018c0b332e7d992d1b37db1a61f4c075cb30e237cc826c52c3166cef83838360405161033893929190610622565b60405180910390a1505050565b80516001600160a01b038116811461035b575f5ffd5b919050565b80516001600160401b038116811461035b575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f191681016001600160401b03811182821017156103b2576103b2610376565b604052919050565b5f6001600160401b038211156103d2576103d2610376565b5060051b60200190565b5f82601f8301126103eb575f5ffd5b81516103fe6103f9826103ba565b61038a565b8082825260208201915060208360051b86010192508583111561041f575f5ffd5b602085015b8381101561043c578051835260209283019201610424565b5095945050505050565b5f82601f830112610455575f5ffd5b81516104636103f9826103ba565b8082825260208201915060208360051b860101925085831115610484575f5ffd5b602085015b8381101561043c5761049a81610360565b835260209283019201610489565b80516003811061035b575f5ffd5b5f606082840312156104c6575f5ffd5b604051606081016001600160401b03811182821017156104e8576104e8610376565b60409081528351825260208085015190830152909150819061050b908401610345565b60408201525092915050565b5f5f5f5f5f5f5f5f5f5f6101808b8d031215610531575f5ffd5b61053a8b610345565b995061054860208c01610360565b60408c01519099506001600160401b03811115610563575f5ffd5b61056f8d828e016103dc565b60608d015190995090506001600160401b0381111561058c575f5ffd5b6105988d828e01610446565b60808d015190985096506105b0905060a08c01610345565b94506105be60c08c01610345565b93506105cc60e08c016104a8565b92506105dc8c6101008d016104b6565b91505f6101608c01519050809150509295989b9194979a5092959850565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b60a081016003851061064257634e487b7160e01b5f52602160045260245ffd5b9381528251602080830191909152830151604080830191909152909201516001600160a01b0316606083015260809091015290565b6129fd806106845f395ff3fe6080604052600436106101c5575f3560e01c80638cb50c44116100f2578063dd4a471d11610092578063f2fde38b11610062578063f2fde38b14610521578063f8b507c714610534578063f9f91b1314610560578063fee81cf4146105c6575f5ffd5b8063dd4a471d1461049c578063e3f47695146104d0578063ea9e4857146104ef578063f04e283e1461050e575f5ffd5b8063a12b896a116100cd578063a12b896a14610413578063c9569bc314610432578063cc05c0b31461045e578063d06d55871461047d575f5ffd5b80638cb50c44146103bd5780638da5cb5b146103dc5780639083dd9d146103f4575f5ffd5b80635875335711610168578063715018a611610138578063715018a6146103625780637221e6fc1461036a57806374c183aa1461037f57806386546a491461039e575f5ffd5b806358753357146102cd57806363cd3456146102eb578063674515151461030a5780636d114be314610336575f5ffd5b8063369855e6116101a3578063369855e61461023c5780633a837cc21461027357806354d1f13d1461029257806354fd4d501461029a575f5ffd5b806325692962146101c957806331b361e0146101d357806335dec5d114610205575b5f5ffd5b6101d16105f7565b005b3480156101de575f5ffd5b506101f26101ed366004611b52565b610643565b6040519081526020015b60405180910390f35b348015610210575f5ffd5b50600154610224906001600160a01b031681565b6040516001600160a01b0390911681526020016101fc565b348015610247575f5ffd5b5060045461025b906001600160401b031681565b6040516001600160401b0390911681526020016101fc565b34801561027e575f5ffd5b506101d161028d366004611c17565b61067f565b6101d1610697565b3480156102a5575f5ffd5b5060408051808201825260058152640302e332e360dc1b602082015290516101fc9190611cce565b3480156102d8575f5ffd5b505f54610224906001600160a01b031681565b3480156102f6575f5ffd5b506101d1610305366004611cf7565b6106d0565b348015610315575f5ffd5b50610329610324366004611b52565b61080c565b6040516101fc9190611d28565b348015610341575f5ffd5b50610355610350366004611d96565b61089d565b6040516101fc9190611fff565b6101d16109a4565b348015610375575f5ffd5b506101f260055481565b34801561038a575f5ffd5b506101d1610399366004612011565b6109b7565b3480156103a9575f5ffd5b506101d16103b8366004612028565b6109cb565b3480156103c8575f5ffd5b506101d16103d7366004612011565b610b5f565b3480156103e7575f5ffd5b50638b78c6d81954610224565b3480156103ff575f5ffd5b506101d161040e366004612068565b610c42565b34801561041e575f5ffd5b5061022461042d366004611cf7565b610c93565b34801561043d575f5ffd5b5061045161044c366004611d96565b610d75565b6040516101fc9190612081565b348015610469575f5ffd5b506101d16104783660046120e4565b610fbe565b348015610488575f5ffd5b506101d1610497366004612068565b6110f1565b3480156104a7575f5ffd5b5061025b6104b6366004612011565b60036020525f90815260409020546001600160401b031681565b3480156104db575f5ffd5b506101d16104ea36600461212a565b611102565b3480156104fa575f5ffd5b506101d1610509366004612143565b611182565b6101d161051c366004612068565b61127b565b6101d161052f366004612068565b6112b5565b34801561053f575f5ffd5b5061055361054e36600461216b565b6112db565b6040516101fc91906121da565b34801561056b575f5ffd5b506105a261057a366004611b52565b600260208190525f91825260409091208054600182015491909201546001600160a01b031683565b6040805193845260208401929092526001600160a01b0316908201526060016101fc565b3480156105d1575f5ffd5b506101f26105e0366004612068565b63389a75e1600c9081525f91909152602090205490565b5f6202a3006001600160401b03164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f5fa250565b5f60075f83600281111561065957610659611e15565b600281111561066a5761066a611e15565b81526020019081526020015f20549050919050565b61068761145d565b610692838383611477565b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f5fa2565b6106d861145d565b5f60065f8460028111156106ee576106ee611e15565b60028111156106ff576106ff611e15565b815260208082019290925260409081015f9081206001600160e01b0319861682529092529020546001600160a01b0316905061deac1981016107605782826040516253454d60e31b815260040161075792919061222f565b60405180910390fd5b61dead60065f85600281111561077857610778611e15565b600281111561078957610789611e15565b815260208082019290925260409081015f9081206001600160e01b0319871680835293522080546001600160a01b0319166001600160a01b0393909316929092179091558360028111156107df576107df611e15565b6040517fcdce14b5df954ed0ddf4bd33cc38717ee1c46e06a27d69962dd7f03f70c449c4905f90a3505050565b61083660405180606001604052805f81526020015f81526020015f6001600160a01b031681525090565b60025f83600281111561084b5761084b611e15565b600281111561085c5761085c611e15565b815260208082019290925260409081015f20815160608101835281548152600182015493810193909352600201546001600160a01b03169082015292915050565b6108a5611ae2565b5f546001600160a01b031633146108cf5760405163fe0232c360e01b815260040160405180910390fd5b5f60025f8660028111156108e5576108e5611e15565b60028111156108f6576108f6611e15565b81526020019081526020015f205f01549050610916858289898888611563565b61092286880188612611565b915061092d826116ab565b915084600281111561094157610941611e15565b7f34d71c5db80e3c1db53f6d245503c531894f694aa26c7a967adf77167b126036835f0151846040516020016109779190611fff565b60408051601f1981840301815290829052610992929161264a565b60405180910390a25095945050505050565b6109ac61145d565b6109b55f61184e565b565b6109bf61145d565b6109c88161188b565b50565b6109d361145d565b6001600160a01b0381166109fa57604051630e3ba0af60e01b815260040160405180910390fd5b61deac196001600160a01b03821601610a265760405163043103a360e21b815260040160405180910390fd5b61dead60065f856002811115610a3e57610a3e611e15565b6002811115610a4f57610a4f611e15565b815260208082019290925260409081015f9081206001600160e01b0319871682529092529020546001600160a01b031603610aa05782826040516253454d60e31b815260040161075792919061222f565b8060065f856002811115610ab657610ab6611e15565b6002811115610ac757610ac7611e15565b815260208082019290925260409081015f9081206001600160e01b0319871680835293522080546001600160a01b0319166001600160a01b039390931692909217909155836002811115610b1d57610b1d611e15565b6040516001600160a01b03841681527f760c87aaca384c3dc82d5bcce05884a75cf787ef7f7cacaef26a6822b2831dd4906020015b60405180910390a3505050565b638b78c6d819546001600160a01b0316336001600160a01b031614158015610b9257506001546001600160a01b03163314155b15610bb057604051633ae98a0760e21b815260040160405180910390fd5b5f818152600360205260408120546001600160401b03169003610be957604051630eb0bcc760e31b815260048101829052602401610757565b5f8181526003602052604090819020805467ffffffffffffffff19169055517f49f59bec846fd3588d7d4900a9d7698f294a73043ed6c407d5c2cfa90b8b90d790610c379083815260200190565b60405180910390a150565b610c4a61145d565b600180546001600160a01b0319166001600160a01b0383169081179091556040517f5549026e79f4449c2656308378875b265aaf4002b1ef696785f9439da13d4e36905f90a250565b5f5f60065f856002811115610caa57610caa611e15565b6002811115610cbb57610cbb611e15565b815260208082019290925260409081015f9081206001600160e01b0319871682529092529020546001600160a01b0316905061deac198101610d135783836040516253454d60e31b815260040161075792919061222f565b6001600160a01b038116610d6c5760025f856002811115610d3657610d36611e15565b6002811115610d4757610d47611e15565b815260208101919091526040015f20600201546001600160a01b03169150610d6f9050565b90505b92915050565b5f546060906001600160a01b03163314610da25760405163fe0232c360e01b815260040160405180910390fd5b5f60025f866002811115610db857610db8611e15565b6002811115610dc957610dc9611e15565b81526020019081526020015f206001015490505f60025f876002811115610df257610df2611e15565b6002811115610e0357610e03611e15565b81526020019081526020015f205f015490505f60075f886002811115610e2b57610e2b611e15565b6002811115610e3c57610e3c611e15565b81526020019081526020015f20549050610e5a87848b8b8a8a611563565b5f610e67898b018b612669565b80519091508214610e9857805160405163086e561f60e21b8152610757918491600401918252602082015260400190565b602081015151806001600160401b03811115610eb657610eb6611b72565b604051908082528060200260200182016040528015610eef57816020015b610edc611ae2565b815260200190600190039081610ed45790505b5095505f5b81811015610f4757610f2283602001518281518110610f1557610f15612757565b60200260200101516116ab565b878281518110610f3457610f34612757565b6020908102919091010152600101610ef4565b50886002811115610f5a57610f5a611e15565b7fdfa767ad54931d8d889f34b418a66f09a0bec3406debbd9decbb8ce919c24ffe8588604051602001610f8d9190612081565b60408051601f1981840301815290829052610fa8929161276b565b60405180910390a2505050505095945050505050565b610fc661145d565b81610fe4576040516341a463a560e01b815260040160405180910390fd5b8160025f856002811115610ffa57610ffa611e15565b600281111561100b5761100b611e15565b81526020019081526020015f205f01540361103d578282604051633cf7da7760e21b8152600401610757929190612783565b8160025f85600281111561105357611053611e15565b600281111561106457611064611e15565b81526020019081526020015f205f01819055508060075f85600281111561108d5761108d611e15565b600281111561109e5761109e611e15565b815260208101919091526040015f2055818360028111156110c1576110c1611e15565b6040518381527f51084eb34dac0e8c796b2741ed1a6fed727311fc435b0af0dac30f0581dbce4990602001610b52565b6110f961145d565b6109c8816118c0565b61110a61145d565b806001600160401b03165f0361113357604051635409e3e760e01b815260040160405180910390fd5b6004805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fc620470b92e1af69c914495bff0725d3f9ddef58f4e3dad2d2e5b2f4bf63f0e390602001610c37565b61118a61145d565b806111a8576040516341a463a560e01b815260040160405180910390fd5b8060025f8460028111156111be576111be611e15565b60028111156111cf576111cf611e15565b81526020019081526020015f206001015403611202578181604051633cf7da7760e21b8152600401610757929190612783565b8060025f84600281111561121857611218611e15565b600281111561122957611229611e15565b815260208101919091526040015f20600101558082600281111561124f5761124f611e15565b6040517fa13c7e79c76dcced91cc62c49db73a3a02935aef810eea7b7942625e94bc4070905f90a35050565b61128361145d565b63389a75e1600c52805f526020600c2080544211156112a957636f5e88185f526004601cfd5b5f90556109c88161184e565b6112bd61145d565b8060601b6112d257637448fbae5f526004601cfd5b6109c88161184e565b60605f826001600160401b038111156112f6576112f6611b72565b60405190808252806020026020018201604052801561131f578160200160208202803683370190505b506005549091505f5b8481101561145357365f87878481811061134457611344612757565b9050602002810190611356919061279e565b909250905060018483835f8161136e5761136e612757565b90506020020135146113b8578483835f81811061138d5761138d612757565b9050602002013560405163e4ac496b60e01b8152600401610757929190918252602082015260400190565b60015b82811015611421575f60035f8686858181106113d9576113d9612757565b602090810292909201358352508101919091526040015f20546001600160401b031690504281101561140b5750611421565b6114166001846127f7565b9250506001016113bb565b508086858151811061143557611435612757565b60ff9290921660209283029190910190910152505050600101611328565b5090949350505050565b638b78c6d8195433146109b5576382b429005f526004601cfd5b8160025f85600281111561148d5761148d611e15565b600281111561149e5761149e611e15565b815260208082019290925260409081015f20835181559183015160018301559190910151600290910180546001600160a01b0319166001600160a01b03909216919091179055815115611523578060075f85600281111561150157611501611e15565b600281111561151257611512611e15565b815260208101919091526040015f20555b7f8c7491c9018c0b332e7d992d1b37db1a61f4c075cb30e237cc826c52c3166cef83838360405161155693929190612810565b60405180910390a1505050565b5f61156f878484611933565b9050600187600281111561158557611585611e15565b0361163c57806001600160a01b031663ab750e7584848960028a8a6040516115ae929190612856565b602060405180830381855afa1580156115c9573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906115ec9190612865565b6040518563ffffffff1660e01b815260040161160b94939291906128a4565b5f6040518083038186803b158015611621575f5ffd5b505afa158015611633573d5f5f3e3d5ffd5b505050506116a2565b600287600281111561165057611650611e15565b036116895760405163020a49e360e51b81526001600160a01b038216906341493c609061160b90899089908990899089906004016128ca565b60405163146af65760e21b815260040160405180910390fd5b50505050505050565b6116b3611ae2565b6001825160048111156116c8576116c8611e15565b146116d1575090565b816020015160ff165f036116e757506002815290565b5f5b826020015160ff16811015611788575f8360600151828151811061170f5761170f612757565b60200260200101519050815f0361175157600554811461174b578360025b9081600481111561174057611740611e15565b905250929392505050565b50611780565b5f818152600360205260409020546001600160401b03164281101561177d575050600383525090919050565b50505b6001016116e9565b50602082015160ff165b8260600151518110156117e2575f836080015182815181106117b6576117b6612757565b60200260200101519050806001600160401b03164211156117d95783600461172d565b50600101611792565b505f6103e883604001516117f69190612902565b6004549091504290611811906001600160401b03168361293b565b6001600160401b0316111580611830575042816001600160401b031610155b1561183e5750506004815290565b61184783611a51565b5090919050565b638b78c6d81980546001600160a01b039092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b60058190556040518181527f63f2d4dca4c937ba68e57bbddd2b0a3560e5b497593228dbea7372c127c16dc890602001610c37565b6001600160a01b0381166118e657604051629ef5cb60e01b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f6f4e85fb3166a80d086aca6e527682a6c1128bfee79107af6d4216f843e2017090602001610c37565b5f80611942600482858761295a565b61194b91612981565b90505f60065f87600281111561196357611963611e15565b600281111561197457611974611e15565b815260208082019290925260409081015f9081206001600160e01b0319861682529092529020546001600160a01b0316905061deac1981016119cc5785826040516253454d60e31b815260040161075792919061222f565b6001600160a01b038116611a1f5760025f8760028111156119ef576119ef611e15565b6002811115611a0057611a00611e15565b815260208101919091526040015f20600201546001600160a01b031690505b6001600160a01b038116611a485785604051636725e36b60e11b815260040161075791906129b9565b95945050505050565b602081015160ff165b816060015151811015611ade575f82606001518281518110611a7e57611a7e612757565b6020026020010151905082608001518281518110611a9e57611a9e612757565b6020908102919091018101515f92835260039091526040909120805467ffffffffffffffff19166001600160401b03909216919091179055600101611a5a565b5050565b604080516101408101909152805f81526020015f60ff1681526020015f6001600160401b03168152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081525090565b803560038110611b4d575f5ffd5b919050565b5f60208284031215611b62575f5ffd5b611b6b82611b3f565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715611ba857611ba8611b72565b60405290565b60405161014081016001600160401b0381118282101715611ba857611ba8611b72565b604051601f8201601f191681016001600160401b0381118282101715611bf957611bf9611b72565b604052919050565b80356001600160a01b0381168114611b4d575f5ffd5b5f5f5f83850360a0811215611c2a575f5ffd5b611c3385611b3f565b93506060601f1982011215611c46575f5ffd5b50604051606081016001600160401b0381118282101715611c6957611c69611b72565b604090815260208681013583529086013590820152611c8a60608601611c01565b6040820152929592945050506080919091013590565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f611b6b6020830184611ca0565b80356001600160e01b031981168114611b4d575f5ffd5b5f5f60408385031215611d08575f5ffd5b611d1183611b3f565b9150611d1f60208401611ce0565b90509250929050565b81518152602080830151908201526040808301516001600160a01b03169082015260608101610d6f565b5f5f83601f840112611d62575f5ffd5b5081356001600160401b03811115611d78575f5ffd5b602083019150836020828501011115611d8f575f5ffd5b9250929050565b5f5f5f5f5f60608688031215611daa575f5ffd5b85356001600160401b03811115611dbf575f5ffd5b611dcb88828901611d52565b9096509450611dde905060208701611b3f565b925060408601356001600160401b03811115611df8575f5ffd5b611e0488828901611d52565b969995985093965092949392505050565b634e487b7160e01b5f52602160045260245ffd5b60058110611e3957611e39611e15565b9052565b5f8151808452602084019350602083015f5b82811015611e6d578151865260209586019590910190600101611e4f565b5093949350505050565b5f8151808452602084019350602083015f5b82811015611e6d5781516001600160401b0316865260209586019590910190600101611e89565b5f8151808452602084019350602083015f5b82811015611e6d57815180516001600160401b031687526020908101518051828901528101516001600160801b031916604088015260609096019590910190600101611ec2565b611f14828251611e29565b5f6020820151611f29602085018260ff169052565b506040820151611f4460408501826001600160401b03169052565b5060608201516101406060850152611f60610140850182611e3d565b905060808301518482036080860152611f798282611e77565b91505060a083015184820360a0860152611f938282611ca0565b91505060c083015184820360c0860152611fad8282611ca0565b91505060e083015184820360e0860152611fc78282611ca0565b915050610100830151848203610100860152611fe38282611eb0565b915050610120830151848203610120860152611a488282611ca0565b602081525f611b6b6020830184611f09565b5f60208284031215612021575f5ffd5b5035919050565b5f5f5f6060848603121561203a575f5ffd5b61204384611b3f565b925061205160208501611ce0565b915061205f60408501611c01565b90509250925092565b5f60208284031215612078575f5ffd5b611b6b82611c01565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b828110156120d857603f198786030184526120c3858351611f09565b945060209384019391909101906001016120a7565b50929695505050505050565b5f5f5f606084860312156120f6575f5ffd5b6120ff84611b3f565b95602085013595506040909401359392505050565b80356001600160401b0381168114611b4d575f5ffd5b5f6020828403121561213a575f5ffd5b611b6b82612114565b5f5f60408385031215612154575f5ffd5b61215d83611b3f565b946020939093013593505050565b5f5f6020838503121561217c575f5ffd5b82356001600160401b03811115612191575f5ffd5b8301601f810185136121a1575f5ffd5b80356001600160401b038111156121b6575f5ffd5b8560208260051b84010111156121ca575f5ffd5b6020919091019590945092505050565b602080825282518282018190525f918401906040840190835b8181101561221457835160ff168352602093840193909201916001016121f3565b509095945050505050565b60038110611e3957611e39611e15565b6040810161223d828561221f565b63ffffffff60e01b831660208301529392505050565b803560058110611b4d575f5ffd5b803560ff81168114611b4d575f5ffd5b5f6001600160401b0382111561228957612289611b72565b5060051b60200190565b5f82601f8301126122a2575f5ffd5b81356122b56122b082612271565b611bd1565b8082825260208201915060208360051b8601019250858311156122d6575f5ffd5b602085015b838110156122f35780358352602092830192016122db565b5095945050505050565b5f82601f83011261230c575f5ffd5b813561231a6122b082612271565b8082825260208201915060208360051b86010192508583111561233b575f5ffd5b602085015b838110156122f35761235181612114565b835260209283019201612340565b5f82601f83011261236e575f5ffd5b8135602083015f5f6001600160401b0384111561238d5761238d611b72565b50601f8301601f19166020016123a281611bd1565b9150508281528583830111156123b6575f5ffd5b828260208301375f92810160200192909252509392505050565b5f82601f8301126123df575f5ffd5b81356123ed6122b082612271565b8082825260208201915060206060840286010192508583111561240e575f5ffd5b602085015b838110156122f357808703606081121561242b575f5ffd5b612433611b86565b61243c83612114565b81526040601f198301121561244f575f5ffd5b612457611b86565b60208401358152915060408301356001600160801b03198116811461247a575f5ffd5b6020838101919091528181019290925284529290920191606001612413565b5f61014082840312156124aa575f5ffd5b6124b2611bae565b90506124bd82612253565b81526124cb60208301612261565b60208201526124dc60408301612114565b604082015260608201356001600160401b038111156124f9575f5ffd5b61250584828501612293565b60608301525060808201356001600160401b03811115612523575f5ffd5b61252f848285016122fd565b60808301525060a08201356001600160401b0381111561254d575f5ffd5b6125598482850161235f565b60a08301525060c08201356001600160401b03811115612577575f5ffd5b6125838482850161235f565b60c08301525060e08201356001600160401b038111156125a1575f5ffd5b6125ad8482850161235f565b60e0830152506101008201356001600160401b038111156125cc575f5ffd5b6125d8848285016123d0565b610100830152506101208201356001600160401b038111156125f8575f5ffd5b6126048482850161235f565b6101208301525092915050565b5f60208284031215612621575f5ffd5b81356001600160401b03811115612636575f5ffd5b61264284828501612499565b949350505050565b6126548184611e29565b604060208201525f6126426040830184611ca0565b5f60208284031215612679575f5ffd5b81356001600160401b0381111561268e575f5ffd5b82016040818503121561269f575f5ffd5b6126a7611b86565b8135815260208201356001600160401b038111156126c3575f5ffd5b80830192505084601f8301126126d7575f5ffd5b81356126e56122b082612271565b8082825260208201915060208360051b860101925087831115612706575f5ffd5b602085015b838110156127465780356001600160401b03811115612728575f5ffd5b6127378a6020838a0101612499565b8452506020928301920161270b565b506020840152509095945050505050565b634e487b7160e01b5f52603260045260245ffd5b828152604060208201525f6126426040830184611ca0565b60408101612791828561221f565b8260208301529392505050565b5f5f8335601e198436030181126127b3575f5ffd5b8301803591506001600160401b038211156127cc575f5ffd5b6020019150600581901b3603821315611d8f575f5ffd5b634e487b7160e01b5f52601160045260245ffd5b60ff8181168382160190811115610d6f57610d6f6127e3565b60a0810161281e828661221f565b612848602083018580518252602080820151908301526040908101516001600160a01b0316910152565b826080830152949350505050565b818382375f9101908152919050565b5f60208284031215612875575f5ffd5b5051919050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b606081525f6128b760608301868861287c565b6020830194909452506040015292915050565b858152606060208201525f6128e360608301868861287c565b82810360408401526128f681858761287c565b98975050505050505050565b5f6001600160401b0383168061292657634e487b7160e01b5f52601260045260245ffd5b806001600160401b0384160491505092915050565b6001600160401b038181168382160190811115610d6f57610d6f6127e3565b5f5f85851115612968575f5ffd5b83861115612974575f5ffd5b5050820193919092039150565b80356001600160e01b031981169060048410156129b2576001600160e01b0319600485900360031b81901b82161691505b5092915050565b60208101610d6f828461221f56fea264697066735822122045325784d39fdaa0362143aea241c6924573a911af0ecf4716bdba6d7dc61d7164736f6c634300081e00330000000000000000000000008c1a617bdb47342f9c17ac8750e0b070c372c7210000000000000000000000000000000000000000000000000000000000000e10000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001a0641a0321a3e244efe456463195d606317ed7cdcc3c1756e09893f3c68f79bb5b000000000000000000000000646132a1667ca7ad00d36616afba1a28116c770a0000000000000000000000008074b32bd7d06c8f27596f3d6fbf867a36ea22a3000000000000000000000000000000000000000000000000000000000000000115051db631d6ed382d957c795a558a0abdd00d0d22a1670455721bc2712d3d6e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000925d8331ddc0a1f0d96e68cf073dfe1d92b69187000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106101c5575f3560e01c80638cb50c44116100f2578063dd4a471d11610092578063f2fde38b11610062578063f2fde38b14610521578063f8b507c714610534578063f9f91b1314610560578063fee81cf4146105c6575f5ffd5b8063dd4a471d1461049c578063e3f47695146104d0578063ea9e4857146104ef578063f04e283e1461050e575f5ffd5b8063a12b896a116100cd578063a12b896a14610413578063c9569bc314610432578063cc05c0b31461045e578063d06d55871461047d575f5ffd5b80638cb50c44146103bd5780638da5cb5b146103dc5780639083dd9d146103f4575f5ffd5b80635875335711610168578063715018a611610138578063715018a6146103625780637221e6fc1461036a57806374c183aa1461037f57806386546a491461039e575f5ffd5b806358753357146102cd57806363cd3456146102eb578063674515151461030a5780636d114be314610336575f5ffd5b8063369855e6116101a3578063369855e61461023c5780633a837cc21461027357806354d1f13d1461029257806354fd4d501461029a575f5ffd5b806325692962146101c957806331b361e0146101d357806335dec5d114610205575b5f5ffd5b6101d16105f7565b005b3480156101de575f5ffd5b506101f26101ed366004611b52565b610643565b6040519081526020015b60405180910390f35b348015610210575f5ffd5b50600154610224906001600160a01b031681565b6040516001600160a01b0390911681526020016101fc565b348015610247575f5ffd5b5060045461025b906001600160401b031681565b6040516001600160401b0390911681526020016101fc565b34801561027e575f5ffd5b506101d161028d366004611c17565b61067f565b6101d1610697565b3480156102a5575f5ffd5b5060408051808201825260058152640302e332e360dc1b602082015290516101fc9190611cce565b3480156102d8575f5ffd5b505f54610224906001600160a01b031681565b3480156102f6575f5ffd5b506101d1610305366004611cf7565b6106d0565b348015610315575f5ffd5b50610329610324366004611b52565b61080c565b6040516101fc9190611d28565b348015610341575f5ffd5b50610355610350366004611d96565b61089d565b6040516101fc9190611fff565b6101d16109a4565b348015610375575f5ffd5b506101f260055481565b34801561038a575f5ffd5b506101d1610399366004612011565b6109b7565b3480156103a9575f5ffd5b506101d16103b8366004612028565b6109cb565b3480156103c8575f5ffd5b506101d16103d7366004612011565b610b5f565b3480156103e7575f5ffd5b50638b78c6d81954610224565b3480156103ff575f5ffd5b506101d161040e366004612068565b610c42565b34801561041e575f5ffd5b5061022461042d366004611cf7565b610c93565b34801561043d575f5ffd5b5061045161044c366004611d96565b610d75565b6040516101fc9190612081565b348015610469575f5ffd5b506101d16104783660046120e4565b610fbe565b348015610488575f5ffd5b506101d1610497366004612068565b6110f1565b3480156104a7575f5ffd5b5061025b6104b6366004612011565b60036020525f90815260409020546001600160401b031681565b3480156104db575f5ffd5b506101d16104ea36600461212a565b611102565b3480156104fa575f5ffd5b506101d1610509366004612143565b611182565b6101d161051c366004612068565b61127b565b6101d161052f366004612068565b6112b5565b34801561053f575f5ffd5b5061055361054e36600461216b565b6112db565b6040516101fc91906121da565b34801561056b575f5ffd5b506105a261057a366004611b52565b600260208190525f91825260409091208054600182015491909201546001600160a01b031683565b6040805193845260208401929092526001600160a01b0316908201526060016101fc565b3480156105d1575f5ffd5b506101f26105e0366004612068565b63389a75e1600c9081525f91909152602090205490565b5f6202a3006001600160401b03164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f5fa250565b5f60075f83600281111561065957610659611e15565b600281111561066a5761066a611e15565b81526020019081526020015f20549050919050565b61068761145d565b610692838383611477565b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f5fa2565b6106d861145d565b5f60065f8460028111156106ee576106ee611e15565b60028111156106ff576106ff611e15565b815260208082019290925260409081015f9081206001600160e01b0319861682529092529020546001600160a01b0316905061deac1981016107605782826040516253454d60e31b815260040161075792919061222f565b60405180910390fd5b61dead60065f85600281111561077857610778611e15565b600281111561078957610789611e15565b815260208082019290925260409081015f9081206001600160e01b0319871680835293522080546001600160a01b0319166001600160a01b0393909316929092179091558360028111156107df576107df611e15565b6040517fcdce14b5df954ed0ddf4bd33cc38717ee1c46e06a27d69962dd7f03f70c449c4905f90a3505050565b61083660405180606001604052805f81526020015f81526020015f6001600160a01b031681525090565b60025f83600281111561084b5761084b611e15565b600281111561085c5761085c611e15565b815260208082019290925260409081015f20815160608101835281548152600182015493810193909352600201546001600160a01b03169082015292915050565b6108a5611ae2565b5f546001600160a01b031633146108cf5760405163fe0232c360e01b815260040160405180910390fd5b5f60025f8660028111156108e5576108e5611e15565b60028111156108f6576108f6611e15565b81526020019081526020015f205f01549050610916858289898888611563565b61092286880188612611565b915061092d826116ab565b915084600281111561094157610941611e15565b7f34d71c5db80e3c1db53f6d245503c531894f694aa26c7a967adf77167b126036835f0151846040516020016109779190611fff565b60408051601f1981840301815290829052610992929161264a565b60405180910390a25095945050505050565b6109ac61145d565b6109b55f61184e565b565b6109bf61145d565b6109c88161188b565b50565b6109d361145d565b6001600160a01b0381166109fa57604051630e3ba0af60e01b815260040160405180910390fd5b61deac196001600160a01b03821601610a265760405163043103a360e21b815260040160405180910390fd5b61dead60065f856002811115610a3e57610a3e611e15565b6002811115610a4f57610a4f611e15565b815260208082019290925260409081015f9081206001600160e01b0319871682529092529020546001600160a01b031603610aa05782826040516253454d60e31b815260040161075792919061222f565b8060065f856002811115610ab657610ab6611e15565b6002811115610ac757610ac7611e15565b815260208082019290925260409081015f9081206001600160e01b0319871680835293522080546001600160a01b0319166001600160a01b039390931692909217909155836002811115610b1d57610b1d611e15565b6040516001600160a01b03841681527f760c87aaca384c3dc82d5bcce05884a75cf787ef7f7cacaef26a6822b2831dd4906020015b60405180910390a3505050565b638b78c6d819546001600160a01b0316336001600160a01b031614158015610b9257506001546001600160a01b03163314155b15610bb057604051633ae98a0760e21b815260040160405180910390fd5b5f818152600360205260408120546001600160401b03169003610be957604051630eb0bcc760e31b815260048101829052602401610757565b5f8181526003602052604090819020805467ffffffffffffffff19169055517f49f59bec846fd3588d7d4900a9d7698f294a73043ed6c407d5c2cfa90b8b90d790610c379083815260200190565b60405180910390a150565b610c4a61145d565b600180546001600160a01b0319166001600160a01b0383169081179091556040517f5549026e79f4449c2656308378875b265aaf4002b1ef696785f9439da13d4e36905f90a250565b5f5f60065f856002811115610caa57610caa611e15565b6002811115610cbb57610cbb611e15565b815260208082019290925260409081015f9081206001600160e01b0319871682529092529020546001600160a01b0316905061deac198101610d135783836040516253454d60e31b815260040161075792919061222f565b6001600160a01b038116610d6c5760025f856002811115610d3657610d36611e15565b6002811115610d4757610d47611e15565b815260208101919091526040015f20600201546001600160a01b03169150610d6f9050565b90505b92915050565b5f546060906001600160a01b03163314610da25760405163fe0232c360e01b815260040160405180910390fd5b5f60025f866002811115610db857610db8611e15565b6002811115610dc957610dc9611e15565b81526020019081526020015f206001015490505f60025f876002811115610df257610df2611e15565b6002811115610e0357610e03611e15565b81526020019081526020015f205f015490505f60075f886002811115610e2b57610e2b611e15565b6002811115610e3c57610e3c611e15565b81526020019081526020015f20549050610e5a87848b8b8a8a611563565b5f610e67898b018b612669565b80519091508214610e9857805160405163086e561f60e21b8152610757918491600401918252602082015260400190565b602081015151806001600160401b03811115610eb657610eb6611b72565b604051908082528060200260200182016040528015610eef57816020015b610edc611ae2565b815260200190600190039081610ed45790505b5095505f5b81811015610f4757610f2283602001518281518110610f1557610f15612757565b60200260200101516116ab565b878281518110610f3457610f34612757565b6020908102919091010152600101610ef4565b50886002811115610f5a57610f5a611e15565b7fdfa767ad54931d8d889f34b418a66f09a0bec3406debbd9decbb8ce919c24ffe8588604051602001610f8d9190612081565b60408051601f1981840301815290829052610fa8929161276b565b60405180910390a2505050505095945050505050565b610fc661145d565b81610fe4576040516341a463a560e01b815260040160405180910390fd5b8160025f856002811115610ffa57610ffa611e15565b600281111561100b5761100b611e15565b81526020019081526020015f205f01540361103d578282604051633cf7da7760e21b8152600401610757929190612783565b8160025f85600281111561105357611053611e15565b600281111561106457611064611e15565b81526020019081526020015f205f01819055508060075f85600281111561108d5761108d611e15565b600281111561109e5761109e611e15565b815260208101919091526040015f2055818360028111156110c1576110c1611e15565b6040518381527f51084eb34dac0e8c796b2741ed1a6fed727311fc435b0af0dac30f0581dbce4990602001610b52565b6110f961145d565b6109c8816118c0565b61110a61145d565b806001600160401b03165f0361113357604051635409e3e760e01b815260040160405180910390fd5b6004805467ffffffffffffffff19166001600160401b0383169081179091556040519081527fc620470b92e1af69c914495bff0725d3f9ddef58f4e3dad2d2e5b2f4bf63f0e390602001610c37565b61118a61145d565b806111a8576040516341a463a560e01b815260040160405180910390fd5b8060025f8460028111156111be576111be611e15565b60028111156111cf576111cf611e15565b81526020019081526020015f206001015403611202578181604051633cf7da7760e21b8152600401610757929190612783565b8060025f84600281111561121857611218611e15565b600281111561122957611229611e15565b815260208101919091526040015f20600101558082600281111561124f5761124f611e15565b6040517fa13c7e79c76dcced91cc62c49db73a3a02935aef810eea7b7942625e94bc4070905f90a35050565b61128361145d565b63389a75e1600c52805f526020600c2080544211156112a957636f5e88185f526004601cfd5b5f90556109c88161184e565b6112bd61145d565b8060601b6112d257637448fbae5f526004601cfd5b6109c88161184e565b60605f826001600160401b038111156112f6576112f6611b72565b60405190808252806020026020018201604052801561131f578160200160208202803683370190505b506005549091505f5b8481101561145357365f87878481811061134457611344612757565b9050602002810190611356919061279e565b909250905060018483835f8161136e5761136e612757565b90506020020135146113b8578483835f81811061138d5761138d612757565b9050602002013560405163e4ac496b60e01b8152600401610757929190918252602082015260400190565b60015b82811015611421575f60035f8686858181106113d9576113d9612757565b602090810292909201358352508101919091526040015f20546001600160401b031690504281101561140b5750611421565b6114166001846127f7565b9250506001016113bb565b508086858151811061143557611435612757565b60ff9290921660209283029190910190910152505050600101611328565b5090949350505050565b638b78c6d8195433146109b5576382b429005f526004601cfd5b8160025f85600281111561148d5761148d611e15565b600281111561149e5761149e611e15565b815260208082019290925260409081015f20835181559183015160018301559190910151600290910180546001600160a01b0319166001600160a01b03909216919091179055815115611523578060075f85600281111561150157611501611e15565b600281111561151257611512611e15565b815260208101919091526040015f20555b7f8c7491c9018c0b332e7d992d1b37db1a61f4c075cb30e237cc826c52c3166cef83838360405161155693929190612810565b60405180910390a1505050565b5f61156f878484611933565b9050600187600281111561158557611585611e15565b0361163c57806001600160a01b031663ab750e7584848960028a8a6040516115ae929190612856565b602060405180830381855afa1580156115c9573d5f5f3e3d5ffd5b5050506040513d601f19601f820116820180604052508101906115ec9190612865565b6040518563ffffffff1660e01b815260040161160b94939291906128a4565b5f6040518083038186803b158015611621575f5ffd5b505afa158015611633573d5f5f3e3d5ffd5b505050506116a2565b600287600281111561165057611650611e15565b036116895760405163020a49e360e51b81526001600160a01b038216906341493c609061160b90899089908990899089906004016128ca565b60405163146af65760e21b815260040160405180910390fd5b50505050505050565b6116b3611ae2565b6001825160048111156116c8576116c8611e15565b146116d1575090565b816020015160ff165f036116e757506002815290565b5f5b826020015160ff16811015611788575f8360600151828151811061170f5761170f612757565b60200260200101519050815f0361175157600554811461174b578360025b9081600481111561174057611740611e15565b905250929392505050565b50611780565b5f818152600360205260409020546001600160401b03164281101561177d575050600383525090919050565b50505b6001016116e9565b50602082015160ff165b8260600151518110156117e2575f836080015182815181106117b6576117b6612757565b60200260200101519050806001600160401b03164211156117d95783600461172d565b50600101611792565b505f6103e883604001516117f69190612902565b6004549091504290611811906001600160401b03168361293b565b6001600160401b0316111580611830575042816001600160401b031610155b1561183e5750506004815290565b61184783611a51565b5090919050565b638b78c6d81980546001600160a01b039092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a355565b60058190556040518181527f63f2d4dca4c937ba68e57bbddd2b0a3560e5b497593228dbea7372c127c16dc890602001610c37565b6001600160a01b0381166118e657604051629ef5cb60e01b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f6f4e85fb3166a80d086aca6e527682a6c1128bfee79107af6d4216f843e2017090602001610c37565b5f80611942600482858761295a565b61194b91612981565b90505f60065f87600281111561196357611963611e15565b600281111561197457611974611e15565b815260208082019290925260409081015f9081206001600160e01b0319861682529092529020546001600160a01b0316905061deac1981016119cc5785826040516253454d60e31b815260040161075792919061222f565b6001600160a01b038116611a1f5760025f8760028111156119ef576119ef611e15565b6002811115611a0057611a00611e15565b815260208101919091526040015f20600201546001600160a01b031690505b6001600160a01b038116611a485785604051636725e36b60e11b815260040161075791906129b9565b95945050505050565b602081015160ff165b816060015151811015611ade575f82606001518281518110611a7e57611a7e612757565b6020026020010151905082608001518281518110611a9e57611a9e612757565b6020908102919091018101515f92835260039091526040909120805467ffffffffffffffff19166001600160401b03909216919091179055600101611a5a565b5050565b604080516101408101909152805f81526020015f60ff1681526020015f6001600160401b03168152602001606081526020016060815260200160608152602001606081526020016060815260200160608152602001606081525090565b803560038110611b4d575f5ffd5b919050565b5f60208284031215611b62575f5ffd5b611b6b82611b3f565b9392505050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b0381118282101715611ba857611ba8611b72565b60405290565b60405161014081016001600160401b0381118282101715611ba857611ba8611b72565b604051601f8201601f191681016001600160401b0381118282101715611bf957611bf9611b72565b604052919050565b80356001600160a01b0381168114611b4d575f5ffd5b5f5f5f83850360a0811215611c2a575f5ffd5b611c3385611b3f565b93506060601f1982011215611c46575f5ffd5b50604051606081016001600160401b0381118282101715611c6957611c69611b72565b604090815260208681013583529086013590820152611c8a60608601611c01565b6040820152929592945050506080919091013590565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f611b6b6020830184611ca0565b80356001600160e01b031981168114611b4d575f5ffd5b5f5f60408385031215611d08575f5ffd5b611d1183611b3f565b9150611d1f60208401611ce0565b90509250929050565b81518152602080830151908201526040808301516001600160a01b03169082015260608101610d6f565b5f5f83601f840112611d62575f5ffd5b5081356001600160401b03811115611d78575f5ffd5b602083019150836020828501011115611d8f575f5ffd5b9250929050565b5f5f5f5f5f60608688031215611daa575f5ffd5b85356001600160401b03811115611dbf575f5ffd5b611dcb88828901611d52565b9096509450611dde905060208701611b3f565b925060408601356001600160401b03811115611df8575f5ffd5b611e0488828901611d52565b969995985093965092949392505050565b634e487b7160e01b5f52602160045260245ffd5b60058110611e3957611e39611e15565b9052565b5f8151808452602084019350602083015f5b82811015611e6d578151865260209586019590910190600101611e4f565b5093949350505050565b5f8151808452602084019350602083015f5b82811015611e6d5781516001600160401b0316865260209586019590910190600101611e89565b5f8151808452602084019350602083015f5b82811015611e6d57815180516001600160401b031687526020908101518051828901528101516001600160801b031916604088015260609096019590910190600101611ec2565b611f14828251611e29565b5f6020820151611f29602085018260ff169052565b506040820151611f4460408501826001600160401b03169052565b5060608201516101406060850152611f60610140850182611e3d565b905060808301518482036080860152611f798282611e77565b91505060a083015184820360a0860152611f938282611ca0565b91505060c083015184820360c0860152611fad8282611ca0565b91505060e083015184820360e0860152611fc78282611ca0565b915050610100830151848203610100860152611fe38282611eb0565b915050610120830151848203610120860152611a488282611ca0565b602081525f611b6b6020830184611f09565b5f60208284031215612021575f5ffd5b5035919050565b5f5f5f6060848603121561203a575f5ffd5b61204384611b3f565b925061205160208501611ce0565b915061205f60408501611c01565b90509250925092565b5f60208284031215612078575f5ffd5b611b6b82611c01565b5f602082016020835280845180835260408501915060408160051b8601019250602086015f5b828110156120d857603f198786030184526120c3858351611f09565b945060209384019391909101906001016120a7565b50929695505050505050565b5f5f5f606084860312156120f6575f5ffd5b6120ff84611b3f565b95602085013595506040909401359392505050565b80356001600160401b0381168114611b4d575f5ffd5b5f6020828403121561213a575f5ffd5b611b6b82612114565b5f5f60408385031215612154575f5ffd5b61215d83611b3f565b946020939093013593505050565b5f5f6020838503121561217c575f5ffd5b82356001600160401b03811115612191575f5ffd5b8301601f810185136121a1575f5ffd5b80356001600160401b038111156121b6575f5ffd5b8560208260051b84010111156121ca575f5ffd5b6020919091019590945092505050565b602080825282518282018190525f918401906040840190835b8181101561221457835160ff168352602093840193909201916001016121f3565b509095945050505050565b60038110611e3957611e39611e15565b6040810161223d828561221f565b63ffffffff60e01b831660208301529392505050565b803560058110611b4d575f5ffd5b803560ff81168114611b4d575f5ffd5b5f6001600160401b0382111561228957612289611b72565b5060051b60200190565b5f82601f8301126122a2575f5ffd5b81356122b56122b082612271565b611bd1565b8082825260208201915060208360051b8601019250858311156122d6575f5ffd5b602085015b838110156122f35780358352602092830192016122db565b5095945050505050565b5f82601f83011261230c575f5ffd5b813561231a6122b082612271565b8082825260208201915060208360051b86010192508583111561233b575f5ffd5b602085015b838110156122f35761235181612114565b835260209283019201612340565b5f82601f83011261236e575f5ffd5b8135602083015f5f6001600160401b0384111561238d5761238d611b72565b50601f8301601f19166020016123a281611bd1565b9150508281528583830111156123b6575f5ffd5b828260208301375f92810160200192909252509392505050565b5f82601f8301126123df575f5ffd5b81356123ed6122b082612271565b8082825260208201915060206060840286010192508583111561240e575f5ffd5b602085015b838110156122f357808703606081121561242b575f5ffd5b612433611b86565b61243c83612114565b81526040601f198301121561244f575f5ffd5b612457611b86565b60208401358152915060408301356001600160801b03198116811461247a575f5ffd5b6020838101919091528181019290925284529290920191606001612413565b5f61014082840312156124aa575f5ffd5b6124b2611bae565b90506124bd82612253565b81526124cb60208301612261565b60208201526124dc60408301612114565b604082015260608201356001600160401b038111156124f9575f5ffd5b61250584828501612293565b60608301525060808201356001600160401b03811115612523575f5ffd5b61252f848285016122fd565b60808301525060a08201356001600160401b0381111561254d575f5ffd5b6125598482850161235f565b60a08301525060c08201356001600160401b03811115612577575f5ffd5b6125838482850161235f565b60c08301525060e08201356001600160401b038111156125a1575f5ffd5b6125ad8482850161235f565b60e0830152506101008201356001600160401b038111156125cc575f5ffd5b6125d8848285016123d0565b610100830152506101208201356001600160401b038111156125f8575f5ffd5b6126048482850161235f565b6101208301525092915050565b5f60208284031215612621575f5ffd5b81356001600160401b03811115612636575f5ffd5b61264284828501612499565b949350505050565b6126548184611e29565b604060208201525f6126426040830184611ca0565b5f60208284031215612679575f5ffd5b81356001600160401b0381111561268e575f5ffd5b82016040818503121561269f575f5ffd5b6126a7611b86565b8135815260208201356001600160401b038111156126c3575f5ffd5b80830192505084601f8301126126d7575f5ffd5b81356126e56122b082612271565b8082825260208201915060208360051b860101925087831115612706575f5ffd5b602085015b838110156127465780356001600160401b03811115612728575f5ffd5b6127378a6020838a0101612499565b8452506020928301920161270b565b506020840152509095945050505050565b634e487b7160e01b5f52603260045260245ffd5b828152604060208201525f6126426040830184611ca0565b60408101612791828561221f565b8260208301529392505050565b5f5f8335601e198436030181126127b3575f5ffd5b8301803591506001600160401b038211156127cc575f5ffd5b6020019150600581901b3603821315611d8f575f5ffd5b634e487b7160e01b5f52601160045260245ffd5b60ff8181168382160190811115610d6f57610d6f6127e3565b60a0810161281e828661221f565b612848602083018580518252602080820151908301526040908101516001600160a01b0316910152565b826080830152949350505050565b818382375f9101908152919050565b5f60208284031215612875575f5ffd5b5051919050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b606081525f6128b760608301868861287c565b6020830194909452506040015292915050565b858152606060208201525f6128e360608301868861287c565b82810360408401526128f681858761287c565b98975050505050505050565b5f6001600160401b0383168061292657634e487b7160e01b5f52601260045260245ffd5b806001600160401b0384160491505092915050565b6001600160401b038181168382160190811115610d6f57610d6f6127e3565b5f5f85851115612968575f5ffd5b83861115612974575f5ffd5b5050820193919092039150565b80356001600160e01b031981169060048410156129b2576001600160e01b0319600485900360031b81901b82161691505b5092915050565b60208101610d6f828461221f56fea264697066735822122045325784d39fdaa0362143aea241c6924573a911af0ecf4716bdba6d7dc61d7164736f6c634300081e0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000008c1a617bdb47342f9c17ac8750e0b070c372c7210000000000000000000000000000000000000000000000000000000000000e10000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001a0641a0321a3e244efe456463195d606317ed7cdcc3c1756e09893f3c68f79bb5b000000000000000000000000646132a1667ca7ad00d36616afba1a28116c770a0000000000000000000000008074b32bd7d06c8f27596f3d6fbf867a36ea22a3000000000000000000000000000000000000000000000000000000000000000115051db631d6ed382d957c795a558a0abdd00d0d22a1670455721bc2712d3d6e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000925d8331ddc0a1f0d96e68cf073dfe1d92b69187000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : owner (address): 0x8C1a617BdB47342F9C17Ac8750E0b070c372C721
Arg [1] : initialMaxTimeDiff (uint64): 3600
Arg [2] : initializeTrustedCerts (bytes32[]):
Arg [3] : initializeTrustedCertExpiries (uint64[]):
Arg [4] : initialRootCert (bytes32): 0x641a0321a3e244efe456463195d606317ed7cdcc3c1756e09893f3c68f79bb5b
Arg [5] : initialProofSubmitter (address): 0x646132A1667ca7aD00d36616AFBA1A28116C770A
Arg [6] : initialRevoker (address): 0x8074b32bD7d06C8f27596F3D6fbf867A36eA22a3
Arg [7] : zkCoProcessor (uint8): 1
Arg [8] : config (tuple):
Arg [1] : verifierId (bytes32): 0x15051db631d6ed382d957c795a558a0abdd00d0d22a1670455721bc2712d3d6e
Arg [2] : aggregatorId (bytes32): 0x0000000000000000000000000000000000000000000000000000000000000000
Arg [3] : zkVerifier (address): 0x925d8331ddc0a1F0d96E68CF073DFE1d92b69187

Arg [9] : verifierProofId (bytes32): 0x0000000000000000000000000000000000000000000000000000000000000000

-----Encoded View---------------
14 Constructor Arguments found :
Arg [0] : 0000000000000000000000008c1a617bdb47342f9c17ac8750e0b070c372c721
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000e10
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000180
Arg [3] : 00000000000000000000000000000000000000000000000000000000000001a0
Arg [4] : 641a0321a3e244efe456463195d606317ed7cdcc3c1756e09893f3c68f79bb5b
Arg [5] : 000000000000000000000000646132a1667ca7ad00d36616afba1a28116c770a
Arg [6] : 0000000000000000000000008074b32bd7d06c8f27596f3d6fbf867a36ea22a3
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [8] : 15051db631d6ed382d957c795a558a0abdd00d0d22a1670455721bc2712d3d6e
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [10] : 000000000000000000000000925d8331ddc0a1f0d96e68cf073dfe1d92b69187
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [12] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [13] : 0000000000000000000000000000000000000000000000000000000000000000

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
0x7D8EA07DB94128DBEe66bAfa3eBAa9668B413d72
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.