Token
Overview ERC-1155
Total Supply:
0 N/A
Holders:
1,375 addresses
Transfers:
-
Contract:
[ Download CSV Export ]
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Similar Match Source Code
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0x84698a8EE5B74eB29385134886b3a182660113e4
Contract Name:
Proxy
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-11-30 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.7; /** * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM * instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to * be specified by overriding the virtual {_implementation} function. * * Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a * different contract through the {_delegate} function. * * The success and return data of the delegated call will be returned back to the caller of the proxy. */ contract Proxy { address implementation_; address public admin; constructor(address impl) { implementation_ = impl; admin = msg.sender; } function setImplementation(address newImpl) public { require(msg.sender == admin); implementation_ = newImpl; } function implementation() public view returns (address impl) { impl = implementation_; } /** * @dev Delegates the current call to `implementation`. * * This function does not return to its internall call site, it will return directly to the external caller. */ function _delegate(address implementation__) internal virtual { assembly { // Copy msg.data. We take full control of memory in this inline assembly // block because it will not return to Solidity code. We overwrite the // Solidity scratch pad at memory position 0. calldatacopy(0, 0, calldatasize()) // Call the implementation. // out and outsize are 0 because we don't know the size yet. let result := delegatecall(gas(), implementation__, 0, calldatasize(), 0, 0) // Copy the returned data. returndatacopy(0, 0, returndatasize()) switch result // delegatecall returns 0 on error. case 0 { revert(0, returndatasize()) } default { return(0, returndatasize()) } } } /** * @dev This is a virtual function that should be overriden so it returns the address to which the fallback function * and {_fallback} should delegate. */ function _implementation() internal view returns (address) { return implementation_; } /** * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if no other * function in the contract matches the call data. */ fallback() external payable virtual { _delegate(_implementation()); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"impl","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"impl","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newImpl","type":"address"}],"name":"setImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b5060405161022538038061022583398101604081905261002f9161005d565b600080546001600160a01b039092166001600160a01b0319928316179055600180549091163317905561008d565b60006020828403121561006f57600080fd5b81516001600160a01b038116811461008657600080fd5b9392505050565b6101898061009c6000396000f3fe6080604052600436106100345760003560e01c80635c60da1b14610050578063d784d42614610086578063f851a440146100a6575b61004e6100496000546001600160a01b031690565b6100c6565b005b34801561005c57600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200160405180910390f35b34801561009257600080fd5b5061004e6100a1366004610123565b6100ea565b3480156100b257600080fd5b5060015461006a906001600160a01b031681565b3660008037600080366000845af43d6000803e8080156100e5573d6000f35b3d6000fd5b6001546001600160a01b0316331461010157600080fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121561013557600080fd5b81356001600160a01b038116811461014c57600080fd5b939250505056fea26469706673582212209a3b90ebe87548716a7a376a329a95f6849eb347f8e2e6114ccea44868fc2aac64736f6c634300080700330000000000000000000000009e6d97f06e09b8ec96bbeae3254cd9a7de873561
Deployed ByteCode Sourcemap
670:2148:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2777:28;2787:17;2475:7;2502:15;-1:-1:-1;;;;;2502:15:0;;2425:100;2787:17;2777:9;:28::i;:::-;670:2148;1003:102;;;;;;;;;;-1:-1:-1;2475:7:0;2502:15;-1:-1:-1;;;;;2502:15:0;1003:102;;;-1:-1:-1;;;;;469:32:1;;;451:51;;439:2;424:18;1003:102:0;;;;;;;857:134;;;;;;;;;;-1:-1:-1;857:134:0;;;;;:::i;:::-;;:::i;724:20::-;;;;;;;;;;-1:-1:-1;724:20:0;;;;-1:-1:-1;;;;;724:20:0;;;1314:922;1659:14;1656:1;1653;1640:34;1879:1;1876;1860:14;1857:1;1839:16;1832:5;1819:62;1958:16;1955:1;1952;1937:38;1998:6;2067:68;;;;2186:16;2183:1;2176:27;2067:68;2103:16;2100:1;2093:27;857:134;941:5;;-1:-1:-1;;;;;941:5:0;927:10;:19;919:28;;;;;;958:15;:25;;-1:-1:-1;;;;;;958:25:0;-1:-1:-1;;;;;958:25:0;;;;;;;;;;857:134::o;14:286:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;168:23;;-1:-1:-1;;;;;220:31:1;;210:42;;200:70;;266:1;263;256:12;200:70;289:5;14:286;-1:-1:-1;;;14:286:1:o
Swarm Source
ipfs://9a3b90ebe87548716a7a376a329a95f6849eb347f8e2e6114ccea44868fc2aac