Transactions
Internal Transactions
Coin Balance History
Logs
Code
Read Contract
Read Proxy
Write Contract
Write Proxy
Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
- Contract name:
- WitnetProxy
- Optimization enabled
- true
- Compiler version
- v0.8.11+commit.d7f03943
- Optimization runs
- 200
- EVM Version
- default
- Verified at
- 2022-01-04T15:37:32.571041Z
Contract source code
// SPDX-License-Identifier: MITpragma solidity >=0.6.0 <0.9.0;pragma experimental ABIEncoderV2;// File: contracts\patterns\Initializable.solinterface Initializable {/// @dev Initialize contract's storage context.function initialize(bytes calldata) external;}// File: contracts\patterns\Proxiable.solinterface Proxiable {/// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)/// @dev See https://eips.ethereum.org/EIPS/eip-1822.function proxiableUUID() external pure returns (bytes32);}// File: contracts\patterns\Upgradable.sol/* solhint-disable var-name-mixedcase */abstract contract Upgradable is Initializable, Proxiable {address internal immutable _BASE;bytes32 internal immutable _CODEHASH;bool internal immutable _UPGRADABLE;/// Emitted every time the contract gets upgraded./// @param from The address who ordered the upgrading. Namely, the WRB operator in "trustable" implementations./// @param baseAddr The address of the new implementation contract./// @param baseCodehash The EVM-codehash of the new implementation contract./// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.event Upgraded(address indexed from,address indexed baseAddr,bytes32 indexed baseCodehash,bytes32 versionTag);
Contract ABI
[{"type":"constructor","stateMutability":"nonpayable","inputs":[]},{"type":"event","name":"Upgraded","inputs":[{"type":"address","name":"implementation","internalType":"address","indexed":true}],"anonymous":false},{"type":"fallback","stateMutability":"payable"},{"type":"function","stateMutability":"view","outputs":[{"type":"address","name":"","internalType":"address"}],"name":"implementation","inputs":[]},{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"bool","name":"","internalType":"bool"}],"name":"upgradeTo","inputs":[{"type":"address","name":"_newImplementation","internalType":"address"},{"type":"bytes","name":"_initData","internalType":"bytes"}]},{"type":"receive","stateMutability":"payable"}]
Contract Creation Code
0x608060405234801561001057600080fd5b50610970806100206000396000f3fe60806040526004361061002d5760003560e01c80635c60da1b146100bb5780636fbc15e9146100ed5761008a565b3661008a5760405162461bcd60e51b815260206004820152602260248201527f5769746e657450726f78793a206e6f207472616e736665727320616363657074604482015261195960f21b60648201526084015b60405180910390fd5b600061009461011d565b905060405136600082376000803683855af43d806000843e8180156100b7578184f35b8184fd5b3480156100c757600080fd5b506100d061011d565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156100f957600080fd5b5061010d6101083660046107a9565b61014b565b60405190151581526020016100e4565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b60006001600160a01b0383166101a35760405162461bcd60e51b815260206004820181905260248201527f5769746e657450726f78793a206e756c6c20696d706c656d656e746174696f6e6044820152606401610081565b60006101ad61011d565b90506001600160a01b0381161561058a57806001600160a01b0316846001600160a01b031614156102205760405162461bcd60e51b815260206004820152601f60248201527f5769746e657450726f78793a206e6f7468696e6720746f2075706772616465006044820152606401610081565b806001600160a01b0316635479d9406040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561027a575060408051601f3d908101601f1916820190925261027791810190610879565b60015b6102d95760405162461bcd60e51b815260206004820152602a60248201527f5769746e657450726f78793a20756e61626c6520746f20636865636b207570676044820152697261646162696c69747960b01b6064820152608401610081565b806103265760405162461bcd60e51b815260206004820152601b60248201527f5769746e657450726f78793a206e6f742075706772616461626c6500000000006044820152606401610081565b5060405133602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166335ac4b0560e11b1790525161037891906108d2565b600060405180830381855af49150503d80600081146103b3576040519150601f19603f3d011682016040523d82523d6000602084013e6103b8565b606091505b50915091508161040a5760405162461bcd60e51b815260206004820152601a60248201527f5769746e657450726f78793a206e6f7420636f6d706c69616e740000000000006044820152606401610081565b8080602001905181019061041e9190610879565b61046a5760405162461bcd60e51b815260206004820152601b60248201527f5769746e657450726f78793a206e6f7420617574686f72697a656400000000006044820152606401610081565b856001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104cc91906108ee565b836001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052e91906108ee565b146105875760405162461bcd60e51b8152602060048201526024808201527f5769746e657450726f78793a2070726f786961626c655555494473206d69736d6044820152630c2e8c6d60e31b6064820152608401610081565b50505b6000846001600160a01b0316846040516024016105a79190610907565b60408051601f198184030181529181526020820180516001600160e01b031663439fab9160e01b179052516105dc91906108d2565b600060405180830381855af49150503d8060008114610617576040519150601f19603f3d011682016040523d82523d6000602084013e61061c565b606091505b50509050806106775760405162461bcd60e51b815260206004820152602160248201527f5769746e657450726f78793a20756e61626c6520746f20696e697469616c697a6044820152606560f81b6064820152608401610081565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0387169081179091556040517fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2846001600160a01b0316635479d9406040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610737575060408051601f3d908101601f1916820190925261073491810190610879565b60015b6107835760405162461bcd60e51b815260206004820152601a60248201527f5769746e657450726f78793a206e6f7420636f6d706c69616e740000000000006044820152606401610081565b925061078d915050565b92915050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156107bc57600080fd5b82356001600160a01b03811681146107d357600080fd5b9150602083013567ffffffffffffffff808211156107f057600080fd5b818501915085601f83011261080457600080fd5b81358181111561081657610816610793565b604051601f8201601f19908116603f0116810190838211818310171561083e5761083e610793565b8160405282815288602084870101111561085757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561088b57600080fd5b8151801515811461089b57600080fd5b9392505050565b60005b838110156108bd5781810151838201526020016108a5565b838111156108cc576000848401525b50505050565b600082516108e48184602087016108a2565b9190910192915050565b60006020828403121561090057600080fd5b5051919050565b60208152600082518060208401526109268160408501602087016108a2565b601f01601f1916919091016040019291505056fea26469706673582212206aa37542ed392f6a2b75418274c31e6b24a2e07a0776d472663c2af2c62c146b64736f6c634300080b0033
Deployed ByteCode
0x60806040526004361061002d5760003560e01c80635c60da1b146100bb5780636fbc15e9146100ed5761008a565b3661008a5760405162461bcd60e51b815260206004820152602260248201527f5769746e657450726f78793a206e6f207472616e736665727320616363657074604482015261195960f21b60648201526084015b60405180910390fd5b600061009461011d565b905060405136600082376000803683855af43d806000843e8180156100b7578184f35b8184fd5b3480156100c757600080fd5b506100d061011d565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156100f957600080fd5b5061010d6101083660046107a9565b61014b565b60405190151581526020016100e4565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b60006001600160a01b0383166101a35760405162461bcd60e51b815260206004820181905260248201527f5769746e657450726f78793a206e756c6c20696d706c656d656e746174696f6e6044820152606401610081565b60006101ad61011d565b90506001600160a01b0381161561058a57806001600160a01b0316846001600160a01b031614156102205760405162461bcd60e51b815260206004820152601f60248201527f5769746e657450726f78793a206e6f7468696e6720746f2075706772616465006044820152606401610081565b806001600160a01b0316635479d9406040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561027a575060408051601f3d908101601f1916820190925261027791810190610879565b60015b6102d95760405162461bcd60e51b815260206004820152602a60248201527f5769746e657450726f78793a20756e61626c6520746f20636865636b207570676044820152697261646162696c69747960b01b6064820152608401610081565b806103265760405162461bcd60e51b815260206004820152601b60248201527f5769746e657450726f78793a206e6f742075706772616461626c6500000000006044820152606401610081565b5060405133602482015260009081906001600160a01b0384169060440160408051601f198184030181529181526020820180516001600160e01b03166335ac4b0560e11b1790525161037891906108d2565b600060405180830381855af49150503d80600081146103b3576040519150601f19603f3d011682016040523d82523d6000602084013e6103b8565b606091505b50915091508161040a5760405162461bcd60e51b815260206004820152601a60248201527f5769746e657450726f78793a206e6f7420636f6d706c69616e740000000000006044820152606401610081565b8080602001905181019061041e9190610879565b61046a5760405162461bcd60e51b815260206004820152601b60248201527f5769746e657450726f78793a206e6f7420617574686f72697a656400000000006044820152606401610081565b856001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104cc91906108ee565b836001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061052e91906108ee565b146105875760405162461bcd60e51b8152602060048201526024808201527f5769746e657450726f78793a2070726f786961626c655555494473206d69736d6044820152630c2e8c6d60e31b6064820152608401610081565b50505b6000846001600160a01b0316846040516024016105a79190610907565b60408051601f198184030181529181526020820180516001600160e01b031663439fab9160e01b179052516105dc91906108d2565b600060405180830381855af49150503d8060008114610617576040519150601f19603f3d011682016040523d82523d6000602084013e61061c565b606091505b50509050806106775760405162461bcd60e51b815260206004820152602160248201527f5769746e657450726f78793a20756e61626c6520746f20696e697469616c697a6044820152606560f81b6064820152608401610081565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0387169081179091556040517fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2846001600160a01b0316635479d9406040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610737575060408051601f3d908101601f1916820190925261073491810190610879565b60015b6107835760405162461bcd60e51b815260206004820152601a60248201527f5769746e657450726f78793a206e6f7420636f6d706c69616e740000000000006044820152606401610081565b925061078d915050565b92915050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156107bc57600080fd5b82356001600160a01b03811681146107d357600080fd5b9150602083013567ffffffffffffffff808211156107f057600080fd5b818501915085601f83011261080457600080fd5b81358181111561081657610816610793565b604051601f8201601f19908116603f0116810190838211818310171561083e5761083e610793565b8160405282815288602084870101111561085757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561088b57600080fd5b8151801515811461089b57600080fd5b9392505050565b60005b838110156108bd5781810151838201526020016108a5565b838111156108cc576000848401525b50505050565b600082516108e48184602087016108a2565b9190910192915050565b60006020828403121561090057600080fd5b5051919050565b60208152600082518060208401526109268160408501602087016108a2565b601f01601f1916919091016040019291505056fea26469706673582212206aa37542ed392f6a2b75418274c31e6b24a2e07a0776d472663c2af2c62c146b64736f6c634300080b0033