Overview
ETH Balance
1.4957056 ETH
Eth Value
$3,945.44 (@ $2,637.85/ETH)Token Holdings
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 31 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Take | 16709966 | 583 days ago | IN | 0 ETH | 0.00087628 | ||||
Take | 16708153 | 583 days ago | IN | 0 ETH | 0.00089156 | ||||
Take | 16708151 | 583 days ago | IN | 0 ETH | 0.00193492 | ||||
Transfer | 16707682 | 583 days ago | IN | 0.875 ETH | 0.00041508 | ||||
Take | 15812731 | 708 days ago | IN | 0 ETH | 0.00184882 | ||||
Transfer | 15812324 | 708 days ago | IN | 1.225 ETH | 0.00029697 | ||||
Take | 15117520 | 813 days ago | IN | 0 ETH | 0.00104982 | ||||
Take | 15116660 | 813 days ago | IN | 0 ETH | 0.00381542 | ||||
Transfer | 15090913 | 817 days ago | IN | 1.05 ETH | 0.00121777 | ||||
Transfer | 14817582 | 863 days ago | IN | 0.12 ETH | 0.0003898 | ||||
Take | 14039966 | 985 days ago | IN | 0 ETH | 0.00642176 | ||||
Take | 13535076 | 1064 days ago | IN | 0 ETH | 0.00998825 | ||||
Take | 13535014 | 1064 days ago | IN | 0 ETH | 0.01596707 | ||||
Take | 13341365 | 1094 days ago | IN | 0 ETH | 0.00587505 | ||||
Take | 13341356 | 1094 days ago | IN | 0 ETH | 0.00314388 | ||||
Transfer | 13326071 | 1097 days ago | IN | 0.05 ETH | 0.00179976 | ||||
Take | 13319991 | 1097 days ago | IN | 0 ETH | 0.00636755 | ||||
Take | 13319985 | 1097 days ago | IN | 0 ETH | 0.00607021 | ||||
Transfer | 13318665 | 1098 days ago | IN | 0.171764 ETH | 0.00138946 | ||||
Take | 13317217 | 1098 days ago | IN | 0 ETH | 0.00733106 | ||||
Take | 12934907 | 1157 days ago | IN | 0 ETH | 0.01531901 | ||||
Take | 12797509 | 1179 days ago | IN | 0 ETH | 0.00043168 | ||||
Take | 12795737 | 1179 days ago | IN | 0 ETH | 0.00108013 | ||||
Take | 12795729 | 1179 days ago | IN | 0 ETH | 0.00231659 | ||||
Take | 12795448 | 1179 days ago | IN | 0 ETH | 0.00106591 |
Latest 13 internal transactions
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
16709966 | 583 days ago | 0.351 ETH | ||||
16708151 | 583 days ago | 0.43875 ETH | ||||
16674904 | 588 days ago | 0.1 ETH | ||||
15812731 | 708 days ago | 0.61425 ETH | ||||
15798828 | 710 days ago | 0.14 ETH | ||||
15117520 | 813 days ago | 0.5265 ETH | ||||
15116660 | 813 days ago | 0.1755 ETH | ||||
13535076 | 1064 days ago | 0.0225 ETH | ||||
13341365 | 1094 days ago | 0.0332646 ETH | ||||
13319991 | 1097 days ago | 0.0772938 ETH | ||||
12312117 | 1254 days ago | 0.001 ETH | ||||
12310956 | 1254 days ago | 0.0045 ETH | ||||
12310373 | 1254 days ago | 0.0015 ETH |
Loading...
Loading
Contract Name:
HDSplit
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-04-24 */ // SPDX-License-Identifier: GPL-3.0-or-later /// split.sol -- splits funds sent to this contract // Copyright (C) 2021 HDSplit // 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.6.12; interface IERC20 { function balanceOf(address) external view returns (uint256); function transfer(address, uint256) external returns (bool); function transferFrom(address, address, uint256) external returns (bool); } contract HDSplit { address immutable public dai; uint256 public debt; uint256 public limit; address payable[] public folks; uint256[] public bps; // token->total mapping (address => uint256) public total; // folk[i]->token->balance mapping (address => mapping (address => uint256)) public balance; // folks[i]->folk[i]->owe: DAI amount owed per person // A ->B ->owe: B owes A owe DAI mapping (address => mapping (address => uint256)) public owe; // auth mapping (address => uint256) public wards; modifier auth { require(wards[msg.sender] == 1, "HDSplit/not-authorized"); _; } // events event Push(); event Rely(address indexed usr); event Comp(address indexed sender, address indexed recipient, uint256 amt); event Sent(address indexed guy, address indexed gem, uint256 amt); event Receive(address indexed guy, uint256 amt); // math uint256 THOUSAND = 10 ** 4; function add(uint256 _x, uint256 _y) internal pure returns (uint256 _z) { require((_z = _x + _y) >= _x); } function sub(uint256 _x, uint256 _y) internal pure returns (uint256 _z) { require((_z = _x - _y) <= _x); } function mul(uint256 _x, uint256 _y) internal pure returns (uint256 _z) { require(_y == 0 || (_z = _x * _y) / _y == _x); } constructor( address _dai, uint256 _limit, address payable[] memory _folks, uint256[] memory _bps ) public { require(_folks.length == _bps.length, "HDSplit/length-must-match"); uint256 _total; for (uint256 i = 0; i < _folks.length; i++) { _total = add(_total, _bps[i]); folks.push(_folks[i]); bps.push(_bps[i]); wards[_folks[i]] = 1; emit Rely(_folks[i]); } require(_total == 10000, "HDSplit/basis-points-must-total-10000"); dai = _dai; limit = _limit; } receive() external payable { emit Receive(msg.sender, msg.value); } function tell(uint256 _wad) external auth { require(dai != address(0), "HDSplit/no-compensation-plan"); address payable[] memory _folks = folks; for (uint256 i = 0; i < _folks.length; i++) { if (msg.sender != _folks[i]) { uint256 _amt = mul(_wad, bps[i]) / THOUSAND; debt = add(debt, _amt); owe[msg.sender][_folks[i]] = add( owe[msg.sender][_folks[i]], _amt ); } } require(debt <= limit, "HDSplit/over-debt-limit"); } function take() external { take(address(0)); } function take(address _token) public auth { uint256 _moar; address payable[] memory _folks = folks; if (_token == address(0)) { _moar = sub(address(this).balance, total[_token]); } else { _moar = sub(IERC20(_token).balanceOf(address(this)), total[_token]); } if (_moar > 0) { total[_token] = add(total[_token], _moar); // figure out everyong's amounts for (uint256 i = 0; i < _folks.length; i++) { balance[_folks[i]][_token] = add( balance[_folks[i]][_token], mul(_moar, bps[i]) / THOUSAND ); } } // pay expenses for (uint256 i = 0; i < _folks.length; i++) { comp(_folks[i]); } send(_token); emit Push(); } function send(address _token) internal { uint256 _amt = balance[msg.sender][_token]; balance[msg.sender][_token] = 0; total[_token] = sub(total[_token], _amt); emit Sent(msg.sender, _token, _amt); if (_token == address(0)) { require(msg.sender.send(_amt) == true, "HDSplit/send-failed"); } else { bytes memory _data = abi.encodeWithSelector( IERC20(_token).transfer.selector, msg.sender, _amt ); (bool _success, bytes memory _returndata) = _token.call(_data); require(_success, "HDSplit/transfer-failed-1"); if (_returndata.length > 0) { require( abi.decode(_returndata, (bool)), "HDSplit/transfer-failed-2" ); } } } function comp(address _guy) internal { if (dai == address(0)) { return; } uint256 _amt = owe[_guy][msg.sender]; if (_amt > 0) { owe[_guy][msg.sender] = 0; debt = sub(debt, _amt); emit Comp(msg.sender, _guy, _amt); require( IERC20(dai).transferFrom(msg.sender, _guy, _amt), "HDSplit/dai-transfer-failed" ); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_dai","type":"address"},{"internalType":"uint256","name":"_limit","type":"uint256"},{"internalType":"address payable[]","name":"_folks","type":"address[]"},{"internalType":"uint256[]","name":"_bps","type":"uint256[]"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"amt","type":"uint256"}],"name":"Comp","type":"event"},{"anonymous":false,"inputs":[],"name":"Push","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"guy","type":"address"},{"indexed":false,"internalType":"uint256","name":"amt","type":"uint256"}],"name":"Receive","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"usr","type":"address"}],"name":"Rely","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"guy","type":"address"},{"indexed":true,"internalType":"address","name":"gem","type":"address"},{"indexed":false,"internalType":"uint256","name":"amt","type":"uint256"}],"name":"Sent","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"balance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"bps","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dai","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"debt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"folks","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"owe","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"take","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"take","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_wad","type":"uint256"}],"name":"tell","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"total","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"wards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a06040526127106008553480156200001757600080fd5b506040516200128d3803806200128d833981810160405260808110156200003d57600080fd5b815160208301516040808501805191519395929483019291846401000000008211156200006957600080fd5b9083019060208201858111156200007f57600080fd5b82518660208202830111640100000000821117156200009d57600080fd5b82525081516020918201928201910280838360005b83811015620000cc578181015183820152602001620000b2565b5050505090500160405260200180516040519392919084640100000000821115620000f657600080fd5b9083019060208201858111156200010c57600080fd5b82518660208202830111640100000000821117156200012a57600080fd5b82525081516020918201928201910280838360005b83811015620001595781810151838201526020016200013f565b505050509050016040525050508051825114620001bd576040805162461bcd60e51b815260206004820152601960248201527f484453706c69742f6c656e6774682d6d7573742d6d6174636800000000000000604482015290519081900360640190fd5b6000805b83518110156200030157620001f182848381518110620001dd57fe5b60200260200101516200036360201b60201c565b915060028482815181106200020257fe5b60209081029190910181015182546001810184556000938452919092200180546001600160a01b0319166001600160a01b0390921691909117905582516003908490839081106200024f57fe5b60209081029190910181015182546001818101855560009485529284200155855190916007918790859081106200028257fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550838181518110620002bb57fe5b60200260200101516001600160a01b03167fdd0e34038ac38b2a1ce960229778ac48a8719bc900b6c4f8d0475c6e8b385a6060405160405180910390a2600101620001c1565b508061271014620003445760405162461bcd60e51b8152600401808060200182810382526025815260200180620012686025913960400191505060405180910390fd5b50505060609190911b6001600160601b0319166080526001556200037a565b808201828110156200037457600080fd5b92915050565b60805160601c610ec1620003a76000398061069a528061098852806109f65280610ac75250610ec16000f3fe6080604052600436106100ab5760003560e01c8063a4d66daf11610064578063a4d66daf146101f8578063b203bb991461020d578063bf353dbb14610248578063d2514e841461027b578063effd0550146102ae578063f4b9fa75146102e9576100e8565b80630dca59c1146100ed578063159090bd146101145780634d44e6631461012b57806355deb8fc1461015e5780635ce0d7811461018857806394784381146101b2576100e8565b366100e85760408051348152905133917fd6717f327e0cb88b4a97a7f67a453e9258252c34937ccbdd86de7cb840e7def3919081900360200190a2005b600080fd5b3480156100f957600080fd5b506101026102fe565b60408051918252519081900360200190f35b34801561012057600080fd5b50610129610304565b005b34801561013757600080fd5b506101296004803603602081101561014e57600080fd5b50356001600160a01b0316610310565b34801561016a57600080fd5b506101296004803603602081101561018157600080fd5b503561063b565b34801561019457600080fd5b50610102600480360360208110156101ab57600080fd5b50356108dd565b3480156101be57600080fd5b506101dc600480360360208110156101d557600080fd5b50356108fb565b604080516001600160a01b039092168252519081900360200190f35b34801561020457600080fd5b50610102610922565b34801561021957600080fd5b506101026004803603604081101561023057600080fd5b506001600160a01b0381358116916020013516610928565b34801561025457600080fd5b506101026004803603602081101561026b57600080fd5b50356001600160a01b0316610945565b34801561028757600080fd5b506101026004803603602081101561029e57600080fd5b50356001600160a01b0316610957565b3480156102ba57600080fd5b50610102600480360360408110156102d157600080fd5b506001600160a01b0381358116916020013516610969565b3480156102f557600080fd5b506101dc610986565b60005481565b61030e6000610310565b565b3360009081526007602052604090205460011461036d576040805162461bcd60e51b8152602060048201526016602482015275121114dc1b1a5d0bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b6000606060028054806020026020016040519081016040528092919081815260200182805480156103c757602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116103a9575b50939450505050506001600160a01b038316610408576001600160a01b0383166000908152600460205260409020546104019047906109aa565b91506104a5565b6104a2836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561045857600080fd5b505afa15801561046c573d6000803e3d6000fd5b505050506040513d602081101561048257600080fd5b50516001600160a01b0385166000908152600460205260409020546109aa565b91505b81156105d3576001600160a01b0383166000908152600460205260409020546104ce90836109c0565b6001600160a01b0384166000908152600460205260408120919091555b81518110156105d1576105846005600084848151811061050757fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002054600854610577866003868154811061056757fe5b90600052602060002001546109d0565b8161057e57fe5b046109c0565b6005600084848151811061059457fe5b6020908102919091018101516001600160a01b039081168352828201939093526040918201600090812093891681529290529020556001016104eb565b505b60005b8151811015610603576105fb8282815181106105ee57fe5b60200260200101516109f4565b6001016105d6565b5061060d83610bcd565b6040517fdb8c6fe2d276db4a69516d30b871657423e2622780333ff172e1c0dd033082d390600090a1505050565b33600090815260076020526040902054600114610698576040805162461bcd60e51b8152602060048201526016602482015275121114dc1b1a5d0bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610713576040805162461bcd60e51b815260206004820152601c60248201527f484453706c69742f6e6f2d636f6d70656e736174696f6e2d706c616e00000000604482015290519081900360640190fd5b6060600280548060200260200160405190810160405280929190818152602001828054801561076b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161074d575b5050505050905060005b815181101561087f5781818151811061078a57fe5b60200260200101516001600160a01b0316336001600160a01b0316146108775760006008546107c0856003858154811061056757fe5b816107c757fe5b0490506107d6600054826109c0565b6000908155338152600660205260408120845161082992908690869081106107fa57fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002054826109c0565b336000908152600660205260408120855190919086908690811061084957fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550505b600101610775565b5060015460005411156108d9576040805162461bcd60e51b815260206004820152601760248201527f484453706c69742f6f7665722d646562742d6c696d6974000000000000000000604482015290519081900360640190fd5b5050565b600381815481106108ea57fe5b600091825260209091200154905081565b6002818154811061090857fe5b6000918252602090912001546001600160a01b0316905081565b60015481565b600560209081526000928352604080842090915290825290205481565b60076020526000908152604090205481565b60046020526000908152604090205481565b600660209081526000928352604080842090915290825290205481565b7f000000000000000000000000000000000000000000000000000000000000000081565b808203828111156109ba57600080fd5b92915050565b808201828110156109ba57600080fd5b60008115806109eb575050808202828282816109e857fe5b04145b6109ba57600080fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610a2757610bca565b6001600160a01b038116600090815260066020908152604080832033845290915290205480156108d9576001600160a01b0382166000908152600660209081526040808320338452909152812081905554610a8290826109aa565b6000556040805182815290516001600160a01b0384169133917ff433f6cc67a1632e45c5fd5e9353ddff992fc57719494aacde16b83f42c778bf9181900360200190a37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd3384846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b158015610b4d57600080fd5b505af1158015610b61573d6000803e3d6000fd5b505050506040513d6020811015610b7757600080fd5b50516108d9576040805162461bcd60e51b815260206004820152601b60248201527f484453706c69742f6461692d7472616e736665722d6661696c65640000000000604482015290519081900360640190fd5b50565b3360009081526005602090815260408083206001600160a01b03851684528252808320805490849055600490925290912054610c0990826109aa565b6001600160a01b0383166000818152600460209081526040918290209390935580518481529051919233927f3990db2d31862302a685e8086b5755072a6e2b5b780af1ee81ece35ee3cd33459281900390910190a36001600160a01b038216610cdb57604051339082156108fc029083906000818181858888f1935050505015156001151514610cd6576040805162461bcd60e51b8152602060048201526013602482015272121114dc1b1a5d0bdcd95b990b59985a5b1959606a1b604482015290519081900360640190fd5b6108d9565b60408051336024820152604480820184905282518083039091018152606490910182526020810180516001600160e01b031663a9059cbb60e01b1781529151815191926000926060926001600160a01b0388169286928291908083835b60208310610d575780518252601f199092019160209182019101610d38565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610db9576040519150601f19603f3d011682016040523d82523d6000602084013e610dbe565b606091505b509150915081610e15576040805162461bcd60e51b815260206004820152601960248201527f484453706c69742f7472616e736665722d6661696c65642d3100000000000000604482015290519081900360640190fd5b805115610e8457808060200190516020811015610e3157600080fd5b5051610e84576040805162461bcd60e51b815260206004820152601960248201527f484453706c69742f7472616e736665722d6661696c65642d3200000000000000604482015290519081900360640190fd5b505050505056fea2646970667358221220d0bc9551fa740656e4b8f37073927d209ccaccb7d4ef6bfc2dfd7df72c65688864736f6c634300060c0033484453706c69742f62617369732d706f696e74732d6d7573742d746f74616c2d31303030300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a968163f0a57b400000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000005000000000000000000000000695931af55788cffa194da53a178dd710c1b3f590000000000000000000000002de35077ee186385410b971be84345860a821422000000000000000000000000b3423b069edd741c833b7c110bfeae6dd6d60ea40000000000000000000000002fb86fef360245857dfb18d09111e1aedf1eb454000000000000000000000000d475bac3ebd265d0a69334f451be8492761584730000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000119400000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000003e8
Deployed Bytecode
0x6080604052600436106100ab5760003560e01c8063a4d66daf11610064578063a4d66daf146101f8578063b203bb991461020d578063bf353dbb14610248578063d2514e841461027b578063effd0550146102ae578063f4b9fa75146102e9576100e8565b80630dca59c1146100ed578063159090bd146101145780634d44e6631461012b57806355deb8fc1461015e5780635ce0d7811461018857806394784381146101b2576100e8565b366100e85760408051348152905133917fd6717f327e0cb88b4a97a7f67a453e9258252c34937ccbdd86de7cb840e7def3919081900360200190a2005b600080fd5b3480156100f957600080fd5b506101026102fe565b60408051918252519081900360200190f35b34801561012057600080fd5b50610129610304565b005b34801561013757600080fd5b506101296004803603602081101561014e57600080fd5b50356001600160a01b0316610310565b34801561016a57600080fd5b506101296004803603602081101561018157600080fd5b503561063b565b34801561019457600080fd5b50610102600480360360208110156101ab57600080fd5b50356108dd565b3480156101be57600080fd5b506101dc600480360360208110156101d557600080fd5b50356108fb565b604080516001600160a01b039092168252519081900360200190f35b34801561020457600080fd5b50610102610922565b34801561021957600080fd5b506101026004803603604081101561023057600080fd5b506001600160a01b0381358116916020013516610928565b34801561025457600080fd5b506101026004803603602081101561026b57600080fd5b50356001600160a01b0316610945565b34801561028757600080fd5b506101026004803603602081101561029e57600080fd5b50356001600160a01b0316610957565b3480156102ba57600080fd5b50610102600480360360408110156102d157600080fd5b506001600160a01b0381358116916020013516610969565b3480156102f557600080fd5b506101dc610986565b60005481565b61030e6000610310565b565b3360009081526007602052604090205460011461036d576040805162461bcd60e51b8152602060048201526016602482015275121114dc1b1a5d0bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b6000606060028054806020026020016040519081016040528092919081815260200182805480156103c757602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116103a9575b50939450505050506001600160a01b038316610408576001600160a01b0383166000908152600460205260409020546104019047906109aa565b91506104a5565b6104a2836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561045857600080fd5b505afa15801561046c573d6000803e3d6000fd5b505050506040513d602081101561048257600080fd5b50516001600160a01b0385166000908152600460205260409020546109aa565b91505b81156105d3576001600160a01b0383166000908152600460205260409020546104ce90836109c0565b6001600160a01b0384166000908152600460205260408120919091555b81518110156105d1576105846005600084848151811061050757fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000866001600160a01b03166001600160a01b0316815260200190815260200160002054600854610577866003868154811061056757fe5b90600052602060002001546109d0565b8161057e57fe5b046109c0565b6005600084848151811061059457fe5b6020908102919091018101516001600160a01b039081168352828201939093526040918201600090812093891681529290529020556001016104eb565b505b60005b8151811015610603576105fb8282815181106105ee57fe5b60200260200101516109f4565b6001016105d6565b5061060d83610bcd565b6040517fdb8c6fe2d276db4a69516d30b871657423e2622780333ff172e1c0dd033082d390600090a1505050565b33600090815260076020526040902054600114610698576040805162461bcd60e51b8152602060048201526016602482015275121114dc1b1a5d0bdb9bdd0b585d5d1a1bdc9a5e995960521b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610713576040805162461bcd60e51b815260206004820152601c60248201527f484453706c69742f6e6f2d636f6d70656e736174696f6e2d706c616e00000000604482015290519081900360640190fd5b6060600280548060200260200160405190810160405280929190818152602001828054801561076b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161074d575b5050505050905060005b815181101561087f5781818151811061078a57fe5b60200260200101516001600160a01b0316336001600160a01b0316146108775760006008546107c0856003858154811061056757fe5b816107c757fe5b0490506107d6600054826109c0565b6000908155338152600660205260408120845161082992908690869081106107fa57fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002054826109c0565b336000908152600660205260408120855190919086908690811061084957fe5b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550505b600101610775565b5060015460005411156108d9576040805162461bcd60e51b815260206004820152601760248201527f484453706c69742f6f7665722d646562742d6c696d6974000000000000000000604482015290519081900360640190fd5b5050565b600381815481106108ea57fe5b600091825260209091200154905081565b6002818154811061090857fe5b6000918252602090912001546001600160a01b0316905081565b60015481565b600560209081526000928352604080842090915290825290205481565b60076020526000908152604090205481565b60046020526000908152604090205481565b600660209081526000928352604080842090915290825290205481565b7f000000000000000000000000000000000000000000000000000000000000000081565b808203828111156109ba57600080fd5b92915050565b808201828110156109ba57600080fd5b60008115806109eb575050808202828282816109e857fe5b04145b6109ba57600080fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610a2757610bca565b6001600160a01b038116600090815260066020908152604080832033845290915290205480156108d9576001600160a01b0382166000908152600660209081526040808320338452909152812081905554610a8290826109aa565b6000556040805182815290516001600160a01b0384169133917ff433f6cc67a1632e45c5fd5e9353ddff992fc57719494aacde16b83f42c778bf9181900360200190a37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166323b872dd3384846040518463ffffffff1660e01b815260040180846001600160a01b03168152602001836001600160a01b031681526020018281526020019350505050602060405180830381600087803b158015610b4d57600080fd5b505af1158015610b61573d6000803e3d6000fd5b505050506040513d6020811015610b7757600080fd5b50516108d9576040805162461bcd60e51b815260206004820152601b60248201527f484453706c69742f6461692d7472616e736665722d6661696c65640000000000604482015290519081900360640190fd5b50565b3360009081526005602090815260408083206001600160a01b03851684528252808320805490849055600490925290912054610c0990826109aa565b6001600160a01b0383166000818152600460209081526040918290209390935580518481529051919233927f3990db2d31862302a685e8086b5755072a6e2b5b780af1ee81ece35ee3cd33459281900390910190a36001600160a01b038216610cdb57604051339082156108fc029083906000818181858888f1935050505015156001151514610cd6576040805162461bcd60e51b8152602060048201526013602482015272121114dc1b1a5d0bdcd95b990b59985a5b1959606a1b604482015290519081900360640190fd5b6108d9565b60408051336024820152604480820184905282518083039091018152606490910182526020810180516001600160e01b031663a9059cbb60e01b1781529151815191926000926060926001600160a01b0388169286928291908083835b60208310610d575780518252601f199092019160209182019101610d38565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610db9576040519150601f19603f3d011682016040523d82523d6000602084013e610dbe565b606091505b509150915081610e15576040805162461bcd60e51b815260206004820152601960248201527f484453706c69742f7472616e736665722d6661696c65642d3100000000000000604482015290519081900360640190fd5b805115610e8457808060200190516020811015610e3157600080fd5b5051610e84576040805162461bcd60e51b815260206004820152601960248201527f484453706c69742f7472616e736665722d6661696c65642d3200000000000000604482015290519081900360640190fd5b505050505056fea2646970667358221220d0bc9551fa740656e4b8f37073927d209ccaccb7d4ef6bfc2dfd7df72c65688864736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a968163f0a57b400000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000005000000000000000000000000695931af55788cffa194da53a178dd710c1b3f590000000000000000000000002de35077ee186385410b971be84345860a821422000000000000000000000000b3423b069edd741c833b7c110bfeae6dd6d60ea40000000000000000000000002fb86fef360245857dfb18d09111e1aedf1eb454000000000000000000000000d475bac3ebd265d0a69334f451be8492761584730000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000119400000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000003e8
-----Decoded View---------------
Arg [0] : _dai (address): 0x0000000000000000000000000000000000000000
Arg [1] : _limit (uint256): 50000000000000000000000
Arg [2] : _folks (address[]): 0x695931AF55788cFfA194dA53a178dD710C1b3f59,0x2de35077EE186385410b971Be84345860a821422,0xB3423b069edD741C833B7C110bFeaE6dD6d60EA4,0x2fb86Fef360245857dfb18d09111E1AeDf1eB454,0xD475bAc3eBD265D0a69334F451BE849276158473
Arg [3] : _bps (uint256[]): 4500,1500,1500,1500,1000
-----Encoded View---------------
16 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000000
Arg [1] : 000000000000000000000000000000000000000000000a968163f0a57b400000
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000140
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [5] : 000000000000000000000000695931af55788cffa194da53a178dd710c1b3f59
Arg [6] : 0000000000000000000000002de35077ee186385410b971be84345860a821422
Arg [7] : 000000000000000000000000b3423b069edd741c833b7c110bfeae6dd6d60ea4
Arg [8] : 0000000000000000000000002fb86fef360245857dfb18d09111e1aedf1eb454
Arg [9] : 000000000000000000000000d475bac3ebd265d0a69334f451be849276158473
Arg [10] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [11] : 0000000000000000000000000000000000000000000000000000000000001194
Arg [12] : 00000000000000000000000000000000000000000000000000000000000005dc
Arg [13] : 00000000000000000000000000000000000000000000000000000000000005dc
Arg [14] : 00000000000000000000000000000000000000000000000000000000000005dc
Arg [15] : 00000000000000000000000000000000000000000000000000000000000003e8
Deployed Bytecode Sourcemap
1056:5043:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3168:30;;;3188:9;3168:30;;;;3176:10;;3168:30;;;;;;;;;;1056:5043;;;;;1115:19;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;3810:60;;;;;;;;;;;;;:::i;:::-;;3878:898;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3878:898:0;-1:-1:-1;;;;;3878:898:0;;:::i;3214:588::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3214:588:0;;:::i;1205:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1205:20:0;;:::i;1168:30::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1168:30:0;;:::i;:::-;;;;-1:-1:-1;;;;;1168:30:0;;;;;;;;;;;;;;1141:20;;;;;;;;;;;;;:::i;1337:64::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1337:64:0;;;;;;;;;;:::i;1600:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1600:41:0;-1:-1:-1;;;;;1600:41:0;;:::i;1255:::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1255:41:0;-1:-1:-1;;;;;1255:41:0;;:::i;1518:60::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1518:60:0;;;;;;;;;;:::i;1080:28::-;;;;;;;;;;;;;:::i;1115:19::-;;;;:::o;3810:60::-;3846:16;3859:1;3846:4;:16::i;:::-;3810:60::o;3878:898::-;1687:10;1681:17;;;;:5;:17;;;;;;1702:1;1681:22;1673:57;;;;;-1:-1:-1;;;1673:57:0;;;;;;;;;;;;-1:-1:-1;;;1673:57:0;;;;;;;;;;;;;;;3931:13:::1;3955:31;3989:5;3955:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;3955:39:0::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;-1:-1:-1::0;3955:39:0;;-1:-1:-1;;;;;;;;;;4011:20:0;::::1;4007:202;;-1:-1:-1::0;;;;;4083:13:0;::::1;;::::0;;;:5:::1;:13;::::0;;;;;4056:41:::1;::::0;4060:21:::1;::::0;4056:3:::1;:41::i;:::-;4048:49;;4007:202;;;4138:59;4149:6;-1:-1:-1::0;;;;;4142:24:0::1;;4175:4;4142:39;;;;;;;;;;;;;-1:-1:-1::0;;;;;4142:39:0::1;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;4142:39:0;-1:-1:-1;;;;;4183:13:0;::::1;;::::0;;;:5:::1;4142:39;4183:13:::0;;;;;4138:3:::1;:59::i;:::-;4130:67;;4007:202;4225:9:::0;;4221:376:::1;;-1:-1:-1::0;;;;;4271:13:0;::::1;;::::0;;;:5:::1;:13;::::0;;;;;4267:25:::1;::::0;4286:5;4267:3:::1;:25::i;:::-;-1:-1:-1::0;;;;;4251:13:0;::::1;;::::0;;;:5:::1;:13;::::0;;;;:41;;;;4355:231:::1;4379:6;:13;4375:1;:17;4355:231;;;4447:123;4473:7;:18;4481:6;4488:1;4481:9;;;;;;;;;;;;;;-1:-1:-1::0;;;;;4473:18:0::1;-1:-1:-1::0;;;;;4473:18:0::1;;;;;;;;;;;;:26;4492:6;-1:-1:-1::0;;;;;4473:26:0::1;-1:-1:-1::0;;;;;4473:26:0::1;;;;;;;;;;;;;4543:8;;4522:18;4526:5;4533:3;4537:1;4533:6;;;;;;;;;;;;;;;;4522:3;:18::i;:::-;:29;;;;;;4447:3;:123::i;:::-;4418:7;:18;4426:6;4433:1;4426:9;;;;;;;;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;4418:18:0;;::::1;::::0;;;;::::1;::::0;;;;;;;;-1:-1:-1;4418:18:0;;;:26;;::::1;::::0;;;;;;;:152;4394:3:::1;;4355:231;;;;4221:376;4639:9;4634:86;4658:6;:13;4654:1;:17;4634:86;;;4693:15;4698:6;4705:1;4698:9;;;;;;;;;;;;;;4693:4;:15::i;:::-;4673:3;;4634:86;;;;4732:12;4737:6;4732:4;:12::i;:::-;4762:6;::::0;::::1;::::0;;;::::1;1741:1;;3878:898:::0;:::o;3214:588::-;1687:10;1681:17;;;;:5;:17;;;;;;1702:1;1681:22;1673:57;;;;;-1:-1:-1;;;1673:57:0;;;;;;;;;;;;-1:-1:-1;;;1673:57:0;;;;;;;;;;;;;;;3275:3:::1;-1:-1:-1::0;;;;;3275:17:0::1;3267:58;;;::::0;;-1:-1:-1;;;3267:58:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;3338:31;3372:5;3338:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;3338:39:0::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;3395:9;3390:343;3414:6;:13;3410:1;:17;3390:343;;;3467:6;3474:1;3467:9;;;;;;;;;;;;;;-1:-1:-1::0;;;;;3453:23:0::1;:10;-1:-1:-1::0;;;;;3453:23:0::1;;3449:273;;3497:12;3532:8;;3512:17;3516:4;3522:3;3526:1;3522:6;;;;;;;3512:17;:28;;;;;;3497:43;;3566:15;3570:4;;3576;3566:3;:15::i;:::-;3559:4;:22:::0;;;3659:10:::1;3655:15:::0;;:3:::1;:15;::::0;;;;3671:9;;3629:77:::1;::::0;3559:4;3671:6;;3678:1;;3671:9;::::1;;;;;;;;;;;-1:-1:-1::0;;;;;3655:26:0::1;-1:-1:-1::0;;;;;3655:26:0::1;;;;;;;;;;;;;3683:4;3629:3;:77::i;:::-;3604:10;3600:15;::::0;;;:3:::1;:15;::::0;;;;3616:9;;3600:15;;;3616:6;;3623:1;;3616:9;::::1;;;;;;;;;;;-1:-1:-1::0;;;;;3600:26:0::1;-1:-1:-1::0;;;;;3600:26:0::1;;;;;;;;;;;;:106;;;;3449:273;;3429:3;;3390:343;;;;3761:5;;3753:4;;:13;;3745:49;;;::::0;;-1:-1:-1;;;3745:49:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;1741:1;3214:588:::0;:::o;1205:20::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1205:20:0;:::o;1168:30::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1168:30:0;;-1:-1:-1;1168:30:0;:::o;1141:20::-;;;;:::o;1337:64::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;1600:41::-;;;;;;;;;;;;;:::o;1255:::-;;;;;;;;;;;;;:::o;1518:60::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;1080:28::-;;;:::o;2211:120::-;2308:7;;;2302:20;;;;2294:29;;;;;;2211:120;;;;:::o;2085:::-;2182:7;;;2176:20;;;;2168:29;;;;;2337:136;2397:10;2428:7;;;:36;;-1:-1:-1;;2445:7:0;;;2462:2;2456;2445:7;2456:2;2439:19;;;;;:25;2428:36;2420:45;;;;;5641:453;5693:3;-1:-1:-1;;;;;5693:17:0;5689:34;;5714:7;;5689:34;-1:-1:-1;;;;;5750:9:0;;5735:12;5750:9;;;:3;:9;;;;;;;;5760:10;5750:21;;;;;;;;5788:8;;5784:303;;-1:-1:-1;;;;;5813:9:0;;5837:1;5813:9;;;:3;:9;;;;;;;;5823:10;5813:21;;;;;;;:25;;;5864:4;5860:15;;5870:4;5860:3;:15::i;:::-;5853:4;:22;5895:28;;;;;;;;-1:-1:-1;;;;;5895:28:0;;;5900:10;;5895:28;;;;;;;;;5971:3;-1:-1:-1;;;;;5964:24:0;;5989:10;6001:4;6007;5964:48;;;;;;;;;;;;;-1:-1:-1;;;;;5964:48:0;;;;;;-1:-1:-1;;;;;5964:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5964:48:0;5938:137;;;;;-1:-1:-1;;;5938:137:0;;;;;;;;;;;;;;;;;;;;;;;;;;;5641:453;;:::o;4784:849::-;4857:10;4834:12;4849:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;4849:27:0;;;;;;;;;;;4887:31;;;;4949:5;:13;;;;;;;4945:24;;4849:27;4945:3;:24::i;:::-;-1:-1:-1;;;;;4929:13:0;;;;;;:5;:13;;;;;;;;;:40;;;;4985:30;;;;;;;4929:13;;4990:10;;4985:30;;;;;;;;;;-1:-1:-1;;;;;5030:20:0;;5026:600;;5075:21;;:10;;:21;;;;;5091:4;;5075:21;;;;5091:4;5075:10;:21;;;;;;;:29;;5100:4;5075:29;;;5067:61;;;;;-1:-1:-1;;;5067:61:0;;;;;;;;;;;;-1:-1:-1;;;5067:61:0;;;;;;;;;;;;;;;5026:600;;;5182:106;;;5257:10;5182:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5182:106:0;-1:-1:-1;;;5182:106:0;;;5347:18;;;;5182:106;;-1:-1:-1;;5161:18:0;;-1:-1:-1;;;;;5347:11:0;;;5182:106;;5347:18;;5182:106;5347:18;;5182:106;5347:18;;;;;;;;;;-1:-1:-1;;5347:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5303:62;;;;5388:8;5380:46;;;;;-1:-1:-1;;;5380:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;5447:18;;:22;5443:172;;5531:11;5520:31;;;;;;;;;;;;;;;-1:-1:-1;5520:31:0;5490:109;;;;;-1:-1:-1;;;5490:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;5026:600;;;4784:849;;:::o
Swarm Source
ipfs://d0bc9551fa740656e4b8f37073927d209ccaccb7d4ef6bfc2dfd7df72c656888
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ 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.