Overview
S Balance
S Value
$0.00More Info
Private Name Tags
ContractCreator
Loading...
Loading
Contract Name:
HypeRegistry
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: GPL-3.0 pragma solidity >=0.6.0 <0.8.0; contract HypeRegistry { address public owner; address[] public registry; mapping(address=>uint256) public registryMap; int256 public counter; event HypeAdded(address hype, uint256 index); event HypeRemoved(address hype, uint256 index); constructor() { owner = msg.sender; } function add(address hype) external { require(msg.sender == owner,"only owner"); require(registryMap[hype]==0, "exists"); registry.push(hype); registryMap[hype] = registry.length; counter++; emit HypeAdded(hype, registry.length-1); } function addMany(address[] memory hypes) external { require(msg.sender == owner,"only owner"); for(uint256 i=0; i<hypes.length; i++) { if(registryMap[hypes[i]]!=0) continue; registry.push(hypes[i]); registryMap[hypes[i]] = registry.length; counter++; emit HypeAdded(hypes[i], registry.length-1); } } function remove(address hype) external { require(msg.sender == owner,"only owner"); require(registryMap[hype]!=0, "not exists"); emit HypeRemoved(hype, registryMap[hype]-1); registryMap[hype] = 0; counter--; } function hypeByIndex(uint256 index) external view returns (address, uint256){ return (registry[index], registryMap[registry[index]]); } function transferOwnership(address newOwner) external { require(msg.sender == owner, "only owner"); owner = newOwner; } }
{ "optimizer": { "enabled": true, "runs": 800 }, "metadata": { "bytecodeHash": "none" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"hype","type":"address"},{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"}],"name":"HypeAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"hype","type":"address"},{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"}],"name":"HypeRemoved","type":"event"},{"inputs":[{"internalType":"address","name":"hype","type":"address"}],"name":"add","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"hypes","type":"address[]"}],"name":"addMany","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"counter","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"hypeByIndex","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"registry","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"registryMap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"hype","type":"address"}],"name":"remove","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50600080546001600160a01b0319163317905561080b806100326000396000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c80638da5cb5b11610076578063b37d97b51161005b578063b37d97b514610191578063f1b4063714610234578063f2fde38b1461025a576100a3565b80638da5cb5b14610149578063ab0cd78a14610151576100a3565b80630a3b0a4f146100a857806329092d0e146100d05780635893253c146100f657806361bc221a1461012f575b600080fd5b6100ce600480360360208110156100be57600080fd5b50356001600160a01b0316610280565b005b6100ce600480360360208110156100e657600080fd5b50356001600160a01b03166103ee565b6101136004803603602081101561010c57600080fd5b503561051e565b604080516001600160a01b039092168252519081900360200190f35b610137610548565b60408051918252519081900360200190f35b61011361054e565b61016e6004803603602081101561016757600080fd5b503561055d565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6100ce600480360360208110156101a757600080fd5b8101906020810181356401000000008111156101c257600080fd5b8201836020820111156101d457600080fd5b803590602001918460208302840111640100000000831117156101f657600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506105cb945050505050565b6101376004803603602081101561024a57600080fd5b50356001600160a01b0316610771565b6100ce6004803603602081101561027057600080fd5b50356001600160a01b0316610783565b6000546001600160a01b031633146102cc576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b6001600160a01b03811660009081526002602052604090205415610337576040805162461bcd60e51b815260206004820152600660248201527f6578697374730000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6001805480820182557fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03841690811790915581546000828152600260209081526040918290208390556003805490950190945580519283526000199091019282019290925281517ffd73610dd51217377ee8fbb2a8afed164757d1aefb01f51caaf9d0b9be54613c929181900390910190a150565b6000546001600160a01b0316331461043a576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b6001600160a01b0381166000908152600260205260409020546104a4576040805162461bcd60e51b815260206004820152600a60248201527f6e6f742065786973747300000000000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260026020908152604091829020548251938452600019019083015280517fc12dfa67fe859719af9494510072bf7178d159a6ca10a9441c2f4f8f7bbd8a719281900390910190a16001600160a01b031660009081526002602052604081205560038054600019019055565b6001818154811061052e57600080fd5b6000918252602090912001546001600160a01b0316905081565b60035481565b6000546001600160a01b031681565b6000806001838154811061056d57fe5b9060005260206000200160009054906101000a90046001600160a01b0316600260006001868154811061059c57fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020549092509050915091565b6000546001600160a01b03163314610617576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b60005b815181101561076d576002600083838151811061063357fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205460001461066857610765565b600182828151811061067657fe5b602090810291909101810151825460018082018555600094855292842001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0390921691909117905554835190916002918590859081106106d257fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205560038054600101905581517ffd73610dd51217377ee8fbb2a8afed164757d1aefb01f51caaf9d0b9be54613c9083908390811061072f57fe5b6020026020010151600180805490500360405180836001600160a01b031681526020018281526020019250505060405180910390a15b60010161061a565b5050565b60026020526000908152604090205481565b6000546001600160a01b031633146107cf576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039290921691909117905556fea164736f6c6343000706000a
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100a35760003560e01c80638da5cb5b11610076578063b37d97b51161005b578063b37d97b514610191578063f1b4063714610234578063f2fde38b1461025a576100a3565b80638da5cb5b14610149578063ab0cd78a14610151576100a3565b80630a3b0a4f146100a857806329092d0e146100d05780635893253c146100f657806361bc221a1461012f575b600080fd5b6100ce600480360360208110156100be57600080fd5b50356001600160a01b0316610280565b005b6100ce600480360360208110156100e657600080fd5b50356001600160a01b03166103ee565b6101136004803603602081101561010c57600080fd5b503561051e565b604080516001600160a01b039092168252519081900360200190f35b610137610548565b60408051918252519081900360200190f35b61011361054e565b61016e6004803603602081101561016757600080fd5b503561055d565b604080516001600160a01b03909316835260208301919091528051918290030190f35b6100ce600480360360208110156101a757600080fd5b8101906020810181356401000000008111156101c257600080fd5b8201836020820111156101d457600080fd5b803590602001918460208302840111640100000000831117156101f657600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506105cb945050505050565b6101376004803603602081101561024a57600080fd5b50356001600160a01b0316610771565b6100ce6004803603602081101561027057600080fd5b50356001600160a01b0316610783565b6000546001600160a01b031633146102cc576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b6001600160a01b03811660009081526002602052604090205415610337576040805162461bcd60e51b815260206004820152600660248201527f6578697374730000000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6001805480820182557fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03841690811790915581546000828152600260209081526040918290208390556003805490950190945580519283526000199091019282019290925281517ffd73610dd51217377ee8fbb2a8afed164757d1aefb01f51caaf9d0b9be54613c929181900390910190a150565b6000546001600160a01b0316331461043a576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b6001600160a01b0381166000908152600260205260409020546104a4576040805162461bcd60e51b815260206004820152600a60248201527f6e6f742065786973747300000000000000000000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260026020908152604091829020548251938452600019019083015280517fc12dfa67fe859719af9494510072bf7178d159a6ca10a9441c2f4f8f7bbd8a719281900390910190a16001600160a01b031660009081526002602052604081205560038054600019019055565b6001818154811061052e57600080fd5b6000918252602090912001546001600160a01b0316905081565b60035481565b6000546001600160a01b031681565b6000806001838154811061056d57fe5b9060005260206000200160009054906101000a90046001600160a01b0316600260006001868154811061059c57fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020549092509050915091565b6000546001600160a01b03163314610617576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b60005b815181101561076d576002600083838151811061063357fe5b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000205460001461066857610765565b600182828151811061067657fe5b602090810291909101810151825460018082018555600094855292842001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0390921691909117905554835190916002918590859081106106d257fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205560038054600101905581517ffd73610dd51217377ee8fbb2a8afed164757d1aefb01f51caaf9d0b9be54613c9083908390811061072f57fe5b6020026020010151600180805490500360405180836001600160a01b031681526020018281526020019250505060405180910390a15b60010161061a565b5050565b60026020526000908152604090205481565b6000546001600160a01b031633146107cf576040805162461bcd60e51b815260206004820152600a60248201526937b7363c9037bbb732b960b11b604482015290519081900360640190fd5b6000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039290921691909117905556fea164736f6c6343000706000a
Deployed Bytecode Sourcemap
69:1592:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;411:285;;;;;;;;;;;;;;;;-1:-1:-1;411:285:0;-1:-1:-1;;;;;411:285:0;;:::i;:::-;;1099:253;;;;;;;;;;;;;;;;-1:-1:-1;1099:253:0;-1:-1:-1;;;;;1099:253:0;;:::i;128:25::-;;;;;;;;;;;;;;;;-1:-1:-1;128:25:0;;:::i;:::-;;;;-1:-1:-1;;;;;128:25:0;;;;;;;;;;;;;;209:21;;;:::i;:::-;;;;;;;;;;;;;;;;102:20;;;:::i;1362:147::-;;;;;;;;;;;;;;;;-1:-1:-1;1362:147:0;;:::i;:::-;;;;-1:-1:-1;;;;;1362:147:0;;;;;;;;;;;;;;;;;;;;;706:387;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;706:387:0;;-1:-1:-1;706:387:0;;-1:-1:-1;;;;;706:387:0:i;159:44::-;;;;;;;;;;;;;;;;-1:-1:-1;159:44:0;-1:-1:-1;;;;;159:44:0;;:::i;1519:139::-;;;;;;;;;;;;;;;;-1:-1:-1;1519:139:0;-1:-1:-1;;;;;1519:139:0;;:::i;411:285::-;479:5;;-1:-1:-1;;;;;479:5:0;465:10;:19;457:41;;;;;-1:-1:-1;;;457:41:0;;;;;;;;;;;;-1:-1:-1;;;457:41:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;516:17:0;;;;;;:11;:17;;;;;;:20;508:39;;;;;-1:-1:-1;;;508:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;557:8;:19;;;;;;;;;;;-1:-1:-1;;557:19:0;-1:-1:-1;;;;;557:19:0;;;;;;;;606:15;;-1:-1:-1;586:17:0;;;:11;557:19;586:17;;;;;;;;:35;;;631:7;:9;;;;;;;;655:34;;;;;-1:-1:-1;;671:17:0;;;655:34;;;;;;;;;;;;;;;;;;;;411:285;:::o;1099:253::-;1170:5;;-1:-1:-1;;;;;1170:5:0;1156:10;:19;1148:41;;;;;-1:-1:-1;;;1148:41:0;;;;;;;;;;;;-1:-1:-1;;;1148:41:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;1207:17:0;;;;;;:11;:17;;;;;;1199:43;;;;;-1:-1:-1;;;1199:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1275:17:0;;;;;;:11;:17;;;;;;;;;;1257:38;;;;;-1:-1:-1;;1275:19:0;1257:38;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1305:17:0;1325:1;1305:17;;;:11;:17;;;;;:21;1336:7;:9;;-1:-1:-1;;1336:9:0;;;1099:253::o;128:25::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;128:25:0;;-1:-1:-1;128:25:0;:::o;209:21::-;;;;:::o;102:20::-;;;-1:-1:-1;;;;;102:20:0;;:::o;1362:147::-;1421:7;1430;1456:8;1465:5;1456:15;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1456:15:0;1473:11;:28;1485:8;1494:5;1485:15;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1485:15:0;1473:28;;;;;;;;;;;;;1448:54;;-1:-1:-1;1473:28:0;-1:-1:-1;1362:147:0;;;:::o;706:387::-;788:5;;-1:-1:-1;;;;;788:5:0;774:10;:19;766:41;;;;;-1:-1:-1;;;766:41:0;;;;;;;;;;;;-1:-1:-1;;;766:41:0;;;;;;;;;;;;;;;821:9;817:270;836:5;:12;834:1;:14;817:270;;;872:11;:21;884:5;890:1;884:8;;;;;;;;;;;;;;-1:-1:-1;;;;;872:21:0;-1:-1:-1;;;;;872:21:0;;;;;;;;;;;;;895:1;872:24;869:37;;898:8;;869:37;920:8;934:5;940:1;934:8;;;;;;;;;;;;;;;;;;;920:23;;;;;;;;-1:-1:-1;920:23:0;;;;;;;;;-1:-1:-1;;920:23:0;-1:-1:-1;;;;;920:23:0;;;;;;;;;981:15;969:8;;981:15;;957:11;;969:8;;975:1;;969:8;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;957:21:0;;;;;;;;;;;-1:-1:-1;957:21:0;:39;1010:7;:9;;;;;;1048:8;;1038:38;;1048:5;;1054:1;;1048:8;;;;;;;;;;;;1074:1;1058:8;:15;;;;:17;1038:38;;;;-1:-1:-1;;;;;1038:38:0;;;;;;;;;;;;;;;;;;;;;817:270;850:3;;817:270;;;;706:387;:::o;159:44::-;;;;;;;;;;;;;:::o;1519:139::-;1605:5;;-1:-1:-1;;;;;1605:5:0;1591:10;:19;1583:42;;;;;-1:-1:-1;;;1583:42:0;;;;;;;;;;;;-1:-1:-1;;;1583:42:0;;;;;;;;;;;;;;;1635:5;:16;;-1:-1:-1;;1635:16:0;-1:-1:-1;;;;;1635:16:0;;;;;;;;;;1519:139::o
Swarm Source
none
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.