ETH Price: $2,054.59 (+2.62%)

Contract

0x7F311a4D48377030bD810395f4CCfC03bdbe9Ef3
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
0x68747470225484902025-05-23 22:18:11290 days ago1748038691IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225484892025-05-23 22:17:59290 days ago1748038679IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225481692025-05-23 21:13:11290 days ago1748034791IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225481202025-05-23 21:02:59290 days ago1748034179IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225481182025-05-23 21:02:35290 days ago1748034155IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225477992025-05-23 19:58:23290 days ago1748030303IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225477502025-05-23 19:48:11290 days ago1748029691IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225477482025-05-23 19:47:47290 days ago1748029667IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225474302025-05-23 18:43:35290 days ago1748025815IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470225473782025-05-23 18:33:11290 days ago1748025191IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000052962
0x68747470224133832025-05-04 22:31:11309 days ago1746397871IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224133332025-05-04 22:20:59309 days ago1746397259IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224133322025-05-04 22:20:47309 days ago1746397247IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224129552025-05-04 21:04:59309 days ago1746392699IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224129532025-05-04 21:04:35309 days ago1746392675IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224126122025-05-04 19:55:23309 days ago1746388523IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224125582025-05-04 19:44:23309 days ago1746387863IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224125562025-05-04 19:43:59309 days ago1746387839IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224118302025-05-04 17:18:11309 days ago1746379091IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224117792025-05-04 17:07:59309 days ago1746378479IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224117772025-05-04 17:07:35309 days ago1746378455IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224114642025-05-04 16:04:11309 days ago1746374651IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224114132025-05-04 15:53:47309 days ago1746374027IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224114112025-05-04 15:53:23309 days ago1746374003IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
0x68747470224110862025-05-04 14:47:59309 days ago1746370079IN
0x7F311a4D...3bdbe9Ef3
0 ETH0.000022881
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Escrow

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion, GNU AGPLv3 license
// SPDX-License-Identifier: AGPL-3.0-or-later
// Copyright (C) 2024 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.8.21;

interface GemLike {
    function approve(address, uint256) external;
}

// Escrow funds on L1, manage approval rights

contract Escrow {
    // --- storage variables ---

    mapping(address => uint256) public wards;

    // --- events ---

    event Rely(address indexed usr);
    event Deny(address indexed usr);
    event Approve(address indexed token, address indexed spender, uint256 value);

    // --- modifiers ---

    modifier auth() {
        require(wards[msg.sender] == 1, "Escrow/not-authorized");
        _;
    }

    // --- constructor ---

    constructor() {
        wards[msg.sender] = 1;
        emit Rely(msg.sender);
    }

    // --- administration ---

    function rely(address usr) external auth {
        wards[usr] = 1;
        emit Rely(usr);
    }

    function deny(address usr) external auth {
        wards[usr] = 0;
        emit Deny(usr);
    }

    // --- approve ---

    function approve(address token, address spender, uint256 value) external auth {
        GemLike(token).approve(spender, value);
        emit Approve(token, spender, value);
    }
}

Settings
{
  "remappings": [
    "@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/",
    "@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/",
    "forge-std/=lib/dss-test/lib/forge-std/src/",
    "ds-test/=lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/src/",
    "dss-interfaces/=lib/dss-test/lib/dss-interfaces/src/",
    "dss-test/=lib/dss-test/src/",
    "erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/",
    "openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/",
    "openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/",
    "solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  },
  "evmVersion": "paris",
  "viaIR": false,
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"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"}]

608060405234801561001057600080fd5b503360008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a2610370806100596000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806365fae35e146100515780639c52a7f114610066578063bf353dbb14610079578063e1f21c67146100ab575b600080fd5b61006461005f3660046102ad565b6100be565b005b6100646100743660046102ad565b61013b565b6100996100873660046102ad565b60006020819052908152604090205481565b60405190815260200160405180910390f35b6100646100b93660046102cf565b6101ae565b336000908152602081905260409020546001146100f65760405162461bcd60e51b81526004016100ed9061030b565b60405180910390fd5b6001600160a01b03811660008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a250565b3360009081526020819052604090205460011461016a5760405162461bcd60e51b81526004016100ed9061030b565b6001600160a01b038116600081815260208190526040808220829055517f184450df2e323acec0ed3b5c7531b81f9b4cdef7914dfd4c0a4317416bb5251b9190a250565b336000908152602081905260409020546001146101dd5760405162461bcd60e51b81526004016100ed9061030b565b60405163095ea7b360e01b81526001600160a01b0383811660048301526024820183905284169063095ea7b390604401600060405180830381600087803b15801561022757600080fd5b505af115801561023b573d6000803e3d6000fd5b50505050816001600160a01b0316836001600160a01b03167f6e11fb1b7f119e3f2fa29896ef5fdf8b8a2d0d4df6fe90ba8668e7d8b2ffa25e8360405161028491815260200190565b60405180910390a3505050565b80356001600160a01b03811681146102a857600080fd5b919050565b6000602082840312156102bf57600080fd5b6102c882610291565b9392505050565b6000806000606084860312156102e457600080fd5b6102ed84610291565b92506102fb60208501610291565b9150604084013590509250925092565b602080825260159082015274115cd8dc9bddcbdb9bdd0b585d5d1a1bdc9a5e9959605a1b60408201526060019056fea2646970667358221220ada9c7bf27bddb7a7566aeb587ba7d4e5adf36137d52563c4520b80961b556aa64736f6c63430008150033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806365fae35e146100515780639c52a7f114610066578063bf353dbb14610079578063e1f21c67146100ab575b600080fd5b61006461005f3660046102ad565b6100be565b005b6100646100743660046102ad565b61013b565b6100996100873660046102ad565b60006020819052908152604090205481565b60405190815260200160405180910390f35b6100646100b93660046102cf565b6101ae565b336000908152602081905260409020546001146100f65760405162461bcd60e51b81526004016100ed9061030b565b60405180910390fd5b6001600160a01b03811660008181526020819052604080822060019055517fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a609190a250565b3360009081526020819052604090205460011461016a5760405162461bcd60e51b81526004016100ed9061030b565b6001600160a01b038116600081815260208190526040808220829055517f184450df2e323acec0ed3b5c7531b81f9b4cdef7914dfd4c0a4317416bb5251b9190a250565b336000908152602081905260409020546001146101dd5760405162461bcd60e51b81526004016100ed9061030b565b60405163095ea7b360e01b81526001600160a01b0383811660048301526024820183905284169063095ea7b390604401600060405180830381600087803b15801561022757600080fd5b505af115801561023b573d6000803e3d6000fd5b50505050816001600160a01b0316836001600160a01b03167f6e11fb1b7f119e3f2fa29896ef5fdf8b8a2d0d4df6fe90ba8668e7d8b2ffa25e8360405161028491815260200190565b60405180910390a3505050565b80356001600160a01b03811681146102a857600080fd5b919050565b6000602082840312156102bf57600080fd5b6102c882610291565b9392505050565b6000806000606084860312156102e457600080fd5b6102ed84610291565b92506102fb60208501610291565b9150604084013590509250925092565b602080825260159082015274115cd8dc9bddcbdb9bdd0b585d5d1a1bdc9a5e9959605a1b60408201526060019056fea2646970667358221220ada9c7bf27bddb7a7566aeb587ba7d4e5adf36137d52563c4520b80961b556aa64736f6c63430008150033

Deployed Bytecode Sourcemap

897:971:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1460:96;;;;;;:::i;:::-;;:::i;:::-;;1562;;;;;;:::i;:::-;;:::i;953:40::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;529:25:1;;;517:2;502:18;953:40:0;;;;;;;1688:178;;;;;;:::i;:::-;;:::i;1460:96::-;1246:10;1240:5;:17;;;;;;;;;;;1261:1;1240:22;1232:56;;;;-1:-1:-1;;;1232:56:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;1511:10:0;::::1;:5;:10:::0;;;::::1;::::0;;;;;;;1524:1:::1;1511:14:::0;;1540:9;::::1;::::0;1511:5;1540:9:::1;1460:96:::0;:::o;1562:::-;1246:10;1240:5;:17;;;;;;;;;;;1261:1;1240:22;1232:56;;;;-1:-1:-1;;;1232:56:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1613:10:0;::::1;1626:1;1613:10:::0;;;::::1;::::0;;;;;;;:14;;;1642:9;::::1;::::0;1626:1;1642:9:::1;1562:96:::0;:::o;1688:178::-;1246:10;1240:5;:17;;;;;;;;;;;1261:1;1240:22;1232:56;;;;-1:-1:-1;;;1232:56:0;;;;;;;:::i;:::-;1776:38:::1;::::0;-1:-1:-1;;;1776:38:0;;-1:-1:-1;;;;;1440:32:1;;;1776:38:0::1;::::0;::::1;1422:51:1::0;1489:18;;;1482:34;;;1776:22:0;::::1;::::0;::::1;::::0;1395:18:1;;1776:38:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;1844:7;-1:-1:-1::0;;;;;1829:30:0::1;1837:5;-1:-1:-1::0;;;;;1829:30:0::1;;1853:5;1829:30;;;;529:25:1::0;;517:2;502:18;;383:177;1829:30:0::1;;;;;;;;1688:178:::0;;;:::o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;:::-;333:39;192:186;-1:-1:-1;;;192:186:1:o;565:328::-;642:6;650;658;711:2;699:9;690:7;686:23;682:32;679:52;;;727:1;724;717:12;679:52;750:29;769:9;750:29;:::i;:::-;740:39;;798:38;832:2;821:9;817:18;798:38;:::i;:::-;788:48;;883:2;872:9;868:18;855:32;845:42;;565:328;;;;;:::o;898:345::-;1100:2;1082:21;;;1139:2;1119:18;;;1112:30;-1:-1:-1;;;1173:2:1;1158:18;;1151:51;1234:2;1219:18;;898:345::o

Swarm Source

ipfs://ada9c7bf27bddb7a7566aeb587ba7d4e5adf36137d52563c4520b80961b556aa

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
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.