Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00Token Holdings
More Info
Private Name Tags
ContractCreator
Latest 11 from a total of 11 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Deny | 14872379 | 943 days ago | IN | 0 ETH | 0.00082502 | ||||
Approve | 14787028 | 957 days ago | IN | 0 ETH | 0.00116444 | ||||
Rely | 14768380 | 960 days ago | IN | 0 ETH | 0.00481923 | ||||
Approve | 14754309 | 962 days ago | IN | 0 ETH | 0.00181612 | ||||
Rely | 14751653 | 962 days ago | IN | 0 ETH | 0.00245241 | ||||
Rely | 14751647 | 962 days ago | IN | 0 ETH | 0.00245133 | ||||
Approve | 14751646 | 962 days ago | IN | 0 ETH | 0.00487062 | ||||
Rely | 14747852 | 963 days ago | IN | 0 ETH | 0.00235685 | ||||
Rely | 14747594 | 963 days ago | IN | 0 ETH | 0.0015723 | ||||
Approve | 14747591 | 963 days ago | IN | 0 ETH | 0.00101926 | ||||
Approve | 14747381 | 963 days ago | IN | 0 ETH | 0.00191162 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
L1Escrow
Compiler Version
v0.7.6+commit.7338295f
Optimization Enabled:
Yes with 800 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: AGPL-3.0-or-later // Copyright (C) 2021 Dai Foundation // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see <https://www.gnu.org/licenses/>. pragma solidity ^0.7.6; interface ApproveLike { function approve(address, uint256) external returns (bool success); } // Escrow funds on L1, manage approval rights contract L1Escrow { // --- Auth --- mapping (address => uint256) public wards; function rely(address usr) external auth { wards[usr] = 1; emit Rely(usr); } function deny(address usr) external auth { wards[usr] = 0; emit Deny(usr); } modifier auth { require(wards[msg.sender] == 1, "L1Escrow/not-authorized"); _; } event Rely(address indexed usr); event Deny(address indexed usr); event Approve(address indexed token, address indexed spender, uint256 value); constructor() { wards[msg.sender] = 1; emit Rely(msg.sender); } function approve(address token, address spender, uint256 value) external auth { emit Approve(token, spender, value); ApproveLike(token).approve(spender, value); } }
{ "metadata": { "bytecodeHash": "none" }, "optimizer": { "enabled": true, "runs": 800 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approve","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"usr","type":"address"}],"name":"Deny","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"usr","type":"address"}],"name":"Rely","type":"event"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"deny","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"rely","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b503360008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a26103b4806100596000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806365fae35e146100515780639c52a7f114610079578063bf353dbb1461009f578063e1f21c67146100d7575b600080fd5b6100776004803603602081101561006757600080fd5b50356001600160a01b031661010d565b005b6100776004803603602081101561008f57600080fd5b50356001600160a01b03166101b6565b6100c5600480360360208110156100b557600080fd5b50356001600160a01b031661025e565b60408051918252519081900360200190f35b610077600480360360608110156100ed57600080fd5b506001600160a01b03813581169160208101359091169060400135610270565b33600090815260208190526040902054600114610171576040805162461bcd60e51b815260206004820152601760248201527f4c31457363726f772f6e6f742d617574686f72697a6564000000000000000000604482015290519081900360640190fd5b6001600160a01b03811660008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a250565b3360009081526020819052604090205460011461021a576040805162461bcd60e51b815260206004820152601760248201527f4c31457363726f772f6e6f742d617574686f72697a6564000000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260208190526040808220829055517f184450df2e323acec0ed3b5c7531b81f9b4cdef7914dfd4c0a4317416bb5251b9190a250565b60006020819052908152604090205481565b336000908152602081905260409020546001146102d4576040805162461bcd60e51b815260206004820152601760248201527f4c31457363726f772f6e6f742d617574686f72697a6564000000000000000000604482015290519081900360640190fd5b816001600160a01b0316836001600160a01b03167f6e11fb1b7f119e3f2fa29896ef5fdf8b8a2d0d4df6fe90ba8668e7d8b2ffa25e836040518082815260200191505060405180910390a3826001600160a01b031663095ea7b383836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561037657600080fd5b505af115801561038a573d6000803e3d6000fd5b505050506040513d60208110156103a057600080fd5b505050505056fea164736f6c6343000706000a
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806365fae35e146100515780639c52a7f114610079578063bf353dbb1461009f578063e1f21c67146100d7575b600080fd5b6100776004803603602081101561006757600080fd5b50356001600160a01b031661010d565b005b6100776004803603602081101561008f57600080fd5b50356001600160a01b03166101b6565b6100c5600480360360208110156100b557600080fd5b50356001600160a01b031661025e565b60408051918252519081900360200190f35b610077600480360360608110156100ed57600080fd5b506001600160a01b03813581169160208101359091169060400135610270565b33600090815260208190526040902054600114610171576040805162461bcd60e51b815260206004820152601760248201527f4c31457363726f772f6e6f742d617574686f72697a6564000000000000000000604482015290519081900360640190fd5b6001600160a01b03811660008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a250565b3360009081526020819052604090205460011461021a576040805162461bcd60e51b815260206004820152601760248201527f4c31457363726f772f6e6f742d617574686f72697a6564000000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260208190526040808220829055517f184450df2e323acec0ed3b5c7531b81f9b4cdef7914dfd4c0a4317416bb5251b9190a250565b60006020819052908152604090205481565b336000908152602081905260409020546001146102d4576040805162461bcd60e51b815260206004820152601760248201527f4c31457363726f772f6e6f742d617574686f72697a6564000000000000000000604482015290519081900360640190fd5b816001600160a01b0316836001600160a01b03167f6e11fb1b7f119e3f2fa29896ef5fdf8b8a2d0d4df6fe90ba8668e7d8b2ffa25e836040518082815260200191505060405180910390a3826001600160a01b031663095ea7b383836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561037657600080fd5b505af115801561038a573d6000803e3d6000fd5b505050506040513d60208110156103a057600080fd5b505050505056fea164736f6c6343000706000a
Loading...
Loading
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.