Contract 0x1b36eC5C91eE64F941CC945A557dca26618Fc4c8

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xf8a3c7f9d5f0d09fce71be86352450cbdddd780280f1a7beab2fb7cba6499479Initialize324930032022-03-04 2:53:09216 days 3 hrs ago0xDAO: Deployer IN  0xDAO: Ox Pool Proxy Template0 FTM0.01444069573
0xe84341d01d2bbdb57da096d39d7a3211da4dc8690d0ef672558328b857b1c48d0x60806040321355852022-02-27 22:18:32220 days 8 hrs ago0xDAO: Deployer IN  Create: OxPoolProxyTemplate0 FTM0.122343197782
[ Download CSV Export 
Latest 1 internal transaction
Parent Txn Hash Block From To Value
0xe84341d01d2bbdb57da096d39d7a3211da4dc8690d0ef672558328b857b1c48d321355852022-02-27 22:18:32220 days 8 hrs ago 0xDAO: Deployer  Contract Creation0 FTM
[ Download CSV Export 
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.

Contract Source Code Verified (Exact Match)

Contract Name:
OxPoolProxyTemplate

Compiler Version
v0.8.11+commit.d7f03943

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : OxPoolProxyTemplate.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.11;

interface IImplementationSource {
    function implementationAddress() external view returns (address);
}

/**
 * @title OxPoolProxy
 * @author 0xDAO
 * @notice Minimal non-upgradeable EIP-1967 proxy which reads implementation from an implementation source contract
 * @dev This allows governance to upgrade oxPool implementations
 * @dev When governance is killed oxPool implementations can no longer be upgraded
 */
contract OxPoolProxyTemplate {
    bytes32 constant IMPLEMENTATION_SOURCE_SLOT =
        0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; // keccak256('eip1967.proxy.implementation')

    function initialize(address _implementationAddress) external {
        require(
            implementationSourceAddress() == address(0),
            "Already initialized"
        );
        assembly {
            sstore(IMPLEMENTATION_SOURCE_SLOT, _implementationAddress)
        }
    }

    function implementationSourceAddress()
        public
        view
        returns (address _implementationAddress)
    {
        assembly {
            _implementationAddress := sload(IMPLEMENTATION_SOURCE_SLOT)
        }
    }

    fallback() external {
        address implementationAddress = IImplementationSource(
            implementationSourceAddress()
        ).implementationAddress();

        assembly {
            let contractLogic := implementationAddress
            calldatacopy(0x0, 0x0, calldatasize())
            let success := delegatecall(
                gas(),
                contractLogic,
                0x0,
                calldatasize(),
                0,
                0
            )
            let returnDataSize := returndatasize()
            returndatacopy(0, 0, returnDataSize)
            switch success
            case 0 {
                revert(0, returnDataSize)
            }
            default {
                return(0, returnDataSize)
            }
        }
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"stateMutability":"nonpayable","type":"fallback"},{"inputs":[],"name":"implementationSourceAddress","outputs":[{"internalType":"address","name":"_implementationAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_implementationAddress","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50610243806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063c4d66de8146100d9578063f4e4226e146100ee575b600061004e6000805160206101ee8339815191525490565b6001600160a01b031663b97a23196040518163ffffffff1660e01b8152600401602060405180830381865afa15801561008b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100af91906101ac565b9050803660008037600080366000845af490503d806000803e8180156100d457816000f35b816000fd5b6100ec6100e73660046101d0565b61011a565b005b6000805160206101ee833981519152546040516001600160a01b03909116815260200160405180910390f35b60006101326000805160206101ee8339815191525490565b6001600160a01b0316146101825760405162461bcd60e51b8152602060048201526013602482015272105b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015260640160405180910390fd5b6000805160206101ee83398151915255565b6001600160a01b03811681146101a957600080fd5b50565b6000602082840312156101be57600080fd5b81516101c981610194565b9392505050565b6000602082840312156101e257600080fd5b81356101c98161019456fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c987f163254b14ae99642a7f463258fc9896b581afb3e50928aafaee8816d164736f6c634300080b0033

Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Validator ID :
0 FTM

Amount Staked
0

Amount Delegated
0

Staking Total
0

Staking Start Epoch
0

Staking Start Time
0

Proof of Importance
0

Origination Score
0

Validation Score
0

Active
0

Online
0

Downtime
0 s
Address Amount claimed Rewards Created On Epoch Created On
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.