Address Contract Partially Verified
Address
0x6F537839714761388B6d7ED61Bc09579d5dA2F41
Balance
0 ETH
Nonce
1
Code Size
1568 bytes
Creator
0x1f2414D0...a840 at tx 0xb51d97ec...1a3fff
Indexed Transactions
0
Contract Bytecode
1568 bytes
0x6080604052600436106100345760003560e01c806312762d5e1461003e57806347fc822f146100b5578063f1739cae146100d5575b61003c6100f5565b005b34801561004a57600080fd5b5061008c6100593660046104f7565b805160208183018101805160008252928201919093012091525473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3480156100c157600080fd5b5061003c6100d03660046105c6565b6102a7565b3480156100e157600080fd5b5061003c6100f03660046105c6565b610397565b6040517f70726f78794f776e65720000000000000000000000000000000000000000000081526000908190600a019081526040519081900360200190205473ffffffffffffffffffffffffffffffffffffffff1614156101dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f5461726765742061646472657373206d75737420626520696e697469616c697a60448201527f65642e000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6000806000604051610211907f70726f78795461726765740000000000000000000000000000000000000000008152600b0190565b9081526040519081900360200181205473ffffffffffffffffffffffffffffffffffffffff1690610246906000903690610603565b600060405180830381855af49150503d8060008114610281576040519150601f19603f3d011682016040523d82523d6000602084013e610286565b606091505b5090925090506001821515141561029f57805160208201f35b805160208201fd5b6040517f70726f78794f776e6572000000000000000000000000000000000000000000008152600090600a01908152604051908190036020019020543373ffffffffffffffffffffffffffffffffffffffff909116141561038c57806000604051610335907f70726f78795461726765740000000000000000000000000000000000000000008152600b0190565b908152604051908190036020019020805473ffffffffffffffffffffffffffffffffffffffff929092167fffffffffffffffffffffffff000000000000000000000000000000000000000090921691909117905550565b6103946100f5565b50565b6040517f70726f78794f776e6572000000000000000000000000000000000000000000008152600090600a01908152604051908190036020019020543373ffffffffffffffffffffffffffffffffffffffff909116141561038c5773ffffffffffffffffffffffffffffffffffffffff8116610495576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f4e6577206f776e65722063616e6e6f7420626520746865207a65726f2061646460448201527f726573732e00000000000000000000000000000000000000000000000000000060648201526084016101d3565b806000604051610335907f70726f78794f776e6572000000000000000000000000000000000000000000008152600a0190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020828403121561050957600080fd5b813567ffffffffffffffff8082111561052157600080fd5b818401915084601f83011261053557600080fd5b813581811115610547576105476104c8565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190838211818310171561058d5761058d6104c8565b816040528281528760208487010111156105a657600080fd5b826020860160208301376000928101602001929092525095945050505050565b6000602082840312156105d857600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146105fc57600080fd5b9392505050565b818382376000910190815291905056fea164736f6c6343000809000a
Verified Source Code Partial Match
Compiler: v0.8.9+commit.e5eed63a
EVM: london
Optimization: Yes (10000 runs)
Lib_ResolvedDelegateProxy.sol 112 lines
// SPDX-License-Identifier: MIT
pragma solidity >0.7.5;
/**
* @title Lib_ResolvedDelegateProxy
*/
contract Lib_ResolvedDelegateProxy {
/*************
* Variables *
*************/
mapping(string => address) public addressManager;
/***************
* Constructor *
***************/
/**
* @param _proxyTarget Address of the target contract.
*/
constructor(
address _proxyTarget
) {
addressManager["proxyTarget"] = _proxyTarget;
addressManager["proxyOwner"] = msg.sender;
}
/**********************
* Function Modifiers *
**********************/
modifier proxyCallIfNotOwner() {
if (msg.sender == addressManager["proxyOwner"]) {
_;
} else {
// This WILL halt the call frame on completion.
_doProxyCall();
}
}
/*********************
* Fallback Function *
*********************/
fallback()
external
payable
{
// Proxy call by default.
_doProxyCall();
}
/********************
* Public Functions *
********************/
/**
* Update target
*
* @param _proxyTarget address of proxy target contract
*/
function setTargetContract(
address _proxyTarget
)
proxyCallIfNotOwner
external
{
addressManager["proxyTarget"] = _proxyTarget;
}
/**
* Transfer owner
*/
function transferProxyOwnership(
address _newOwner
)
proxyCallIfNotOwner
external
{
require(
_newOwner != address(0),
"New owner cannot be the zero address."
);
addressManager["proxyOwner"] = _newOwner;
}
/**
* Performs the proxy call via a delegatecall.
*/
function _doProxyCall()
internal
{
require(
addressManager["proxyOwner"] != address(0),
"Target address must be initialized."
);
(bool success, bytes memory returndata) = addressManager["proxyTarget"].delegatecall(msg.data);
if (success == true) {
assembly {
return(add(returndata, 0x20), mload(returndata))
}
} else {
assembly {
revert(add(returndata, 0x20), mload(returndata))
}
}
}
}
Lib_ResolvedDelegateProxy.sol 112 lines
// SPDX-License-Identifier: MIT
pragma solidity >0.7.5;
/**
* @title Lib_ResolvedDelegateProxy
*/
contract Lib_ResolvedDelegateProxy {
/*************
* Variables *
*************/
mapping(string => address) public addressManager;
/***************
* Constructor *
***************/
/**
* @param _proxyTarget Address of the target contract.
*/
constructor(
address _proxyTarget
) {
addressManager["proxyTarget"] = _proxyTarget;
addressManager["proxyOwner"] = msg.sender;
}
/**********************
* Function Modifiers *
**********************/
modifier proxyCallIfNotOwner() {
if (msg.sender == addressManager["proxyOwner"]) {
_;
} else {
// This WILL halt the call frame on completion.
_doProxyCall();
}
}
/*********************
* Fallback Function *
*********************/
fallback()
external
payable
{
// Proxy call by default.
_doProxyCall();
}
/********************
* Public Functions *
********************/
/**
* Update target
*
* @param _proxyTarget address of proxy target contract
*/
function setTargetContract(
address _proxyTarget
)
proxyCallIfNotOwner
external
{
addressManager["proxyTarget"] = _proxyTarget;
}
/**
* Transfer owner
*/
function transferProxyOwnership(
address _newOwner
)
proxyCallIfNotOwner
external
{
require(
_newOwner != address(0),
"New owner cannot be the zero address."
);
addressManager["proxyOwner"] = _newOwner;
}
/**
* Performs the proxy call via a delegatecall.
*/
function _doProxyCall()
internal
{
require(
addressManager["proxyOwner"] != address(0),
"Target address must be initialized."
);
(bool success, bytes memory returndata) = addressManager["proxyTarget"].delegatecall(msg.data);
if (success == true) {
assembly {
return(add(returndata, 0x20), mload(returndata))
}
} else {
assembly {
revert(add(returndata, 0x20), mload(returndata))
}
}
}
}
Read Contract
addressManager 0x12762d5e → address
Write Contract 2 functions
These functions modify contract state and require a wallet transaction to execute.
setTargetContract 0x47fc822f
address _proxyTarget
transferProxyOwnership 0xf1739cae
address _newOwner
Token Balances (1)
View Transfers →Recent Transactions
No transactions found for this address