ETH Price: $3,083.43 (+0.57%)
Gas: 10 Gwei

Contract

0xc95CbE4ca30055c787CB784BE99D6a8494d0d197
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Set Governance170262852023-04-11 17:21:23374 days ago1681233683IN
0xc95CbE4c...494d0d197
0 ETH0.0013739951
Set Controller126528932021-06-17 16:08:281037 days ago1623946108IN
0xc95CbE4c...494d0d197
0 ETH0.0014748651
Set Governance117630162021-01-31 9:40:481174 days ago1612086048IN
0xc95CbE4c...494d0d197
0 ETH0.01450491510
Set Controller108430522020-09-11 21:32:171315 days ago1599859937IN
0xc95CbE4c...494d0d197
0 ETH0.0031545111
Set Controller108430392020-09-11 21:29:071315 days ago1599859747IN
0xc95CbE4c...494d0d197
0 ETH0.0031545111
Set Controller107700892020-08-31 17:37:271327 days ago1598895447IN
0xc95CbE4c...494d0d197
0 ETH0.01345989310
0x60806040107700722020-08-31 17:33:531327 days ago1598895233IN
 Create: Storage
0 ETH0.08106593310

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Storage

Compiler Version
v0.5.16+commit.9c3226ce

Optimization Enabled:
Yes with 150 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2020-08-31
*/

// File: contracts/Storage.sol

pragma solidity 0.5.16;

contract Storage {

  address public governance;
  address public controller;

  constructor() public {
    governance = msg.sender;
  }

  modifier onlyGovernance() {
    require(isGovernance(msg.sender), "Not governance");
    _;
  }

  function setGovernance(address _governance) public onlyGovernance {
    require(_governance != address(0), "new governance shouldn't be empty");
    governance = _governance;
  }

  function setController(address _controller) public onlyGovernance {
    require(_controller != address(0), "new controller shouldn't be empty");
    controller = _controller;
  }

  function isGovernance(address account) public view returns (bool) {
    return account == governance;
  }

  function isController(address account) public view returns (bool) {
    return account == controller;
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":true,"inputs":[],"name":"controller","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"governance","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isController","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isGovernance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_controller","type":"address"}],"name":"setController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_governance","type":"address"}],"name":"setGovernance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50600080546001600160a01b03191633179055610362806100326000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80635aa6e6751461006757806392eefe9b1461008b578063ab033ea9146100b3578063b429afeb146100d9578063dee1f0e414610113578063f77c479114610139575b600080fd5b61006f610141565b604080516001600160a01b039092168252519081900360200190f35b6100b1600480360360208110156100a157600080fd5b50356001600160a01b0316610150565b005b6100b1600480360360208110156100c957600080fd5b50356001600160a01b0316610202565b6100ff600480360360208110156100ef57600080fd5b50356001600160a01b03166102b4565b604080519115158252519081900360200190f35b6100ff6004803603602081101561012957600080fd5b50356001600160a01b03166102c8565b61006f6102dc565b6000546001600160a01b031681565b610159336102c8565b61019b576040805162461bcd60e51b815260206004820152600e60248201526d4e6f7420676f7665726e616e636560901b604482015290519081900360640190fd5b6001600160a01b0381166101e05760405162461bcd60e51b815260040180806020018281038252602181526020018061030d6021913960400191505060405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b61020b336102c8565b61024d576040805162461bcd60e51b815260206004820152600e60248201526d4e6f7420676f7665726e616e636560901b604482015290519081900360640190fd5b6001600160a01b0381166102925760405162461bcd60e51b81526004018080602001828103825260218152602001806102ec6021913960400191505060405180910390fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0390811691161490565b6000546001600160a01b0390811691161490565b6001546001600160a01b03168156fe6e657720676f7665726e616e63652073686f756c646e277420626520656d7074796e657720636f6e74726f6c6c65722073686f756c646e277420626520656d707479a265627a7a723158207d4d46b98b8d3675de01b067c55b504f67c4eff6ab5bff6ebe4d551a2e439b8364736f6c63430005100032

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100625760003560e01c80635aa6e6751461006757806392eefe9b1461008b578063ab033ea9146100b3578063b429afeb146100d9578063dee1f0e414610113578063f77c479114610139575b600080fd5b61006f610141565b604080516001600160a01b039092168252519081900360200190f35b6100b1600480360360208110156100a157600080fd5b50356001600160a01b0316610150565b005b6100b1600480360360208110156100c957600080fd5b50356001600160a01b0316610202565b6100ff600480360360208110156100ef57600080fd5b50356001600160a01b03166102b4565b604080519115158252519081900360200190f35b6100ff6004803603602081101561012957600080fd5b50356001600160a01b03166102c8565b61006f6102dc565b6000546001600160a01b031681565b610159336102c8565b61019b576040805162461bcd60e51b815260206004820152600e60248201526d4e6f7420676f7665726e616e636560901b604482015290519081900360640190fd5b6001600160a01b0381166101e05760405162461bcd60e51b815260040180806020018281038252602181526020018061030d6021913960400191505060405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b61020b336102c8565b61024d576040805162461bcd60e51b815260206004820152600e60248201526d4e6f7420676f7665726e616e636560901b604482015290519081900360640190fd5b6001600160a01b0381166102925760405162461bcd60e51b81526004018080602001828103825260218152602001806102ec6021913960400191505060405180910390fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0390811691161490565b6000546001600160a01b0390811691161490565b6001546001600160a01b03168156fe6e657720676f7665726e616e63652073686f756c646e277420626520656d7074796e657720636f6e74726f6c6c65722073686f756c646e277420626520656d707479a265627a7a723158207d4d46b98b8d3675de01b067c55b504f67c4eff6ab5bff6ebe4d551a2e439b8364736f6c63430005100032

Deployed Bytecode Sourcemap

61:850:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;61:850:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;85:25;;;:::i;:::-;;;;-1:-1:-1;;;;;85:25:0;;;;;;;;;;;;;;501:181;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;501:181:0;-1:-1:-1;;;;;501:181:0;;:::i;:::-;;314;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;314:181:0;-1:-1:-1;;;;;314:181:0;;:::i;801:107::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;801:107:0;-1:-1:-1;;;;;801:107:0;;:::i;:::-;;;;;;;;;;;;;;;;;;688;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;688:107:0;-1:-1:-1;;;;;688:107:0;;:::i;115:25::-;;;:::i;85:::-;;;-1:-1:-1;;;;;85:25:0;;:::o;501:181::-;251:24;264:10;251:12;:24::i;:::-;243:51;;;;;-1:-1:-1;;;243:51:0;;;;;;;;;;;;-1:-1:-1;;;243:51:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;582:25:0;;574:71;;;;-1:-1:-1;;;574:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;652:10;:24;;-1:-1:-1;;;;;;652:24:0;-1:-1:-1;;;;;652:24:0;;;;;;;;;;501:181::o;314:::-;251:24;264:10;251:12;:24::i;:::-;243:51;;;;;-1:-1:-1;;;243:51:0;;;;;;;;;;;;-1:-1:-1;;;243:51:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;395:25:0;;387:71;;;;-1:-1:-1;;;387:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;465:10;:24;;-1:-1:-1;;;;;;465:24:0;-1:-1:-1;;;;;465:24:0;;;;;;;;;;314:181::o;801:107::-;892:10;;-1:-1:-1;;;;;892:10:0;;;881:21;;;;801:107::o;688:::-;748:4;779:10;-1:-1:-1;;;;;779:10:0;;;768:21;;;;688:107::o;115:25::-;;;-1:-1:-1;;;;;115:25:0;;:::o

Swarm Source

bzzr://7d4d46b98b8d3675de01b067c55b504f67c4eff6ab5bff6ebe4d551a2e439b83

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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