Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 3 internal transactions
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| 0x61014060 | 21266742 | 421 days ago | Contract Creation | 0 ETH | |||
| 0x61014060 | 21266741 | 421 days ago | Contract Creation | 0 ETH | |||
| 0x61014060 | 21266740 | 421 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
SingleDdmDisableFactory
Compiler Version
v0.8.16+commit.07a7930e
Optimization Enabled:
No with 200 runs
Other Settings:
london EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-FileCopyrightText: © 2024 Dai Foundation <www.daifoundation.org>
// SPDX-License-Identifier: AGPL-3.0-or-later
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero 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 Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
pragma solidity ^0.8.16;
import {DssEmergencySpell} from "../DssEmergencySpell.sol";
interface DdmMomLike {
function disable(address plan) external;
}
interface DdmPlanLike {
function active() external view returns (bool);
function wards(address who) external view returns (uint256);
}
interface DdmHubLike {
function plan(bytes32 ilk) external view returns (address);
}
contract SingleDdmDisableSpell is DssEmergencySpell {
DdmMomLike public immutable ddmMom = DdmMomLike(_log.getAddress("DIRECT_MOM"));
DdmHubLike public immutable ddmHub = DdmHubLike(_log.getAddress("DIRECT_HUB"));
bytes32 public immutable ilk;
event Disable(address indexed plan);
constructor(bytes32 _ilk) {
ilk = _ilk;
}
function description() external view returns (string memory) {
return string(abi.encodePacked("Emergency Spell | Disable DDM Plan: ", ilk));
}
function _emergencyActions() internal override {
address plan = ddmHub.plan(ilk);
ddmMom.disable(plan);
emit Disable(plan);
}
/**
* @notice Returns whether the spell is done or not.
* @dev Checks if the plan.active() = false.
* The spell would revert if any of the following conditions holds:
* 1. DDMMom is not a ward of DDMHub.
* In such cases, it returns `true`, meaning no further action can be taken at the moment.
*/
function done() external view returns (bool) {
DdmPlanLike plan = DdmPlanLike(ddmHub.plan(ilk));
if (address(plan) == address(0) || plan.wards(address(ddmMom)) == 0) {
return true;
}
return plan.active() == false;
}
}
contract SingleDdmDisableFactory {
event Deploy(bytes32 indexed ilk, address spell);
function deploy(bytes32 ilk) external returns (address spell) {
spell = address(new SingleDdmDisableSpell(ilk));
emit Deploy(ilk, spell);
}
}// SPDX-FileCopyrightText: © 2024 Dai Foundation <www.daifoundation.org>
// SPDX-License-Identifier: AGPL-3.0-or-later
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero 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 Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
pragma solidity ^0.8.16;
interface ChainlogLike {
function getAddress(bytes32 key) external view returns (address);
}
interface DssExec {
function action() external view returns (address);
function cast() external;
function description() external view returns (string memory);
function done() external view returns (bool);
function eta() external view returns (uint256);
function expiration() external view returns (uint256);
function log() external view returns (address);
function nextCastTime() external view returns (uint256);
function officeHours() external view returns (bool);
function pause() external view returns (address);
function schedule() external;
function sig() external view returns (bytes memory);
function tag() external view returns (bytes32);
}
interface DssAction {
function actions() external;
function description() external view returns (string memory);
function execute() external;
function nextCastTime(uint256 eta) external view returns (uint256);
function officeHours() external view returns (bool);
}
interface DssEmergencySpellLike is DssExec, DssAction {
function description() external view override(DssExec, DssAction) returns (string memory);
function officeHours() external view override(DssExec, DssAction) returns (bool);
}
abstract contract DssEmergencySpell is DssEmergencySpellLike {
/// @dev The chainlog contract reference.
ChainlogLike internal constant _log = ChainlogLike(0xdA0Ab1e0017DEbCd72Be8599041a2aa3bA7e740F);
// @dev The reference to the `pause` contract.
address public immutable pause = _log.getAddress("MCD_PAUSE");
/// @dev The chainlog address.
address public constant log = address(_log);
/// @dev In regular spells, `eta` is used to enforce the GSM delay.
/// For emergency spells, the GSM delay is not applicable.
uint256 public constant eta = 0;
/// @dev Keeping the same value as regular spells.
bytes public constant sig = abi.encodeWithSelector(DssAction.execute.selector);
/// @dev Emergency spells should not expire.
uint256 public constant expiration = type(uint256).max;
// @dev An emergency spell does not need to be cast, as all actions happen during the schedule phase.
// Notice that cast is usually not supposed to revert, so it is implemented as a no-op.
uint256 internal immutable _nextCastTime = type(uint256).max;
// @dev Office Hours is always `false` for emergency spells.
bool public constant officeHours = false;
// @dev `action` is expected to return a valid address.
// We also implement the `DssAction` interface in this contract.
address public immutable action = address(this);
/**
* @dev In regular spells, `tag` is an immutable variable with the code hash of the spell action.
* It specifically uses a separate contract for spell action because `tag` is immutable and the code hash of
* the contract being initialized is not accessible in the constructor.
* Since we do not have a separate contract for actions in Emergency Spells, `tag` has to be turned into a
* getter function instead of an immutable variable.
* @return The contract codehash.
*/
function tag() external view returns (bytes32) {
return address(this).codehash;
}
/**
* @notice Triggers the emergency actions of the spell.
* @dev Emergency spells are triggered when scheduled.
* This function maintains the name for compatibility with regular spells, however nothing is actually being
* scheduled. Emergency spells take effect immediately, so there is no need to call `pause.plot()`.
*/
function schedule() external {
_emergencyActions();
}
/**
* @notice Implements the emergency actions to be triggered by the spell.
*/
function _emergencyActions() internal virtual;
/**
* @notice Returns `_nextCastTime`.
* @dev This function exists only to keep interface compatibility with regular spells.
*/
function nextCastTime() external view returns (uint256 castTime) {
return _nextCastTime;
}
/**
* @notice No-op.
* @dev This function exists only to keep interface compatibility with regular spells.
*/
function cast() external {}
/**
* @notice No-op.
* @dev This function exists only to keep interface compatibility with regular spells.
*/
function execute() external {}
/**
* @notice No-op.
* @dev This function exists only to keep interface compatibility with regular spells.
*/
function actions() external {}
/**
* @notice Returns `nextCastTime`, regardless of the input parameter.
* @dev This function exists only to keep interface compatibility with regular spells.
*/
function nextCastTime(uint256) external view returns (uint256 castTime) {
return _nextCastTime;
}
}{
"remappings": [
"dss-interfaces/=lib/dss-test/lib/dss-interfaces/src/",
"dss-test/=lib/dss-test/src/",
"forge-std/=lib/dss-test/lib/forge-std/src/"
],
"optimizer": {
"enabled": false,
"runs": 200
},
"metadata": {
"useLiteralContent": false,
"bytecodeHash": "ipfs"
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"evmVersion": "london",
"viaIR": false,
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"ilk","type":"bytes32"},{"indexed":false,"internalType":"address","name":"spell","type":"address"}],"name":"Deploy","type":"event"},{"inputs":[{"internalType":"bytes32","name":"ilk","type":"bytes32"}],"name":"deploy","outputs":[{"internalType":"address","name":"spell","type":"address"}],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b5061156a806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80632b85ba3814610030575b600080fd5b61004a6004803603810190610045919061011d565b610060565b604051610057919061018b565b60405180910390f35b60008160405161006f906100d5565b61007991906101b5565b604051809103906000f080158015610095573d6000803e3d6000fd5b509050817fa4ec87efbdf333e464825b3a3a757dc501a72b53041a352de91a3fbdcdae6509826040516100c8919061018b565b60405180910390a2919050565b611364806101d183390190565b600080fd5b6000819050919050565b6100fa816100e7565b811461010557600080fd5b50565b600081359050610117816100f1565b92915050565b600060208284031215610133576101326100e2565b5b600061014184828501610108565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006101758261014a565b9050919050565b6101858161016a565b82525050565b60006020820190506101a0600083018461017c565b92915050565b6101af816100e7565b82525050565b60006020820190506101ca60008301846101a6565b9291505056fe61014060405273da0ab1e0017debcd72be8599041a2aa3ba7e740f73ffffffffffffffffffffffffffffffffffffffff166321f8a7216040518163ffffffff1660e01b8152600401620000529062000312565b602060405180830381865afa15801562000070573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000096919062000397565b73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff168152507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60a0908152503073ffffffffffffffffffffffffffffffffffffffff1660c09073ffffffffffffffffffffffffffffffffffffffff1681525073da0ab1e0017debcd72be8599041a2aa3ba7e740f73ffffffffffffffffffffffffffffffffffffffff166321f8a7216040518163ffffffff1660e01b81526004016200016f90620003ef565b602060405180830381865afa1580156200018d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b3919062000397565b73ffffffffffffffffffffffffffffffffffffffff1660e09073ffffffffffffffffffffffffffffffffffffffff1681525073da0ab1e0017debcd72be8599041a2aa3ba7e740f73ffffffffffffffffffffffffffffffffffffffff166321f8a7216040518163ffffffff1660e01b8152600401620002329062000430565b602060405180830381865afa15801562000250573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000276919062000397565b73ffffffffffffffffffffffffffffffffffffffff166101009073ffffffffffffffffffffffffffffffffffffffff16815250348015620002b657600080fd5b5060405162001364380380620013648339818101604052810190620002dc919062000486565b80610120818152505050620004b8565b7f4d43445f50415553450000000000000000000000000000000000000000000000815250565b60006020820190506200032860008301620002ec565b919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200035f8262000332565b9050919050565b620003718162000352565b81146200037d57600080fd5b50565b600081519050620003918162000366565b92915050565b600060208284031215620003b057620003af6200032d565b5b6000620003c08482850162000380565b91505092915050565b7f4449524543545f4d4f4d00000000000000000000000000000000000000000000815250565b60006020820190506200040560008301620003c9565b919050565b7f4449524543545f48554200000000000000000000000000000000000000000000815250565b600060208201905062000446600083016200040a565b919050565b6000819050919050565b62000460816200044b565b81146200046c57600080fd5b50565b600081519050620004808162000455565b92915050565b6000602082840312156200049f576200049e6200032d565b5b6000620004af848285016200046f565b91505092915050565b60805160a05160c05160e0516101005161012051610e2462000540600039600081816104610152818161050b0152818161071f01526107b00152600081816103b5015281816104cf015261077401526000818161043b015281816105df0152610830015260006103910152600081816106f7015261074c015260006104a60152610e246000f3fe608060405234801561001057600080fd5b50600436106101205760003560e01c80637284e416116100ad578063bf0fbcec11610071578063bf0fbcec1461028d578063c5ce281e146102bd578063f7992d85146102db578063f99e36bc146102f9578063fe7d47bb1461030357610120565b80637284e4161461021f5780638456cb591461023d57806396d373e51461025b578063ae8421e114610265578063b0604a261461028357610120565b806351973ec9116100f457806351973ec91461019d57806351f91066146101bb57806361461954146101d95780636e832f07146101e3578063720637db1461020157610120565b8062a7029b146101255780630a7a1c4d146101435780632a68a57a146101615780634665096d1461017f575b600080fd5b61012d610321565b60405161013a919061098f565b60405180910390f35b61014b61038f565b60405161015891906109f2565b60405180910390f35b6101696103b3565b6040516101769190610a6c565b60405180910390f35b6101876103d7565b6040516101949190610aa0565b60405180910390f35b6101a56103fb565b6040516101b291906109f2565b60405180910390f35b6101c3610413565b6040516101d09190610ad4565b60405180910390f35b6101e1610432565b005b6101eb610434565b6040516101f89190610b0a565b60405180910390f35b610209610439565b6040516102169190610b46565b60405180910390f35b61022761045d565b6040516102349190610bb6565b60405180910390f35b6102456104a4565b60405161025291906109f2565b60405180910390f35b6102636104c8565b005b61026d6104ca565b60405161027a9190610b0a565b60405180910390f35b61028b6106e9565b005b6102a760048036038101906102a29190610c09565b6106f3565b6040516102b49190610aa0565b60405180910390f35b6102c561071d565b6040516102d29190610ad4565b60405180910390f35b6102e3610741565b6040516102f09190610aa0565b60405180910390f35b610301610746565b005b61030b610748565b6040516103189190610aa0565b60405180910390f35b636146195460e01b604051602401604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b73da0ab1e0017debcd72be8599041a2aa3ba7e740f81565b60003073ffffffffffffffffffffffffffffffffffffffff163f905090565b565b600081565b7f000000000000000000000000000000000000000000000000000000000000000081565b60607f00000000000000000000000000000000000000000000000000000000000000006040516020016104909190610cd4565b604051602081830303815290604052905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a5fe49267f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016105469190610ad4565b602060405180830381865afa158015610563573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105879190610d26565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16148061065d575060008173ffffffffffffffffffffffffffffffffffffffff1663bf353dbb7f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040161061a91906109f2565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190610d68565b145b1561066c5760019150506106e6565b600015158173ffffffffffffffffffffffffffffffffffffffff166302fb0c5e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106df9190610dc1565b1515149150505b90565b6106f1610770565b565b60007f00000000000000000000000000000000000000000000000000000000000000009050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600081565b565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a5fe49267f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016107eb9190610ad4565b602060405180830381865afa158015610808573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082c9190610d26565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e6c09edf826040518263ffffffff1660e01b815260040161088791906109f2565b600060405180830381600087803b1580156108a157600080fd5b505af11580156108b5573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff167f1d6f80aff2255e9cb1aee4abaf819aec89a6ae3fce7eb53b852640eb8052609c60405160405180910390a250565b600081519050919050565b600082825260208201905092915050565b60005b8381101561093957808201518184015260208101905061091e565b60008484015250505050565b6000601f19601f8301169050919050565b6000610961826108ff565b61096b818561090a565b935061097b81856020860161091b565b61098481610945565b840191505092915050565b600060208201905081810360008301526109a98184610956565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109dc826109b1565b9050919050565b6109ec816109d1565b82525050565b6000602082019050610a0760008301846109e3565b92915050565b6000819050919050565b6000610a32610a2d610a28846109b1565b610a0d565b6109b1565b9050919050565b6000610a4482610a17565b9050919050565b6000610a5682610a39565b9050919050565b610a6681610a4b565b82525050565b6000602082019050610a816000830184610a5d565b92915050565b6000819050919050565b610a9a81610a87565b82525050565b6000602082019050610ab56000830184610a91565b92915050565b6000819050919050565b610ace81610abb565b82525050565b6000602082019050610ae96000830184610ac5565b92915050565b60008115159050919050565b610b0481610aef565b82525050565b6000602082019050610b1f6000830184610afb565b92915050565b6000610b3082610a39565b9050919050565b610b4081610b25565b82525050565b6000602082019050610b5b6000830184610b37565b92915050565b600081519050919050565b600082825260208201905092915050565b6000610b8882610b61565b610b928185610b6c565b9350610ba281856020860161091b565b610bab81610945565b840191505092915050565b60006020820190508181036000830152610bd08184610b7d565b905092915050565b600080fd5b610be681610a87565b8114610bf157600080fd5b50565b600081359050610c0381610bdd565b92915050565b600060208284031215610c1f57610c1e610bd8565b5b6000610c2d84828501610bf4565b91505092915050565b600081905092915050565b7f456d657267656e6379205370656c6c207c2044697361626c652044444d20506c60008201527f616e3a2000000000000000000000000000000000000000000000000000000000602082015250565b6000610c9d602483610c36565b9150610ca882610c41565b602482019050919050565b6000819050919050565b610cce610cc982610abb565b610cb3565b82525050565b6000610cdf82610c90565b9150610ceb8284610cbd565b60208201915081905092915050565b610d03816109d1565b8114610d0e57600080fd5b50565b600081519050610d2081610cfa565b92915050565b600060208284031215610d3c57610d3b610bd8565b5b6000610d4a84828501610d11565b91505092915050565b600081519050610d6281610bdd565b92915050565b600060208284031215610d7e57610d7d610bd8565b5b6000610d8c84828501610d53565b91505092915050565b610d9e81610aef565b8114610da957600080fd5b50565b600081519050610dbb81610d95565b92915050565b600060208284031215610dd757610dd6610bd8565b5b6000610de584828501610dac565b9150509291505056fea2646970667358221220d7270d9ec35ef61b0714a54365542f7855bd57cf0f2f1fee329bd92dc7d857c464736f6c63430008100033a2646970667358221220e273773933afa54ae4778d304d5927d4eadcb37ca94445b81a2888baf860cd5d64736f6c63430008100033
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80632b85ba3814610030575b600080fd5b61004a6004803603810190610045919061011d565b610060565b604051610057919061018b565b60405180910390f35b60008160405161006f906100d5565b61007991906101b5565b604051809103906000f080158015610095573d6000803e3d6000fd5b509050817fa4ec87efbdf333e464825b3a3a757dc501a72b53041a352de91a3fbdcdae6509826040516100c8919061018b565b60405180910390a2919050565b611364806101d183390190565b600080fd5b6000819050919050565b6100fa816100e7565b811461010557600080fd5b50565b600081359050610117816100f1565b92915050565b600060208284031215610133576101326100e2565b5b600061014184828501610108565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006101758261014a565b9050919050565b6101858161016a565b82525050565b60006020820190506101a0600083018461017c565b92915050565b6101af816100e7565b82525050565b60006020820190506101ca60008301846101a6565b9291505056fe61014060405273da0ab1e0017debcd72be8599041a2aa3ba7e740f73ffffffffffffffffffffffffffffffffffffffff166321f8a7216040518163ffffffff1660e01b8152600401620000529062000312565b602060405180830381865afa15801562000070573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000096919062000397565b73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff168152507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60a0908152503073ffffffffffffffffffffffffffffffffffffffff1660c09073ffffffffffffffffffffffffffffffffffffffff1681525073da0ab1e0017debcd72be8599041a2aa3ba7e740f73ffffffffffffffffffffffffffffffffffffffff166321f8a7216040518163ffffffff1660e01b81526004016200016f90620003ef565b602060405180830381865afa1580156200018d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b3919062000397565b73ffffffffffffffffffffffffffffffffffffffff1660e09073ffffffffffffffffffffffffffffffffffffffff1681525073da0ab1e0017debcd72be8599041a2aa3ba7e740f73ffffffffffffffffffffffffffffffffffffffff166321f8a7216040518163ffffffff1660e01b8152600401620002329062000430565b602060405180830381865afa15801562000250573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000276919062000397565b73ffffffffffffffffffffffffffffffffffffffff166101009073ffffffffffffffffffffffffffffffffffffffff16815250348015620002b657600080fd5b5060405162001364380380620013648339818101604052810190620002dc919062000486565b80610120818152505050620004b8565b7f4d43445f50415553450000000000000000000000000000000000000000000000815250565b60006020820190506200032860008301620002ec565b919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200035f8262000332565b9050919050565b620003718162000352565b81146200037d57600080fd5b50565b600081519050620003918162000366565b92915050565b600060208284031215620003b057620003af6200032d565b5b6000620003c08482850162000380565b91505092915050565b7f4449524543545f4d4f4d00000000000000000000000000000000000000000000815250565b60006020820190506200040560008301620003c9565b919050565b7f4449524543545f48554200000000000000000000000000000000000000000000815250565b600060208201905062000446600083016200040a565b919050565b6000819050919050565b62000460816200044b565b81146200046c57600080fd5b50565b600081519050620004808162000455565b92915050565b6000602082840312156200049f576200049e6200032d565b5b6000620004af848285016200046f565b91505092915050565b60805160a05160c05160e0516101005161012051610e2462000540600039600081816104610152818161050b0152818161071f01526107b00152600081816103b5015281816104cf015261077401526000818161043b015281816105df0152610830015260006103910152600081816106f7015261074c015260006104a60152610e246000f3fe608060405234801561001057600080fd5b50600436106101205760003560e01c80637284e416116100ad578063bf0fbcec11610071578063bf0fbcec1461028d578063c5ce281e146102bd578063f7992d85146102db578063f99e36bc146102f9578063fe7d47bb1461030357610120565b80637284e4161461021f5780638456cb591461023d57806396d373e51461025b578063ae8421e114610265578063b0604a261461028357610120565b806351973ec9116100f457806351973ec91461019d57806351f91066146101bb57806361461954146101d95780636e832f07146101e3578063720637db1461020157610120565b8062a7029b146101255780630a7a1c4d146101435780632a68a57a146101615780634665096d1461017f575b600080fd5b61012d610321565b60405161013a919061098f565b60405180910390f35b61014b61038f565b60405161015891906109f2565b60405180910390f35b6101696103b3565b6040516101769190610a6c565b60405180910390f35b6101876103d7565b6040516101949190610aa0565b60405180910390f35b6101a56103fb565b6040516101b291906109f2565b60405180910390f35b6101c3610413565b6040516101d09190610ad4565b60405180910390f35b6101e1610432565b005b6101eb610434565b6040516101f89190610b0a565b60405180910390f35b610209610439565b6040516102169190610b46565b60405180910390f35b61022761045d565b6040516102349190610bb6565b60405180910390f35b6102456104a4565b60405161025291906109f2565b60405180910390f35b6102636104c8565b005b61026d6104ca565b60405161027a9190610b0a565b60405180910390f35b61028b6106e9565b005b6102a760048036038101906102a29190610c09565b6106f3565b6040516102b49190610aa0565b60405180910390f35b6102c561071d565b6040516102d29190610ad4565b60405180910390f35b6102e3610741565b6040516102f09190610aa0565b60405180910390f35b610301610746565b005b61030b610748565b6040516103189190610aa0565b60405180910390f35b636146195460e01b604051602401604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b73da0ab1e0017debcd72be8599041a2aa3ba7e740f81565b60003073ffffffffffffffffffffffffffffffffffffffff163f905090565b565b600081565b7f000000000000000000000000000000000000000000000000000000000000000081565b60607f00000000000000000000000000000000000000000000000000000000000000006040516020016104909190610cd4565b604051602081830303815290604052905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a5fe49267f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016105469190610ad4565b602060405180830381865afa158015610563573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105879190610d26565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16148061065d575060008173ffffffffffffffffffffffffffffffffffffffff1663bf353dbb7f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b815260040161061a91906109f2565b602060405180830381865afa158015610637573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065b9190610d68565b145b1561066c5760019150506106e6565b600015158173ffffffffffffffffffffffffffffffffffffffff166302fb0c5e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106df9190610dc1565b1515149150505b90565b6106f1610770565b565b60007f00000000000000000000000000000000000000000000000000000000000000009050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600081565b565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a5fe49267f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016107eb9190610ad4565b602060405180830381865afa158015610808573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082c9190610d26565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663e6c09edf826040518263ffffffff1660e01b815260040161088791906109f2565b600060405180830381600087803b1580156108a157600080fd5b505af11580156108b5573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff167f1d6f80aff2255e9cb1aee4abaf819aec89a6ae3fce7eb53b852640eb8052609c60405160405180910390a250565b600081519050919050565b600082825260208201905092915050565b60005b8381101561093957808201518184015260208101905061091e565b60008484015250505050565b6000601f19601f8301169050919050565b6000610961826108ff565b61096b818561090a565b935061097b81856020860161091b565b61098481610945565b840191505092915050565b600060208201905081810360008301526109a98184610956565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006109dc826109b1565b9050919050565b6109ec816109d1565b82525050565b6000602082019050610a0760008301846109e3565b92915050565b6000819050919050565b6000610a32610a2d610a28846109b1565b610a0d565b6109b1565b9050919050565b6000610a4482610a17565b9050919050565b6000610a5682610a39565b9050919050565b610a6681610a4b565b82525050565b6000602082019050610a816000830184610a5d565b92915050565b6000819050919050565b610a9a81610a87565b82525050565b6000602082019050610ab56000830184610a91565b92915050565b6000819050919050565b610ace81610abb565b82525050565b6000602082019050610ae96000830184610ac5565b92915050565b60008115159050919050565b610b0481610aef565b82525050565b6000602082019050610b1f6000830184610afb565b92915050565b6000610b3082610a39565b9050919050565b610b4081610b25565b82525050565b6000602082019050610b5b6000830184610b37565b92915050565b600081519050919050565b600082825260208201905092915050565b6000610b8882610b61565b610b928185610b6c565b9350610ba281856020860161091b565b610bab81610945565b840191505092915050565b60006020820190508181036000830152610bd08184610b7d565b905092915050565b600080fd5b610be681610a87565b8114610bf157600080fd5b50565b600081359050610c0381610bdd565b92915050565b600060208284031215610c1f57610c1e610bd8565b5b6000610c2d84828501610bf4565b91505092915050565b600081905092915050565b7f456d657267656e6379205370656c6c207c2044697361626c652044444d20506c60008201527f616e3a2000000000000000000000000000000000000000000000000000000000602082015250565b6000610c9d602483610c36565b9150610ca882610c41565b602482019050919050565b6000819050919050565b610cce610cc982610abb565b610cb3565b82525050565b6000610cdf82610c90565b9150610ceb8284610cbd565b60208201915081905092915050565b610d03816109d1565b8114610d0e57600080fd5b50565b600081519050610d2081610cfa565b92915050565b600060208284031215610d3c57610d3b610bd8565b5b6000610d4a84828501610d11565b91505092915050565b600081519050610d6281610bdd565b92915050565b600060208284031215610d7e57610d7d610bd8565b5b6000610d8c84828501610d53565b91505092915050565b610d9e81610aef565b8114610da957600080fd5b50565b600081519050610dbb81610d95565b92915050565b600060208284031215610dd757610dd6610bd8565b5b6000610de584828501610dac565b9150509291505056fea2646970667358221220d7270d9ec35ef61b0714a54365542f7855bd57cf0f2f1fee329bd92dc7d857c464736f6c63430008100033a2646970667358221220e273773933afa54ae4778d304d5927d4eadcb37ca94445b81a2888baf860cd5d64736f6c63430008100033
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.