Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
IterableMapping
Compiler Version
v0.8.9+commit.e5eed63a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-08-26 */ library IterableMapping { // Iterable mapping from address to uint; struct Map { address[] keys; mapping(address => uint) values; mapping(address => uint) indexOf; mapping(address => bool) inserted; } function get(Map storage map, address key) public view returns (uint) { return map.values[key]; } function getIndexOfKey(Map storage map, address key) public view returns (int) { if(!map.inserted[key]) { return -1; } return int(map.indexOf[key]); } function getKeyAtIndex(Map storage map, uint index) public view returns (address) { return map.keys[index]; } function size(Map storage map) public view returns (uint) { return map.keys.length; } function set(Map storage map, address key, uint val) public { if (map.inserted[key]) { map.values[key] = val; } else { map.inserted[key] = true; map.values[key] = val; map.indexOf[key] = map.keys.length; map.keys.push(key); } } function remove(Map storage map, address key) public { if (!map.inserted[key]) { return; } delete map.inserted[key]; delete map.values[key]; uint index = map.indexOf[key]; uint lastIndex = map.keys.length - 1; address lastKey = map.keys[lastIndex]; map.indexOf[lastKey] = index; delete map.indexOf[key]; map.keys[index] = lastKey; map.keys.pop(); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract Creation Code
6104e761003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806317e142d1146100715780634c60db9c14610097578063732a2ccf146100b9578063bc2b405c146100e6578063d1aa9e7e14610106578063deb3d89614610131575b600080fd5b61008461007f3660046103c4565b610143565b6040519081526020015b60405180910390f35b8180156100a357600080fd5b506100b76100b23660046103c4565b610191565b005b6100846100c73660046103c4565b6001600160a01b03166000908152600191909101602052604090205490565b8180156100f257600080fd5b506100b76101013660046103f0565b6102cc565b610119610114366004610425565b610375565b6040516001600160a01b03909116815260200161008e565b61008461013f366004610447565b5490565b6001600160a01b038116600090815260038301602052604081205460ff1661016e575060001961018b565b506001600160a01b03811660009081526002830160205260409020545b92915050565b6001600160a01b038116600090815260038301602052604090205460ff166101b7575050565b6001600160a01b03811660009081526003830160209081526040808320805460ff191690556001808601835281842084905560028601909252822054845490929161020191610460565b9050600084600001828154811061021a5761021a610485565b60009182526020808320909101546001600160a01b0390811680845260028901909252604080842087905590871683528220919091558554909150819086908590811061026957610269610485565b600091825260209091200180546001600160a01b0319166001600160a01b039290921691909117905584548590806102a3576102a361049b565b600082815260209020810160001990810180546001600160a01b03191690550190555050505050565b6001600160a01b038216600090815260038401602052604090205460ff1615610311576001600160a01b03821660009081526001840160205260409020819055505050565b6001600160a01b03821660008181526003850160209081526040808320805460ff19166001908117909155878101835281842086905587546002890184529184208290558101875586835291200180546001600160a01b0319169091179055505050565b600082600001828154811061038c5761038c610485565b6000918252602090912001546001600160a01b03169392505050565b80356001600160a01b03811681146103bf57600080fd5b919050565b600080604083850312156103d757600080fd5b823591506103e7602084016103a8565b90509250929050565b60008060006060848603121561040557600080fd5b83359250610415602085016103a8565b9150604084013590509250925092565b6000806040838503121561043857600080fd5b50508035926020909101359150565b60006020828403121561045957600080fd5b5035919050565b60008282101561048057634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220b01bb5d8e5f51fd2987df423144f5da87dc6b1716e139e5d73c314cb9980a06464736f6c63430008090033
Deployed Bytecode
0x73953be4534878cc81b5e2190d7b741269b78243e0301460806040526004361061006c5760003560e01c806317e142d1146100715780634c60db9c14610097578063732a2ccf146100b9578063bc2b405c146100e6578063d1aa9e7e14610106578063deb3d89614610131575b600080fd5b61008461007f3660046103c4565b610143565b6040519081526020015b60405180910390f35b8180156100a357600080fd5b506100b76100b23660046103c4565b610191565b005b6100846100c73660046103c4565b6001600160a01b03166000908152600191909101602052604090205490565b8180156100f257600080fd5b506100b76101013660046103f0565b6102cc565b610119610114366004610425565b610375565b6040516001600160a01b03909116815260200161008e565b61008461013f366004610447565b5490565b6001600160a01b038116600090815260038301602052604081205460ff1661016e575060001961018b565b506001600160a01b03811660009081526002830160205260409020545b92915050565b6001600160a01b038116600090815260038301602052604090205460ff166101b7575050565b6001600160a01b03811660009081526003830160209081526040808320805460ff191690556001808601835281842084905560028601909252822054845490929161020191610460565b9050600084600001828154811061021a5761021a610485565b60009182526020808320909101546001600160a01b0390811680845260028901909252604080842087905590871683528220919091558554909150819086908590811061026957610269610485565b600091825260209091200180546001600160a01b0319166001600160a01b039290921691909117905584548590806102a3576102a361049b565b600082815260209020810160001990810180546001600160a01b03191690550190555050505050565b6001600160a01b038216600090815260038401602052604090205460ff1615610311576001600160a01b03821660009081526001840160205260409020819055505050565b6001600160a01b03821660008181526003850160209081526040808320805460ff19166001908117909155878101835281842086905587546002890184529184208290558101875586835291200180546001600160a01b0319169091179055505050565b600082600001828154811061038c5761038c610485565b6000918252602090912001546001600160a01b03169392505050565b80356001600160a01b03811681146103bf57600080fd5b919050565b600080604083850312156103d757600080fd5b823591506103e7602084016103a8565b90509250929050565b60008060006060848603121561040557600080fd5b83359250610415602085016103a8565b9150604084013590509250925092565b6000806040838503121561043857600080fd5b50508035926020909101359150565b60006020828403121561045957600080fd5b5035919050565b60008282101561048057634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220b01bb5d8e5f51fd2987df423144f5da87dc6b1716e139e5d73c314cb9980a06464736f6c63430008090033
Deployed Bytecode Sourcemap
0:1631:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;378:195;;;;;;:::i;:::-;;:::i;:::-;;;623:25:1;;;611:2;596:18;378:195:0;;;;;;;;1155:473;;;;;;;;;;-1:-1:-1;1155:473:0;;;;;:::i;:::-;;:::i;:::-;;259:111;;;;;;:::i;:::-;-1:-1:-1;;;;;347:15:0;323:4;347:15;;;:10;;;;;:15;;;;;;;259:111;823:324;;;;;;;;;;-1:-1:-1;823:324:0;;;;;:::i;:::-;;:::i;581:123::-;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;1641:32:1;;;1623:51;;1611:2;1596:18;581:123:0;1469:211:1;716:99:0;;;;;;:::i;:::-;792:15;;716:99;378:195;-1:-1:-1;;;;;472:17:0;;452:3;472:17;;;:12;;;:17;;;;;;;;468:59;;-1:-1:-1;;;506:9:0;;468:59;-1:-1:-1;;;;;;548:16:0;;;;;;:11;;;:16;;;;;;378:195;;;;;:::o;1155:473::-;-1:-1:-1;;;;;1224:17:0;;;;;;:12;;;:17;;;;;;;;1219:57;;1155:473;;:::o;1219:57::-;-1:-1:-1;;;;;1295:17:0;;;;;;:12;;;:17;;;;;;;;1288:24;;-1:-1:-1;;1288:24:0;;;;1330:10;;;:15;;;;;1323:22;;;1371:11;;;:16;;;;;;1415:15;;1371:16;;1295:17;1415:19;;;:::i;:::-;1398:36;;1445:15;1463:3;:8;;1472:9;1463:19;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1463:19:0;;;1495:20;;;:11;;;:20;;;;;;;:28;;;1541:16;;;;;;;1534:23;;;;1570:15;;1463:19;;-1:-1:-1;1463:19:0;;1495:3;;1518:5;;1570:15;;;;;;:::i;:::-;;;;;;;;;;:25;;-1:-1:-1;;;;;;1570:25:0;-1:-1:-1;;;;;1570:25:0;;;;;;;;;;1606:14;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;1606:14:0;;;;;-1:-1:-1;;;;;;1606:14:0;;;;;;-1:-1:-1;;;;;1155:473:0:o;823:324::-;-1:-1:-1;;;;;898:17:0;;;;;;:12;;;:17;;;;;;;;894:246;;;-1:-1:-1;;;;;932:15:0;;;;;;:10;;;:15;;;;;:21;;;823:324;;;:::o;894:246::-;-1:-1:-1;;;;;986:17:0;;;;;;:12;;;:17;;;;;;;;:24;;-1:-1:-1;;986:24:0;1006:4;986:24;;;;;;1025:10;;;:15;;;;;:21;;;1080:15;;1061:11;;;:16;;;;;:34;;;1110:18;;;;;;;;;;;;-1:-1:-1;;;;;;1110:18:0;;;;;;823:324;;;:::o;581:123::-;654:7;681:3;:8;;690:5;681:15;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;681:15:0;;581:123;-1:-1:-1;;;581:123: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:274::-;280:6;288;341:2;329:9;320:7;316:23;312:32;309:52;;;357:1;354;347:12;309:52;393:9;380:23;370:33;;422:38;456:2;445:9;441:18;422:38;:::i;:::-;412:48;;192:274;;;;;:::o;849:342::-;946:6;954;962;1015:2;1003:9;994:7;990:23;986:32;983:52;;;1031:1;1028;1021:12;983:52;1067:9;1054:23;1044:33;;1096:38;1130:2;1119:9;1115:18;1096:38;:::i;:::-;1086:48;;1181:2;1170:9;1166:18;1153:32;1143:42;;849:342;;;;;:::o;1196:268::-;1284:6;1292;1345:2;1333:9;1324:7;1320:23;1316:32;1313:52;;;1361:1;1358;1351:12;1313:52;-1:-1:-1;;1384:23:1;;;1454:2;1439:18;;;1426:32;;-1:-1:-1;1196:268:1:o;1685:200::-;1764:6;1817:2;1805:9;1796:7;1792:23;1788:32;1785:52;;;1833:1;1830;1823:12;1785:52;-1:-1:-1;1856:23:1;;1685:200;-1:-1:-1;1685:200:1:o;1890:222::-;1930:4;1958:1;1955;1952:8;1949:131;;;2002:10;1997:3;1993:20;1990:1;1983:31;2037:4;2034:1;2027:15;2065:4;2062:1;2055:15;1949:131;-1:-1:-1;2097:9:1;;1890:222::o;2117:127::-;2178:10;2173:3;2169:20;2166:1;2159:31;2209:4;2206:1;2199:15;2233:4;2230:1;2223:15;2249:127;2310:10;2305:3;2301:20;2298:1;2291:31;2341:4;2338:1;2331:15;2365:4;2362:1;2355:15
Swarm Source
ipfs://b01bb5d8e5f51fd2987df423144f5da87dc6b1716e139e5d73c314cb9980a064
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
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.