Source Code
Overview
AVAX Balance
Token Holdings
More Info
ContractCreator
Multichain Info
N/A
Latest 25 from a total of 25 transactions
| Transaction Hash |
Method
|
Block
|
From
|
To
|
Amount
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Set Uint | 36983769 | 455 days ago | IN | 0 AVAX | 0.0000316 | ||||
| Set Address | 36983416 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Uint | 36983412 | 455 days ago | IN | 0 AVAX | 0.0000288 | ||||
| Set Address | 36983388 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Uint | 36983386 | 455 days ago | IN | 0 AVAX | 0.0000316 | ||||
| Set Address | 36983383 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983374 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983373 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Uint | 36983367 | 455 days ago | IN | 0 AVAX | 0.0000316 | ||||
| Set Address | 36983363 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983348 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983335 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Uint | 36983333 | 455 days ago | IN | 0 AVAX | 0.0000316 | ||||
| Set Address | 36983258 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Uint | 36983253 | 455 days ago | IN | 0 AVAX | 0.0000316 | ||||
| Set Address | 36983187 | 455 days ago | IN | 0 AVAX | 0.00002919 | ||||
| Set Address | 36983184 | 455 days ago | IN | 0 AVAX | 0.00003199 | ||||
| Set Address | 36983177 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983176 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983171 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983106 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983090 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36983085 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36982960 | 455 days ago | IN | 0 AVAX | 0.00002917 | ||||
| Set Address | 36982857 | 455 days ago | IN | 0 AVAX | 0.00002917 |
Latest 25 internal transactions (View All)
| Parent Transaction Hash | Block | From | To | Amount | ||
|---|---|---|---|---|---|---|
| 52308318 | 2 days ago | 0 AVAX | ||||
| 52302319 | 2 days ago | 0 AVAX | ||||
| 52301593 | 2 days ago | 0 AVAX | ||||
| 52301369 | 2 days ago | 0 AVAX | ||||
| 52211204 | 6 days ago | 0 AVAX | ||||
| 51667148 | 23 days ago | 0 AVAX | ||||
| 51667133 | 23 days ago | 0 AVAX | ||||
| 51666827 | 23 days ago | 0 AVAX | ||||
| 51666811 | 23 days ago | 0 AVAX | ||||
| 51658745 | 24 days ago | 0 AVAX | ||||
| 51540603 | 27 days ago | 0 AVAX | ||||
| 51531936 | 27 days ago | 0 AVAX | ||||
| 51531270 | 27 days ago | 0 AVAX | ||||
| 51478621 | 28 days ago | 0 AVAX | ||||
| 51478471 | 28 days ago | 0 AVAX | ||||
| 51449179 | 29 days ago | 0 AVAX | ||||
| 51448975 | 29 days ago | 0 AVAX | ||||
| 51448962 | 29 days ago | 0 AVAX | ||||
| 51418187 | 30 days ago | 0 AVAX | ||||
| 51418157 | 30 days ago | 0 AVAX | ||||
| 51417074 | 30 days ago | 0 AVAX | ||||
| 51417068 | 30 days ago | 0 AVAX | ||||
| 51411670 | 30 days ago | 0 AVAX | ||||
| 51325091 | 32 days ago | 0 AVAX | ||||
| 51301643 | 33 days ago | 0 AVAX |
Loading...
Loading
Contract Name:
Storage
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 5000 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: GPL-3.0-only
pragma solidity 0.8.17;
/// @title The primary persistent storage for GoGoPool
/// Based on RocketStorage by RocketPool
contract Storage {
error InvalidGuardianConfirmation();
error InvalidOrOutdatedContract();
error MustBeGuardian();
error InvalidGuardianAddress();
event GuardianChanged(address oldGuardian, address newGuardian);
// Storage maps
mapping(bytes32 => address) private addressStorage;
mapping(bytes32 => bool) private booleanStorage;
mapping(bytes32 => bytes) private bytesStorage;
mapping(bytes32 => bytes32) private bytes32Storage;
mapping(bytes32 => int256) private intStorage;
mapping(bytes32 => string) private stringStorage;
mapping(bytes32 => uint256) private uintStorage;
// Guardian address
address private guardian;
address public newGuardian;
/// @dev Only allow access from guardian or the latest version of a contract in the GoGoPool network
modifier onlyGuardianOrRegisteredNetworkContract() {
if (booleanStorage[keccak256(abi.encodePacked("contract.exists", msg.sender))] == false && msg.sender != guardian) {
revert InvalidOrOutdatedContract();
}
_;
}
/// @dev This contract will be deployed via create2 proxy, so msg.sender will not work.
constructor() {
emit GuardianChanged(address(0), tx.origin);
guardian = tx.origin;
}
/// @notice Initiates the transfer of guardianship to a new address
/// @param newAddress The address that will become the guardian of the protocol
function setGuardian(address newAddress) external {
// Check tx comes from current guardian
if (msg.sender != guardian) {
revert MustBeGuardian();
}
if (newAddress == address(0x0)) {
revert InvalidGuardianAddress();
}
// Store new address awaiting confirmation
newGuardian = newAddress;
emit GuardianChanged(guardian, newGuardian);
}
/// @notice Get the protocol's guardian address
/// @return The C-chain address for the guardian of the protocol
function getGuardian() external view returns (address) {
return guardian;
}
/// @notice Completes the transfer of guardianship
function confirmGuardian() external {
if (msg.sender != newGuardian) {
revert InvalidGuardianConfirmation();
}
// Store old guardian for event
address oldGuardian = guardian;
// Update guardian and clear storage
guardian = newGuardian;
delete newGuardian;
emit GuardianChanged(oldGuardian, guardian);
}
//
// GET
//
function getAddress(bytes32 key) external view returns (address) {
return addressStorage[key];
}
function getBool(bytes32 key) external view returns (bool) {
return booleanStorage[key];
}
function getBytes(bytes32 key) external view returns (bytes memory) {
return bytesStorage[key];
}
function getBytes32(bytes32 key) external view returns (bytes32) {
return bytes32Storage[key];
}
function getInt(bytes32 key) external view returns (int256) {
return intStorage[key];
}
function getString(bytes32 key) external view returns (string memory) {
return stringStorage[key];
}
function getUint(bytes32 key) external view returns (uint256) {
return uintStorage[key];
}
//
// SET
//
function setAddress(bytes32 key, address value) external onlyGuardianOrRegisteredNetworkContract {
addressStorage[key] = value;
}
function setBool(bytes32 key, bool value) external onlyGuardianOrRegisteredNetworkContract {
booleanStorage[key] = value;
}
function setBytes(bytes32 key, bytes calldata value) external onlyGuardianOrRegisteredNetworkContract {
bytesStorage[key] = value;
}
function setBytes32(bytes32 key, bytes32 value) external onlyGuardianOrRegisteredNetworkContract {
bytes32Storage[key] = value;
}
function setInt(bytes32 key, int256 value) external onlyGuardianOrRegisteredNetworkContract {
intStorage[key] = value;
}
function setString(bytes32 key, string calldata value) external onlyGuardianOrRegisteredNetworkContract {
stringStorage[key] = value;
}
function setUint(bytes32 key, uint256 value) external onlyGuardianOrRegisteredNetworkContract {
uintStorage[key] = value;
}
//
// DELETE
//
function deleteAddress(bytes32 key) external onlyGuardianOrRegisteredNetworkContract {
delete addressStorage[key];
}
function deleteBool(bytes32 key) external onlyGuardianOrRegisteredNetworkContract {
delete booleanStorage[key];
}
function deleteBytes(bytes32 key) external onlyGuardianOrRegisteredNetworkContract {
delete bytesStorage[key];
}
function deleteBytes32(bytes32 key) external onlyGuardianOrRegisteredNetworkContract {
delete bytes32Storage[key];
}
function deleteInt(bytes32 key) external onlyGuardianOrRegisteredNetworkContract {
delete intStorage[key];
}
function deleteString(bytes32 key) external onlyGuardianOrRegisteredNetworkContract {
delete stringStorage[key];
}
function deleteUint(bytes32 key) external onlyGuardianOrRegisteredNetworkContract {
delete uintStorage[key];
}
//
// ADD / SUBTRACT HELPERS
//
/// @notice Add to a uint
/// @param key The key for the record
/// @param amount An amount to add to the record's value
function addUint(bytes32 key, uint256 amount) external onlyGuardianOrRegisteredNetworkContract {
uintStorage[key] = uintStorage[key] + amount;
}
/// @notice Subtract from a uint
/// @param key The key for the record
/// @param amount An amount to subtract from the record's value
function subUint(bytes32 key, uint256 amount) external onlyGuardianOrRegisteredNetworkContract {
uintStorage[key] = uintStorage[key] - amount;
}
}{
"remappings": [
"@openzeppelin/=node_modules/@openzeppelin/",
"@rari-capital/solmate/=lib/solmate/",
"ds-test/=lib/forge-std/lib/ds-test/src/",
"erc4626-tests/=lib/erc4626-tests/",
"eth-gas-reporter/=node_modules/eth-gas-reporter/",
"forge-std/=lib/forge-std/src/",
"hardhat/=node_modules/hardhat/",
"sol-utils/=lib/sol-utils/src/",
"solmate/=lib/solmate/src/"
],
"optimizer": {
"enabled": true,
"runs": 5000
},
"metadata": {
"bytecodeHash": "ipfs"
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "london",
"libraries": {}
}Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidGuardianAddress","type":"error"},{"inputs":[],"name":"InvalidGuardianConfirmation","type":"error"},{"inputs":[],"name":"InvalidOrOutdatedContract","type":"error"},{"inputs":[],"name":"MustBeGuardian","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldGuardian","type":"address"},{"indexed":false,"internalType":"address","name":"newGuardian","type":"address"}],"name":"GuardianChanged","type":"event"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"addUint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"confirmGuardian","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"deleteAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"deleteBool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"deleteBytes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"deleteBytes32","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"deleteInt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"deleteString","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"deleteUint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getGuardian","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getInt","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getUint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"newGuardian","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"address","name":"value","type":"address"}],"name":"setAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setBool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"bytes","name":"value","type":"bytes"}],"name":"setBytes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"bytes32","name":"value","type":"bytes32"}],"name":"setBytes32","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"setGuardian","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"int256","name":"value","type":"int256"}],"name":"setInt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"string","name":"value","type":"string"}],"name":"setString","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"setUint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"subUint","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b5060408051600081523260208201527fa14fc14d8620a708a896fd11392a235647d99385500a295f0d7da2a258b2e967910160405180910390a1600780546001600160a01b031916321790556116f68061006b6000396000f3fe608060405234801561001057600080fd5b50600436106101b95760003560e01c80638c160095116100f9578063c031a18011610097578063e2a4853a11610071578063e2a4853a146103fd578063e2b202bf14610410578063ebb9d8c914610423578063f6bb3cc41461043657600080fd5b8063c031a180146103b7578063ca446dd9146103ca578063dc97d962146103dd57600080fd5b8063a75b87d2116100d3578063a75b87d214610360578063abfdcced14610371578063adb353dc14610384578063bd02d0f51461039757600080fd5b80638c160095146102ff578063986e791a14610312578063a6ed563e1461033257600080fd5b80632e28d08411610166578063616b59f611610140578063616b59f6146102935780636e899550146102a65780637ae1cfca146102b95780638a0dac4a146102ec57600080fd5b80632e28d0841461025a5780633e49bed01461026d5780634e91db081461028057600080fd5b80631e0ea61e116101975780631e0ea61e1461021657806321f8a7211461021e5780632c62ff2d1461024757600080fd5b80630b9adc57146101be5780630e14a376146101d357806319859847146101e6575b600080fd5b6101d16101cc3660046112cf565b610449565b005b6101d16101e13660046112cf565b6104f5565b6008546101f9906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d16105c6565b6101f961022c3660046112cf565b6000908152602081905260409020546001600160a01b031690565b6101d16102553660046112cf565b61068f565b6101d1610268366004611331565b610760565b6101d161027b36600461137d565b61081a565b6101d161028e36600461137d565b6108c7565b6101d16102a13660046112cf565b610974565b6101d16102b4366004611331565b610a29565b6102dc6102c73660046112cf565b60009081526001602052604090205460ff1690565b604051901515815260200161020d565b6101d16102fa3660046113bb565b610add565b6101d161030d3660046112cf565b610bd5565b6103256103203660046112cf565b610c81565b60405161020d9190611423565b6103526103403660046112cf565b60009081526003602052604090205490565b60405190815260200161020d565b6007546001600160a01b03166101f9565b6101d161037f366004611436565b610d23565b6101d161039236600461137d565b610dfc565b6103526103a53660046112cf565b60009081526006602052604090205490565b6103256103c53660046112cf565b610ec7565b6101d16103d836600461146b565b610ee4565b6103526103eb3660046112cf565b60009081526004602052604090205490565b6101d161040b36600461137d565b610fc5565b6101d161041e3660046112cf565b611072565b6101d161043136600461137d565b61111e565b6101d16104443660046112cf565b6111d3565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156104c657506007546001600160a01b03163314155b156104e457604051631eee95db60e11b815260040160405180910390fd5b600090815260036020526040812055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561057257506007546001600160a01b03163314155b1561059057604051631eee95db60e11b815260040160405180910390fd5b600090815260208190526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6008546001600160a01b0316331461060a576040517fa5ccf75400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60078054600880546001600160a01b038082167fffffffffffffffffffffffff0000000000000000000000000000000000000000808616821790965594909116909155604080519190921680825260208201939093527fa14fc14d8620a708a896fd11392a235647d99385500a295f0d7da2a258b2e96791015b60405180910390a150565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561070c57506007546001600160a01b03163314155b1561072a57604051631eee95db60e11b815260040160405180910390fd5b600090815260016020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156107dd57506007546001600160a01b03163314155b156107fb57604051631eee95db60e11b815260040160405180910390fd5b6000838152600260205260409020610814828483611568565b50505050565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561089757506007546001600160a01b03163314155b156108b557604051631eee95db60e11b815260040160405180910390fd5b60009182526004602052604090912055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561094457506007546001600160a01b03163314155b1561096257604051631eee95db60e11b815260040160405180910390fd5b60009182526003602052604090912055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156109f157506007546001600160a01b03163314155b15610a0f57604051631eee95db60e11b815260040160405180910390fd5b6000818152600260205260408120610a2691611281565b50565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610aa657506007546001600160a01b03163314155b15610ac457604051631eee95db60e11b815260040160405180910390fd5b6000838152600560205260409020610814828483611568565b6007546001600160a01b03163314610b21576040517f0da3c81800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116610b61576040517f1b08105400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600880547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038381169182179092556007546040805191909316815260208101919091527fa14fc14d8620a708a896fd11392a235647d99385500a295f0d7da2a258b2e9679101610684565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610c5257506007546001600160a01b03163314155b15610c7057604051631eee95db60e11b815260040160405180910390fd5b600090815260046020526040812055565b6000818152600560205260409020805460609190610c9e906114c6565b80601f0160208091040260200160405190810160405280929190818152602001828054610cca906114c6565b8015610d175780601f10610cec57610100808354040283529160200191610d17565b820191906000526020600020905b815481529060010190602001808311610cfa57829003601f168201915b50505050509050919050565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610da057506007546001600160a01b03163314155b15610dbe57604051631eee95db60e11b815260040160405180910390fd5b60009182526001602052604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610e7957506007546001600160a01b03163314155b15610e9757604051631eee95db60e11b815260040160405180910390fd5b600082815260066020526040902054610eb1908290611694565b6000928352600660205260409092209190915550565b6000818152600260205260409020805460609190610c9e906114c6565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610f6157506007546001600160a01b03163314155b15610f7f57604051631eee95db60e11b815260040160405180910390fd5b60009182526020829052604090912080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03909216919091179055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561104257506007546001600160a01b03163314155b1561106057604051631eee95db60e11b815260040160405180910390fd5b60009182526006602052604090912055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156110ef57506007546001600160a01b03163314155b1561110d57604051631eee95db60e11b815260040160405180910390fd5b600090815260066020526040812055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561119b57506007546001600160a01b03163314155b156111b957604051631eee95db60e11b815260040160405180910390fd5b600082815260066020526040902054610eb19082906116ad565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561125057506007546001600160a01b03163314155b1561126e57604051631eee95db60e11b815260040160405180910390fd5b6000818152600560205260408120610a26915b50805461128d906114c6565b6000825580601f1061129d575050565b601f016020900490600052602060002090810190610a2691905b808211156112cb57600081556001016112b7565b5090565b6000602082840312156112e157600080fd5b5035919050565b60008083601f8401126112fa57600080fd5b50813567ffffffffffffffff81111561131257600080fd5b60208301915083602082850101111561132a57600080fd5b9250929050565b60008060006040848603121561134657600080fd5b83359250602084013567ffffffffffffffff81111561136457600080fd5b611370868287016112e8565b9497909650939450505050565b6000806040838503121561139057600080fd5b50508035926020909101359150565b80356001600160a01b03811681146113b657600080fd5b919050565b6000602082840312156113cd57600080fd5b6113d68261139f565b9392505050565b6000815180845260005b81811015611403576020818501810151868301820152016113e7565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006113d660208301846113dd565b6000806040838503121561144957600080fd5b823591506020830135801515811461146057600080fd5b809150509250929050565b6000806040838503121561147e57600080fd5b8235915061148e6020840161139f565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600181811c908216806114da57607f821691505b602082108103611513577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f82111561156357600081815260208120601f850160051c810160208610156115405750805b601f850160051c820191505b8181101561155f5782815560010161154c565b5050505b505050565b67ffffffffffffffff83111561158057611580611497565b6115948361158e83546114c6565b83611519565b6000601f8411600181146115e657600085156115b05750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b17835561165e565b600083815260209020601f19861690835b8281101561161757868501358255602094850194600190920191016115f7565b5086821015611652577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555b5050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156116a7576116a7611665565b92915050565b818103818111156116a7576116a761166556fea2646970667358221220bcfba872ee9bdf50709c10d3a0a96f3aacc177883f8adc9a3f2bc2e397b05db164736f6c63430008110033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101b95760003560e01c80638c160095116100f9578063c031a18011610097578063e2a4853a11610071578063e2a4853a146103fd578063e2b202bf14610410578063ebb9d8c914610423578063f6bb3cc41461043657600080fd5b8063c031a180146103b7578063ca446dd9146103ca578063dc97d962146103dd57600080fd5b8063a75b87d2116100d3578063a75b87d214610360578063abfdcced14610371578063adb353dc14610384578063bd02d0f51461039757600080fd5b80638c160095146102ff578063986e791a14610312578063a6ed563e1461033257600080fd5b80632e28d08411610166578063616b59f611610140578063616b59f6146102935780636e899550146102a65780637ae1cfca146102b95780638a0dac4a146102ec57600080fd5b80632e28d0841461025a5780633e49bed01461026d5780634e91db081461028057600080fd5b80631e0ea61e116101975780631e0ea61e1461021657806321f8a7211461021e5780632c62ff2d1461024757600080fd5b80630b9adc57146101be5780630e14a376146101d357806319859847146101e6575b600080fd5b6101d16101cc3660046112cf565b610449565b005b6101d16101e13660046112cf565b6104f5565b6008546101f9906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d16105c6565b6101f961022c3660046112cf565b6000908152602081905260409020546001600160a01b031690565b6101d16102553660046112cf565b61068f565b6101d1610268366004611331565b610760565b6101d161027b36600461137d565b61081a565b6101d161028e36600461137d565b6108c7565b6101d16102a13660046112cf565b610974565b6101d16102b4366004611331565b610a29565b6102dc6102c73660046112cf565b60009081526001602052604090205460ff1690565b604051901515815260200161020d565b6101d16102fa3660046113bb565b610add565b6101d161030d3660046112cf565b610bd5565b6103256103203660046112cf565b610c81565b60405161020d9190611423565b6103526103403660046112cf565b60009081526003602052604090205490565b60405190815260200161020d565b6007546001600160a01b03166101f9565b6101d161037f366004611436565b610d23565b6101d161039236600461137d565b610dfc565b6103526103a53660046112cf565b60009081526006602052604090205490565b6103256103c53660046112cf565b610ec7565b6101d16103d836600461146b565b610ee4565b6103526103eb3660046112cf565b60009081526004602052604090205490565b6101d161040b36600461137d565b610fc5565b6101d161041e3660046112cf565b611072565b6101d161043136600461137d565b61111e565b6101d16104443660046112cf565b6111d3565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156104c657506007546001600160a01b03163314155b156104e457604051631eee95db60e11b815260040160405180910390fd5b600090815260036020526040812055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561057257506007546001600160a01b03163314155b1561059057604051631eee95db60e11b815260040160405180910390fd5b600090815260208190526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6008546001600160a01b0316331461060a576040517fa5ccf75400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60078054600880546001600160a01b038082167fffffffffffffffffffffffff0000000000000000000000000000000000000000808616821790965594909116909155604080519190921680825260208201939093527fa14fc14d8620a708a896fd11392a235647d99385500a295f0d7da2a258b2e96791015b60405180910390a150565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561070c57506007546001600160a01b03163314155b1561072a57604051631eee95db60e11b815260040160405180910390fd5b600090815260016020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156107dd57506007546001600160a01b03163314155b156107fb57604051631eee95db60e11b815260040160405180910390fd5b6000838152600260205260409020610814828483611568565b50505050565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561089757506007546001600160a01b03163314155b156108b557604051631eee95db60e11b815260040160405180910390fd5b60009182526004602052604090912055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561094457506007546001600160a01b03163314155b1561096257604051631eee95db60e11b815260040160405180910390fd5b60009182526003602052604090912055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156109f157506007546001600160a01b03163314155b15610a0f57604051631eee95db60e11b815260040160405180910390fd5b6000818152600260205260408120610a2691611281565b50565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610aa657506007546001600160a01b03163314155b15610ac457604051631eee95db60e11b815260040160405180910390fd5b6000838152600560205260409020610814828483611568565b6007546001600160a01b03163314610b21576040517f0da3c81800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116610b61576040517f1b08105400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600880547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038381169182179092556007546040805191909316815260208101919091527fa14fc14d8620a708a896fd11392a235647d99385500a295f0d7da2a258b2e9679101610684565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610c5257506007546001600160a01b03163314155b15610c7057604051631eee95db60e11b815260040160405180910390fd5b600090815260046020526040812055565b6000818152600560205260409020805460609190610c9e906114c6565b80601f0160208091040260200160405190810160405280929190818152602001828054610cca906114c6565b8015610d175780601f10610cec57610100808354040283529160200191610d17565b820191906000526020600020905b815481529060010190602001808311610cfa57829003601f168201915b50505050509050919050565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610da057506007546001600160a01b03163314155b15610dbe57604051631eee95db60e11b815260040160405180910390fd5b60009182526001602052604090912080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610e7957506007546001600160a01b03163314155b15610e9757604051631eee95db60e11b815260040160405180910390fd5b600082815260066020526040902054610eb1908290611694565b6000928352600660205260409092209190915550565b6000818152600260205260409020805460609190610c9e906114c6565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff16158015610f6157506007546001600160a01b03163314155b15610f7f57604051631eee95db60e11b815260040160405180910390fd5b60009182526020829052604090912080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03909216919091179055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561104257506007546001600160a01b03163314155b1561106057604051631eee95db60e11b815260040160405180910390fd5b60009182526006602052604090912055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff161580156110ef57506007546001600160a01b03163314155b1561110d57604051631eee95db60e11b815260040160405180910390fd5b600090815260066020526040812055565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561119b57506007546001600160a01b03163314155b156111b957604051631eee95db60e11b815260040160405180910390fd5b600082815260066020526040902054610eb19082906116ad565b6040516e636f6e74726163742e65786973747360881b60208201526bffffffffffffffffffffffff193360601b16602f82015260019060009060430160408051601f198184030181529181528151602092830120835290820192909252016000205460ff1615801561125057506007546001600160a01b03163314155b1561126e57604051631eee95db60e11b815260040160405180910390fd5b6000818152600560205260408120610a26915b50805461128d906114c6565b6000825580601f1061129d575050565b601f016020900490600052602060002090810190610a2691905b808211156112cb57600081556001016112b7565b5090565b6000602082840312156112e157600080fd5b5035919050565b60008083601f8401126112fa57600080fd5b50813567ffffffffffffffff81111561131257600080fd5b60208301915083602082850101111561132a57600080fd5b9250929050565b60008060006040848603121561134657600080fd5b83359250602084013567ffffffffffffffff81111561136457600080fd5b611370868287016112e8565b9497909650939450505050565b6000806040838503121561139057600080fd5b50508035926020909101359150565b80356001600160a01b03811681146113b657600080fd5b919050565b6000602082840312156113cd57600080fd5b6113d68261139f565b9392505050565b6000815180845260005b81811015611403576020818501810151868301820152016113e7565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006113d660208301846113dd565b6000806040838503121561144957600080fd5b823591506020830135801515811461146057600080fd5b809150509250929050565b6000806040838503121561147e57600080fd5b8235915061148e6020840161139f565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600181811c908216806114da57607f821691505b602082108103611513577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b601f82111561156357600081815260208120601f850160051c810160208610156115405750805b601f850160051c820191505b8181101561155f5782815560010161154c565b5050505b505050565b67ffffffffffffffff83111561158057611580611497565b6115948361158e83546114c6565b83611519565b6000601f8411600181146115e657600085156115b05750838201355b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600387901b1c1916600186901b17835561165e565b600083815260209020601f19861690835b8281101561161757868501358255602094850194600190920191016115f7565b5086821015611652577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88860031b161c19848701351681555b505060018560011b0183555b5050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156116a7576116a7611665565b92915050565b818103818111156116a7576116a761166556fea2646970667358221220bcfba872ee9bdf50709c10d3a0a96f3aacc177883f8adc9a3f2bc2e397b05db164736f6c63430008110033
Loading...
Loading
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.