ETH Price: $3,316.23 (-3.86%)

Contract

0xfA8c996e158B80D77FbD0082BB437556A65B96E0
 
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Block From To
136347982021-11-17 19:19:121105 days ago1637176752  Contract Creation0 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
GemJoin5

Compiler Version
v0.5.12+commit.7709ece9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU AGPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2021-11-17
*/

// hevm: flattened sources of src/join-5.sol

pragma solidity >=0.5.12;

////// lib/dss-deploy/lib/dss/src/lib.sol

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU 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 General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.

/* pragma solidity >=0.5.12; */

contract LibNote {
    event LogNote(
        bytes4   indexed  sig,
        address  indexed  usr,
        bytes32  indexed  arg1,
        bytes32  indexed  arg2,
        bytes             data
    ) anonymous;

    modifier note {
        _;
        assembly {
            // log an 'anonymous' event with a constant 6 words of calldata
            // and four indexed topics: selector, caller, arg1 and arg2
            let mark := msize()                       // end of memory ensures zero
            mstore(0x40, add(mark, 288))              // update free memory pointer
            mstore(mark, 0x20)                        // bytes type data offset
            mstore(add(mark, 0x20), 224)              // bytes size (padded)
            calldatacopy(add(mark, 0x40), 0, 224)     // bytes payload
            log4(mark, 288,                           // calldata
                 shl(224, shr(224, calldataload(0))), // msg.sig
                 caller(),                            // msg.sender
                 calldataload(4),                     // arg1
                 calldataload(36)                     // arg2
                )
        }
    }
}

////// src/join-5.sol

/// join-5.sol -- Non-standard token adapters

// Copyright (C) 2018 Rain <[email protected]>
// Copyright (C) 2018-2020 Maker Ecosystem Growth Holdings, INC.
//
// 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.5.12; */

/* import "dss/lib.sol"; */

interface VatLike {
    function slip(bytes32, address, int256) external;
}

interface GemLike {
    function decimals() external view returns (uint8);
    function transfer(address, uint256) external returns (bool);
    function transferFrom(address, address, uint256) external returns (bool);
}

// For a token that has a lower precision than 18 and it has decimals (like USDC)

contract GemJoin5 is LibNote {
    // --- Auth ---
    mapping (address => uint256) public wards;
    function rely(address usr) external note auth { wards[usr] = 1; }
    function deny(address usr) external note auth { wards[usr] = 0; }
    modifier auth { require(wards[msg.sender] == 1); _; }

    VatLike public vat;
    bytes32 public ilk;
    GemLike public gem;
    uint256 public dec;
    uint256 public live;  // Access Flag

    constructor(address vat_, bytes32 ilk_, address gem_) public {
        gem = GemLike(gem_);
        dec = gem.decimals();
        require(dec < 18, "GemJoin5/decimals-18-or-higher");
        wards[msg.sender] = 1;
        live = 1;
        vat = VatLike(vat_);
        ilk = ilk_;
    }

    function cage() external note auth {
        live = 0;
    }

    function mul(uint256 x, uint256 y) internal pure returns (uint256 z) {
        require(y == 0 || (z = x * y) / y == x, "GemJoin5/overflow");
    }

    function join(address urn, uint256 amt) public note {
        require(live == 1, "GemJoin5/not-live");
        uint256 wad = mul(amt, 10 ** (18 - dec));
        require(int256(wad) >= 0, "GemJoin5/overflow");
        vat.slip(ilk, urn, int256(wad));
        require(gem.transferFrom(msg.sender, address(this), amt), "GemJoin5/failed-transfer");
    }

    function exit(address guy, uint256 amt) public note {
        uint256 wad = mul(amt, 10 ** (18 - dec));
        require(int256(wad) >= 0, "GemJoin5/overflow");
        vat.slip(ilk, msg.sender, -int256(wad));
        require(gem.transfer(guy, amt), "GemJoin5/failed-transfer");
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"vat_","type":"address"},{"internalType":"bytes32","name":"ilk_","type":"bytes32"},{"internalType":"address","name":"gem_","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":true,"inputs":[{"indexed":true,"internalType":"bytes4","name":"sig","type":"bytes4"},{"indexed":true,"internalType":"address","name":"usr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"arg1","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"arg2","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"LogNote","type":"event"},{"constant":false,"inputs":[],"name":"cage","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"dec","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"deny","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"guy","type":"address"},{"internalType":"uint256","name":"amt","type":"uint256"}],"name":"exit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"gem","outputs":[{"internalType":"contract GemLike","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ilk","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"urn","type":"address"},{"internalType":"uint256","name":"amt","type":"uint256"}],"name":"join","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"live","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"usr","type":"address"}],"name":"rely","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"vat","outputs":[{"internalType":"contract VatLike","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b50604051610f52380380610f528339818101604052606081101561003357600080fd5b8101908080519060200190929190805190602001909291908051906020019092919050505080600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b15801561010157600080fd5b505afa158015610115573d6000803e3d6000fd5b505050506040513d602081101561012b57600080fd5b810190808051906020019092919050505060ff166004819055506012600454106101bd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f47656d4a6f696e352f646563696d616c732d31382d6f722d686967686572000081525060200191505060405180910390fd5b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160058190555082600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600281905550505050610cef806102636000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063957aa58c11610071578063957aa58c146101de5780639c52a7f1146101fc578063b3bcfa8214610240578063bf353dbb1461025e578063c5ce281e146102b6578063ef693bed146102d4576100a9565b806336569e77146100ae5780633b4da69f146100f857806365fae35e14610146578063692450091461018a5780637bd2bea714610194575b600080fd5b6100b6610322565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101446004803603604081101561010e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610348565b005b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106da565b005b61019261079f565b005b61019c610827565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101e661084d565b6040518082815260200191505060405180910390f35b61023e6004803603602081101561021257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610853565b005b610248610918565b6040518082815260200191505060405180910390f35b6102a06004803603602081101561027457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061091e565b6040518082815260200191505060405180910390f35b6102be610936565b6040518082815260200191505060405180910390f35b610320600480360360408110156102ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061093c565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6001600554146103c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6e6f742d6c69766500000000000000000000000000000081525060200191505060405180910390fd5b60006103d482600454601203600a0a610c25565b9050600081121561044d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6f766572666c6f7700000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637cdd3fde60025485846040518463ffffffff1660e01b8152600401808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b15801561050057600080fd5b505af1158015610514573d6000803e3d6000fd5b50505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156105f557600080fd5b505af1158015610609573d6000803e3d6000fd5b505050506040513d602081101561061f57600080fd5b81019080805190602001909291905050506106a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f47656d4a6f696e352f6661696c65642d7472616e73666572000000000000000081525060200191505060405180910390fd5b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461072557600080fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146107ea57600080fd5b60006005819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461089e57600080fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60045481565b60006020528060005260406000206000915090505481565b60025481565b600061095082600454601203600a0a610c25565b905060008112156109c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6f766572666c6f7700000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637cdd3fde60025433846000036040518463ffffffff1660e01b8152600401808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015610a7f57600080fd5b505af1158015610a93573d6000803e3d6000fd5b50505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610b4057600080fd5b505af1158015610b54573d6000803e3d6000fd5b505050506040513d6020811015610b6a57600080fd5b8101908080519060200190929190505050610bed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f47656d4a6f696e352f6661696c65642d7472616e73666572000000000000000081525060200191505060405180910390fd5b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b600080821480610c425750828283850292508281610c3f57fe5b04145b610cb4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6f766572666c6f7700000000000000000000000000000081525060200191505060405180910390fd5b9291505056fea265627a7a72315820b2c46705dd7c1fb4774a774a94812876d91e54f55eb9450255b3e3f16be827bc64736f6c634300050c003200000000000000000000000035d1b3f3d7966a1dfe207aa4514c12a259a0492b574254432d4200000000000000000000000000000000000000000000000000000000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100a95760003560e01c8063957aa58c11610071578063957aa58c146101de5780639c52a7f1146101fc578063b3bcfa8214610240578063bf353dbb1461025e578063c5ce281e146102b6578063ef693bed146102d4576100a9565b806336569e77146100ae5780633b4da69f146100f857806365fae35e14610146578063692450091461018a5780637bd2bea714610194575b600080fd5b6100b6610322565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101446004803603604081101561010e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610348565b005b6101886004803603602081101561015c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506106da565b005b61019261079f565b005b61019c610827565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101e661084d565b6040518082815260200191505060405180910390f35b61023e6004803603602081101561021257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610853565b005b610248610918565b6040518082815260200191505060405180910390f35b6102a06004803603602081101561027457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061091e565b6040518082815260200191505060405180910390f35b6102be610936565b6040518082815260200191505060405180910390f35b610320600480360360408110156102ea57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061093c565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6001600554146103c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6e6f742d6c69766500000000000000000000000000000081525060200191505060405180910390fd5b60006103d482600454601203600a0a610c25565b9050600081121561044d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6f766572666c6f7700000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637cdd3fde60025485846040518463ffffffff1660e01b8152600401808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b15801561050057600080fd5b505af1158015610514573d6000803e3d6000fd5b50505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156105f557600080fd5b505af1158015610609573d6000803e3d6000fd5b505050506040513d602081101561061f57600080fd5b81019080805190602001909291905050506106a2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f47656d4a6f696e352f6661696c65642d7472616e73666572000000000000000081525060200191505060405180910390fd5b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461072557600080fd5b60016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146107ea57600080fd5b60006005819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a450565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055481565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461089e57600080fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a45050565b60045481565b60006020528060005260406000206000915090505481565b60025481565b600061095082600454601203600a0a610c25565b905060008112156109c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6f766572666c6f7700000000000000000000000000000081525060200191505060405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637cdd3fde60025433846000036040518463ffffffff1660e01b8152600401808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015610a7f57600080fd5b505af1158015610a93573d6000803e3d6000fd5b50505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610b4057600080fd5b505af1158015610b54573d6000803e3d6000fd5b505050506040513d6020811015610b6a57600080fd5b8101908080519060200190929190505050610bed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f47656d4a6f696e352f6661696c65642d7472616e73666572000000000000000081525060200191505060405180910390fd5b505961012081016040526020815260e0602082015260e0600060408301376024356004353360003560e01c60e01b61012085a4505050565b600080821480610c425750828283850292508281610c3f57fe5b04145b610cb4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f47656d4a6f696e352f6f766572666c6f7700000000000000000000000000000081525060200191505060405180910390fd5b9291505056fea265627a7a72315820b2c46705dd7c1fb4774a774a94812876d91e54f55eb9450255b3e3f16be827bc64736f6c634300050c0032

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

00000000000000000000000035d1b3f3d7966a1dfe207aa4514c12a259a0492b574254432d4200000000000000000000000000000000000000000000000000000000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599

-----Decoded View---------------
Arg [0] : vat_ (address): 0x35D1b3F3D7966A1DFe207aa4514C12a259A0492B
Arg [1] : ilk_ (bytes32): 0x574254432d420000000000000000000000000000000000000000000000000000
Arg [2] : gem_ (address): 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000035d1b3f3d7966a1dfe207aa4514c12a259a0492b
Arg [1] : 574254432d420000000000000000000000000000000000000000000000000000
Arg [2] : 0000000000000000000000002260fac5e5542a773aa44fbcfedf7c193bc2c599


Deployed Bytecode Sourcemap

3345:1635:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3345:1635:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3653:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4325:356;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4325:356:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3450:65;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3450:65:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;4099:62;;;:::i;:::-;;3703:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3753:19;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3521:65;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3521:65:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;3728:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3402:41;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3402:41:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3678:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4689:288;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4689:288:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3653:18;;;;;;;;;;;;;:::o;4325:356::-;4404:1;4396:4;;:9;4388:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4438:11;4452:26;4456:3;4473;;4468:2;:8;4461:2;:16;4452:3;:26::i;:::-;4438:40;;4512:1;4504:3;4497:16;;4489:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4546:3;;;;;;;;;;;:8;;;4555:3;;4560;4572;4546:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4546:31:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4546:31:0;;;;4596:3;;;;;;;;;;;:16;;;4613:10;4633:4;4640:3;4596:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4596:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4596:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4596:48:0;;;;;;;;;;;;;;;;4588:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1064:1;1262:7;1358:3;1352:4;1348:14;1342:4;1335:28;1433:4;1427;1420:18;1525:3;1518:4;1512;1508:15;1501:28;1612:3;1609:1;1602:4;1596;1592:15;1579:37;1934:2;1921:16;1871:1;1858:15;1789:8;1754:1;1741:15;1736:3;1732:25;1727:3;1723:35;1662:3;1656:4;1651:333;1085:910;;;:::o;3450:65::-;3637:1;3616:5;:17;3622:10;3616:17;;;;;;;;;;;;;;;;:22;3608:31;;;;;;3511:1;3498:5;:10;3504:3;3498:10;;;;;;;;;;;;;;;:14;;;;1262:7;1358:3;1352:4;1348:14;1342:4;1335:28;1433:4;1427;1420:18;1525:3;1518:4;1512;1508:15;1501:28;1612:3;1609:1;1602:4;1596;1592:15;1579:37;1934:2;1921:16;1871:1;1858:15;1789:8;1754:1;1741:15;1736:3;1732:25;1727:3;1723:35;1662:3;1656:4;1651:333;1085:910;;:::o;4099:62::-;3637:1;3616:5;:17;3622:10;3616:17;;;;;;;;;;;;;;;;:22;3608:31;;;;;;4152:1;4145:4;:8;;;;1262:7;1358:3;1352:4;1348:14;1342:4;1335:28;1433:4;1427;1420:18;1525:3;1518:4;1512;1508:15;1501:28;1612:3;1609:1;1602:4;1596;1592:15;1579:37;1934:2;1921:16;1871:1;1858:15;1789:8;1754:1;1741:15;1736:3;1732:25;1727:3;1723:35;1662:3;1656:4;1651:333;1085:910;:::o;3703:18::-;;;;;;;;;;;;;:::o;3753:19::-;;;;:::o;3521:65::-;3637:1;3616:5;:17;3622:10;3616:17;;;;;;;;;;;;;;;;:22;3608:31;;;;;;3582:1;3569:5;:10;3575:3;3569:10;;;;;;;;;;;;;;;:14;;;;1262:7;1358:3;1352:4;1348:14;1342:4;1335:28;1433:4;1427;1420:18;1525:3;1518:4;1512;1508:15;1501:28;1612:3;1609:1;1602:4;1596;1592:15;1579:37;1934:2;1921:16;1871:1;1858:15;1789:8;1754:1;1741:15;1736:3;1732:25;1727:3;1723:35;1662:3;1656:4;1651:333;1085:910;;:::o;3728:18::-;;;;:::o;3402:41::-;;;;;;;;;;;;;;;;;:::o;3678:18::-;;;;:::o;4689:288::-;4752:11;4766:26;4770:3;4787;;4782:2;:8;4775:2;:16;4766:3;:26::i;:::-;4752:40;;4826:1;4818:3;4811:16;;4803:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4860:3;;;;;;;;;;;:8;;;4869:3;;4874:10;4894:3;4886:12;;4860:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4860:39:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4860:39:0;;;;4918:3;;;;;;;;;;;:12;;;4931:3;4936;4918:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4918:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4918:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4918:22:0;;;;;;;;;;;;;;;;4910:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1064:1;1262:7;1358:3;1352:4;1348:14;1342:4;1335:28;1433:4;1427;1420:18;1525:3;1518:4;1512;1508:15;1501:28;1612:3;1609:1;1602:4;1596;1592:15;1579:37;1934:2;1921:16;1871:1;1858:15;1789:8;1754:1;1741:15;1736:3;1732:25;1727:3;1723:35;1662:3;1656:4;1651:333;1085:910;;;:::o;4169:148::-;4227:9;4262:1;4257;:6;:30;;;;4286:1;4281;4276;4272;:5;4268:9;;;4267:15;;;;;;:20;4257:30;4249:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4169:148;;;;:::o

Swarm Source

bzzr://b2c46705dd7c1fb4774a774a94812876d91e54f55eb9450255b3e3f16be827bc

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

Sky (formerly Maker) enables users to get rewarded for non-custodial savings.

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.