ETH Price: $2,672.85 (+0.71%)
Gas: 6 Gwei

Contract

0xf151b2c51f0885684A502D9e901846D9FFcE3D4a
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set192384562024-02-16 5:41:59178 days ago1708062119IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0006909218.88121559
Set190672482024-01-23 5:18:35202 days ago1705987115IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000713959.70462871
Take190672262024-01-23 5:13:59202 days ago1705986839IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000436078.57845114
Give188795832023-12-27 21:12:11228 days ago1703711531IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0007531125.81807015
Set159901342022-11-17 13:47:23633 days ago1668692843IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0005718314.51613816
Set159841882022-11-16 17:51:47634 days ago1668621107IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0023067631.35
Take158750762022-11-01 12:07:59649 days ago1667304479IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0006487112.76741562
Take158750692022-11-01 12:06:35649 days ago1667304395IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0006014711.83483724
Set157810572022-10-19 8:48:23663 days ago1666169303IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000758820.75
Set157810022022-10-19 8:37:11663 days ago1666168631IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0019164726.05
Take157809902022-10-19 8:34:23663 days ago1666168463IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0013007325.6
Set157809832022-10-19 8:32:47663 days ago1666168367IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0009755718.28801804
Take157809772022-10-19 8:31:35663 days ago1666168295IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0010284420.20763453
Take157809392022-10-19 8:23:59663 days ago1666167839IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0012428924.45
Set157806102022-10-19 7:17:47663 days ago1666163867IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0012281222.95
Take157802802022-10-19 6:11:35663 days ago1666159895IN
0xf151b2c5...9FFcE3D4a
0 ETH0.0009947819.56
Take156194542022-09-26 18:53:47685 days ago1664218427IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000918218.08410027
Set155587862022-09-18 6:55:59694 days ago1663484159IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000206853.86473189
Set155587712022-09-18 6:52:59694 days ago1663483979IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000247254.61845324
Take155587632022-09-18 6:51:23694 days ago1663483883IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000247784.86989362
Give155587542022-09-18 6:49:35694 days ago1663483775IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000164255.60560995
Set155587452022-09-18 6:47:47694 days ago1663483667IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000317955.92974786
Take155587432022-09-18 6:47:23694 days ago1663483643IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000291885.72700586
Set155587222022-09-18 6:43:11694 days ago1663483391IN
0xf151b2c5...9FFcE3D4a
0 ETH0.00026154.8713997
Take155587192022-09-18 6:42:35694 days ago1663483355IN
0xf151b2c5...9FFcE3D4a
0 ETH0.000258685.06968111
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
FreeZone

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 20000 runs

Other Settings:
default evmVersion, GNU AGPLv3 license

Contract Source Code (Solidity Multiple files format)

File 1 of 2: free.sol
/// SPDX-License-Identifier: AGPL-3.0

// free as in free-for-all

pragma solidity 0.8.13;

import { Dmap } from './dmap.sol';

contract FreeZone {
    Dmap                      public immutable dmap;
    uint256                   public           last;
    mapping(bytes32=>address) public           controllers;

    event Give(address indexed giver, bytes32 indexed zone, address indexed recipient);

    constructor(Dmap d) {
        dmap = d;
    }

    function take(bytes32 key) external {
        require(controllers[key] == address(0), "ERR_TAKEN");
        require(block.timestamp > last, "ERR_LIMIT");
        last = block.timestamp;
        controllers[key] = msg.sender;
        emit Give(address(0), key, msg.sender);
    }

    function give(bytes32 key, address recipient) external {
        require(controllers[key] == msg.sender, "ERR_OWNER");
        controllers[key] = recipient;
        emit Give(msg.sender, key, recipient);
    }

    function set(bytes32 key, bytes32 meta, bytes32 data) external {
        require(controllers[key] == msg.sender, "ERR_OWNER");
        dmap.set(key, meta, data);
    }
}

File 2 of 2: dmap.sol
/// SPDX-License-Identifier: AGPL-3.0

// One day, someone is going to try very hard to prevent you
// from accessing one of these storage slots.

pragma solidity 0.8.13;

interface Dmap {
    error LOCKED();
    event Set(
        address indexed zone,
        bytes32 indexed name,
        bytes32 indexed meta,
        bytes32 indexed data
    ) anonymous;

    function set(bytes32 name, bytes32 meta, bytes32 data) external;
    function get(bytes32 slot) external view returns (bytes32 meta, bytes32 data);
}

contract _dmap_ {
    error LOCKED();
    uint256 constant LOCK = 0x1;
    constructor(address rootzone) { assembly {
        sstore(0, LOCK)
        sstore(1, shl(96, rootzone))
    }}
    fallback() external payable { assembly {
        if eq(36, calldatasize()) {
            mstore(0, sload(calldataload(4)))
            mstore(32, sload(add(1, calldataload(4))))
            return(0, 64)
        }
        let name := calldataload(4)
        let meta := calldataload(36)
        let data := calldataload(68)
        mstore(0, caller())
        mstore(32, name)
        let slot := keccak256(0, 64)
        log4(0, 0, caller(), name, meta, data)
        sstore(add(slot, 1), data)
        if iszero(or(xor(100, calldatasize()), and(LOCK, sload(slot)))) {
            sstore(slot, meta)
            return(0, 0)
        }
        if eq(100, calldatasize()) {
            mstore(0, shl(224, 0xa1422f69))
            revert(0, 4)
        }
        revert(0, 0)
    }}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"contract Dmap","name":"d","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"giver","type":"address"},{"indexed":true,"internalType":"bytes32","name":"zone","type":"bytes32"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"}],"name":"Give","type":"event"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"controllers","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dmap","outputs":[{"internalType":"contract Dmap","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"}],"name":"give","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"last","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"bytes32","name":"meta","type":"bytes32"},{"internalType":"bytes32","name":"data","type":"bytes32"}],"name":"set","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"take","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60a060405234801561001057600080fd5b5060405161065938038061065983398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b6080516105c8610091600039600081816098015261032b01526105c86000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c8063bb40a4a911610050578063bb40a4a9146100f4578063cc9ae69314610107578063fbae406a1461011a57600080fd5b806347799da81461007757806396aab0db14610093578063baa8529c146100df575b600080fd5b61008060005481565b6040519081526020015b60405180910390f35b6100ba7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008a565b6100f26100ed366004610504565b610150565b005b6100f261010236600461054d565b610261565b6100f2610115366004610579565b6103a1565b6100ba610128366004610579565b60016020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60008281526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1633146101e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f4f574e4552000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60008281526001602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff851690811790915590519091849133917f233a12001d1b536e640acdd9d00a3f54c2bc6f66404065ba43cc2e84b6ee3d0191a45050565b60008381526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1633146102ee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f4f574e4552000000000000000000000000000000000000000000000060448201526064016101d9565b6040517fbb40a4a90000000000000000000000000000000000000000000000000000000081526004810184905260248101839052604481018290527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063bb40a4a990606401600060405180830381600087803b15801561038457600080fd5b505af1158015610398573d6000803e3d6000fd5b50505050505050565b60008181526001602052604090205473ffffffffffffffffffffffffffffffffffffffff161561042d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f54414b454e000000000000000000000000000000000000000000000060448201526064016101d9565b6000544211610498576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f4c494d4954000000000000000000000000000000000000000000000060448201526064016101d9565b4260009081558181526001602052604080822080547fffffffffffffffffffffffff000000000000000000000000000000000000000016339081179091559051909183917f233a12001d1b536e640acdd9d00a3f54c2bc6f66404065ba43cc2e84b6ee3d01908290a450565b6000806040838503121561051757600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811461054257600080fd5b809150509250929050565b60008060006060848603121561056257600080fd5b505081359360208301359350604090920135919050565b60006020828403121561058b57600080fd5b503591905056fea2646970667358221220f2aff6925acfd74cc31810d5e7dfba5583c6e28eaeed2cef7ed28a757c7d94ec64736f6c634300080d003300000000000000000000000090949c9937a11ba943c7a72c3fa073a37e3fdd96

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100725760003560e01c8063bb40a4a911610050578063bb40a4a9146100f4578063cc9ae69314610107578063fbae406a1461011a57600080fd5b806347799da81461007757806396aab0db14610093578063baa8529c146100df575b600080fd5b61008060005481565b6040519081526020015b60405180910390f35b6100ba7f00000000000000000000000090949c9937a11ba943c7a72c3fa073a37e3fdd9681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161008a565b6100f26100ed366004610504565b610150565b005b6100f261010236600461054d565b610261565b6100f2610115366004610579565b6103a1565b6100ba610128366004610579565b60016020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60008281526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1633146101e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f4f574e4552000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60008281526001602052604080822080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff851690811790915590519091849133917f233a12001d1b536e640acdd9d00a3f54c2bc6f66404065ba43cc2e84b6ee3d0191a45050565b60008381526001602052604090205473ffffffffffffffffffffffffffffffffffffffff1633146102ee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f4f574e4552000000000000000000000000000000000000000000000060448201526064016101d9565b6040517fbb40a4a90000000000000000000000000000000000000000000000000000000081526004810184905260248101839052604481018290527f00000000000000000000000090949c9937a11ba943c7a72c3fa073a37e3fdd9673ffffffffffffffffffffffffffffffffffffffff169063bb40a4a990606401600060405180830381600087803b15801561038457600080fd5b505af1158015610398573d6000803e3d6000fd5b50505050505050565b60008181526001602052604090205473ffffffffffffffffffffffffffffffffffffffff161561042d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f54414b454e000000000000000000000000000000000000000000000060448201526064016101d9565b6000544211610498576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4552525f4c494d4954000000000000000000000000000000000000000000000060448201526064016101d9565b4260009081558181526001602052604080822080547fffffffffffffffffffffffff000000000000000000000000000000000000000016339081179091559051909183917f233a12001d1b536e640acdd9d00a3f54c2bc6f66404065ba43cc2e84b6ee3d01908290a450565b6000806040838503121561051757600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811461054257600080fd5b809150509250929050565b60008060006060848603121561056257600080fd5b505081359360208301359350604090920135919050565b60006020828403121561058b57600080fd5b503591905056fea2646970667358221220f2aff6925acfd74cc31810d5e7dfba5583c6e28eaeed2cef7ed28a757c7d94ec64736f6c634300080d0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000090949c9937a11ba943c7a72c3fa073a37e3fdd96

-----Decoded View---------------
Arg [0] : d (address): 0x90949c9937A11BA943C7A72C3FA073a37E3FdD96

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000090949c9937a11ba943c7a72c3fa073a37e3fdd96


Deployed Bytecode Sourcemap

128:999:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;205:47;;;;;;;;;160:25:2;;;148:2;133:18;205:47:1;;;;;;;;152;;;;;;;;383:42:2;371:55;;;353:74;;341:2;326:18;152:47:1;196:237:2;743:209:1;;;;;;:::i;:::-;;:::i;:::-;;958:167;;;;;;:::i;:::-;;:::i;459:278::-;;;;;;:::i;:::-;;:::i;258:54::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;743:209;816:16;;;;:11;:16;;;;;;:30;:16;836:10;816:30;808:52;;;;;;;1759:2:2;808:52:1;;;1741:21:2;1798:1;1778:18;;;1771:29;1836:11;1816:18;;;1809:39;1865:18;;808:52:1;;;;;;;;;870:16;;;;:11;:16;;;;;;:28;;;;;;;;;;;;;913:32;;870:28;;:16;;918:10;;913:32;;;743:209;;:::o;958:167::-;1039:16;;;;:11;:16;;;;;;:30;:16;1059:10;1039:30;1031:52;;;;;;;1759:2:2;1031:52:1;;;1741:21:2;1798:1;1778:18;;;1771:29;1836:11;1816:18;;;1809:39;1865:18;;1031:52:1;1557:332:2;1031:52:1;1093:25;;;;;;;;2096::2;;;2137:18;;;2130:34;;;2180:18;;;2173:34;;;1093:4:1;:8;;;;;2069:18:2;;1093:25:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;958:167;;;:::o;459:278::-;541:1;513:16;;;:11;:16;;;;;;:30;:16;:30;505:52;;;;;;;2420:2:2;505:52:1;;;2402:21:2;2459:1;2439:18;;;2432:29;2497:11;2477:18;;;2470:39;2526:18;;505:52:1;2218:332:2;505:52:1;593:4;;575:15;:22;567:44;;;;;;;2757:2:2;567:44:1;;;2739:21:2;2796:1;2776:18;;;2769:29;2834:11;2814:18;;;2807:39;2863:18;;567:44:1;2555:332:2;567:44:1;628:15;621:4;:22;;;653:16;;;:11;:16;;;;;;:29;;;;672:10;653:29;;;;;;697:33;;672:10;;665:3;;697:33;;621:4;;697:33;459:278;:::o;438:377:2:-;506:6;514;567:2;555:9;546:7;542:23;538:32;535:52;;;583:1;580;573:12;535:52;619:9;606:23;596:33;;679:2;668:9;664:18;651:32;723:42;716:5;712:54;705:5;702:65;692:93;;781:1;778;771:12;692:93;804:5;794:15;;;438:377;;;;;:::o;820:316::-;897:6;905;913;966:2;954:9;945:7;941:23;937:32;934:52;;;982:1;979;972:12;934:52;-1:-1:-1;;1005:23:2;;;1075:2;1060:18;;1047:32;;-1:-1:-1;1126:2:2;1111:18;;;1098:32;;820:316;-1:-1:-1;820:316:2:o;1141:180::-;1200:6;1253:2;1241:9;1232:7;1228:23;1224:32;1221:52;;;1269:1;1266;1259:12;1221:52;-1:-1:-1;1292:23:2;;1141:180;-1:-1:-1;1141:180:2:o

Swarm Source

ipfs://f2aff6925acfd74cc31810d5e7dfba5583c6e28eaeed2cef7ed28a757c7d94ec

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.