Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
There are no matching entriesUpdate your filters to view other transactions | |||||||||
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
Protego
Compiler Version
v0.8.16+commit.07a7930e
Optimization Enabled:
Yes 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 {EmergencyDropSpell} from "./EmergencyDropSpell.sol";
interface DsPauseLike {
function plans(bytes32) external view returns (bool);
function drop(address, bytes32, bytes calldata, uint256) external;
}
/// @title Protego: permissionlessly drop any plan in `DsPause`-like contracts.
contract Protego {
/// @notice A reference to the `DsPause` contract.
address public immutable pause;
/**
* @notice A new `EmergencyDropSpell` instance was deployed.
* @param dropSpell The new `EmergencyDropSpell` address.
*/
event Deploy(address dropSpell);
/**
* @notice A spell plan was dropped.
* @param id The ID of the dropped plan.
*/
event Drop(bytes32 id);
/// @param _pause A reference to the `DsPause` contract.
constructor(address _pause) {
pause = _pause;
}
/**
* @notice Deploys a spell to drop a plan based on attributes.
* @param _usr The address of the scheduled spell.
* @param _tag The tag identifying the address.
* @param _fax The encoded call to be made in `_usr`.
* @param _eta The earliest execution time.
* @return _spell The `EmergencyDropSpell` address.
*/
function deploy(address _usr, bytes32 _tag, bytes memory _fax, uint256 _eta) public returns (address _spell) {
_spell = address(new EmergencyDropSpell(address(this), _usr, _tag, _fax, _eta));
emit Deploy(_spell);
}
/**
* @notice Calculates the id for a set of attributes.
* @param _usr The address of the scheduled spell.
* @param _tag The tag identifying the address.
* @param _fax The encoded call to be made in `_usr`.
* @param _eta The earliest execution time.
*/
function id(address _usr, bytes32 _tag, bytes memory _fax, uint256 _eta) public pure returns (bytes32) {
return keccak256(abi.encode(_usr, _tag, _fax, _eta));
}
/**
* @notice Returns whether a plan matching the set of attributes is currently planned.
* @param _usr The address of the scheduled spell.
* @param _tag The tag identifying the address.
* @param _fax The encoded call to be made in `_usr`.
* @param _eta The earliest execution time.
*/
function planned(address _usr, bytes32 _tag, bytes memory _fax, uint256 _eta) external view returns (bool) {
return planned(id(_usr, _tag, _fax, _eta));
}
/**
* @notice Returns whether an id is planned or not.
* @param _id The id of the plan.
*/
function planned(bytes32 _id) public view returns (bool) {
return DsPauseLike(pause).plans(_id);
}
/**
* @notice Permissionlessly drop anything that has been planned on the pause.
* @dev In some cases, due to a faulty spell being voted, a governance attack or other unforeseen causes, it may be
* necessary to block any spell that is entered into the pause proxy.
* In this extreme case, the system can be protected during the pause delay by lifting the Protego contract to
* the hat role, which will allow any user to permissionlessly drop any id from the pause.
* This function is expected to revert if it does not have the authority to perform this function.
* @param _usr The address of the scheduled spell.
* @param _tag The tag identifying the address.
* @param _fax The encoded call to be made in `_usr`.
* @param _eta The expiration time.
*/
function drop(address _usr, bytes32 _tag, bytes memory _fax, uint256 _eta) public {
DsPauseLike(pause).drop(_usr, _tag, _fax, _eta);
emit Drop(id(_usr, _tag, _fax, _eta));
}
/**
* @notice A struct representing a plan.
* @param usr The address of the scheduled spell.
* @param tag The tag identifying the address.
* @param fax The encoded call to be made in `usr`.
* @param eta The expiration time.
*/
struct Plan {
address usr;
bytes32 tag;
bytes fax;
uint256 eta;
}
/**
* @notice Drop multiple plans in a single call.
* @dev If an empty array is passed, no spells are dropped and nothing happens as
* `DsPauseLike::drop` is not called.
* @param _plans An array of plans to drop.
*/
function drop(Plan[] calldata _plans) external {
for (uint256 i; i < _plans.length;) {
drop(_plans[i].usr, _plans[i].tag, _plans[i].fax, _plans[i].eta);
unchecked {
i++;
}
}
}
}// 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 ProtegoLike {
function id(address _usr, bytes32 _tag, bytes memory _fax, uint256 _eta) external view returns (bytes32);
function planned(address _usr, bytes32 _tag, bytes memory _fax, uint256 _eta) external view returns (bool);
function pause() external view returns (address);
}
interface DsPauseLike {
function plans(bytes32) external view returns (bool);
function drop(address, bytes32, bytes calldata, uint256) external;
}
interface EmergencySpellLike {
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 (DsPauseLike);
function schedule() external;
function sig() external view returns (bytes memory);
function tag() external view returns (bytes32);
}
/// @title A spell that drops a plan from `MCD_PAUSE` when is cast.
contract EmergencyDropSpell is EmergencySpellLike {
/// @notice The Chainlog contract address.
/// @dev Not used in this contract. Declared to keep compatibility with `DssExec`.
address public constant log = 0xdA0Ab1e0017DEbCd72Be8599041a2aa3bA7e740F;
/// @notice By definition, office hours are not applicable to emergency spells.
bool public constant officeHours = false;
/// @notice Emergency spells should not expire.
uint256 public constant expiration = type(uint256).max;
/// @notice The Protego factory that deployed the spell.
ProtegoLike public immutable protego;
/// @notice The MCD_PAUSE instance.
DsPauseLike public immutable pause;
/// @notice The original spell action address.
address public immutable action;
/// @notice The original spell action tag (i.e.: `extcodehash`).
bytes32 public immutable tag;
/// @notice The original spell earliest execution time.
uint256 public immutable eta;
/// @notice The original spell encoded call.
bytes public sig;
/**
* @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 public immutable nextCastTime = type(uint256).max;
/// @notice Drop have been called.
event Drop();
/**
* @param _protego The Protego factory that deployed the spell.
* @param _usr The original spell action address.
* @param _tag The original spell action tag (i.e.: `extcodehash`).
* @param _fax The original spell encoded call.
* @param _eta The original spell earliest execution time.
*/
constructor(address _protego, address _usr, bytes32 _tag, bytes memory _fax, uint256 _eta) {
protego = ProtegoLike(_protego);
pause = DsPauseLike(ProtegoLike(_protego).pause());
action = _usr;
tag = _tag;
sig = _fax;
eta = _eta;
}
/**
* @notice Alias for `drop`.
* @dev for compatibility with `DssExec`.
*/
function schedule() external {
drop();
}
/// @notice Drops the original spell.
function drop() public {
pause.drop(action, tag, sig, eta);
emit Drop();
}
/// @notice No-op.
function cast() external {}
/// @notice Returns the description of the spell in the format "Sky Protocol Drop Spell: <ID>"
function description() external view returns (string memory) {
return string(abi.encodePacked("Sky Protocol Drop Spell: ", protego.id(action, tag, sig, eta)));
}
/// @notice Returns true if the original spell has been dropped or has never been planned.
function done() external view returns (bool) {
return !planned();
}
/// @notice Returns whether the original spell is currently planned or not.
function planned() public view returns (bool) {
return protego.planned(action, tag, sig, eta);
}
}{
"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": true,
"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[{"inputs":[{"internalType":"address","name":"_pause","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"dropSpell","type":"address"}],"name":"Deploy","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"id","type":"bytes32"}],"name":"Drop","type":"event"},{"inputs":[{"internalType":"address","name":"_usr","type":"address"},{"internalType":"bytes32","name":"_tag","type":"bytes32"},{"internalType":"bytes","name":"_fax","type":"bytes"},{"internalType":"uint256","name":"_eta","type":"uint256"}],"name":"deploy","outputs":[{"internalType":"address","name":"_spell","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_usr","type":"address"},{"internalType":"bytes32","name":"_tag","type":"bytes32"},{"internalType":"bytes","name":"_fax","type":"bytes"},{"internalType":"uint256","name":"_eta","type":"uint256"}],"name":"drop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"usr","type":"address"},{"internalType":"bytes32","name":"tag","type":"bytes32"},{"internalType":"bytes","name":"fax","type":"bytes"},{"internalType":"uint256","name":"eta","type":"uint256"}],"internalType":"struct Protego.Plan[]","name":"_plans","type":"tuple[]"}],"name":"drop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_usr","type":"address"},{"internalType":"bytes32","name":"_tag","type":"bytes32"},{"internalType":"bytes","name":"_fax","type":"bytes"},{"internalType":"uint256","name":"_eta","type":"uint256"}],"name":"id","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pause","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_usr","type":"address"},{"internalType":"bytes32","name":"_tag","type":"bytes32"},{"internalType":"bytes","name":"_fax","type":"bytes"},{"internalType":"uint256","name":"_eta","type":"uint256"}],"name":"planned","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"}],"name":"planned","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}]Contract Creation Code
60a060405234801561001057600080fd5b506040516115ae3803806115ae83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051611515610099600039600081816101140152818161019401526103e301526115156000f3fe60806040523480156200001157600080fd5b5060043610620000875760003560e01c80636f582b9311620000625780636f582b9314620000e65780638456cb59146200010e5780638602b416146200014f578063c62bcdf4146200016657600080fd5b8063162c7de3146200008c57806345a6ec8e14620000a55780636b0fe8f314620000bc575b600080fd5b620000a36200009d3660046200052a565b6200017d565b005b620000a3620000b636600462000609565b6200024b565b620000d3620000cd3660046200052a565b62000372565b6040519081526020015b60405180910390f35b620000fd620000f73660046200052a565b620003ad565b6040519015158152602001620000dd565b620001367f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001620000dd565b620000fd6200016036600462000683565b620003ca565b62000136620001773660046200052a565b6200045f565b60405163162c7de360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063162c7de390620001d1908790879087908790600401620006e5565b600060405180830381600087803b158015620001ec57600080fd5b505af115801562000201573d6000803e3d6000fd5b505050507f10bcdd5949cf454b9fdbaeda48cf6f2850228f0a8d86eb92653fd43822ce5c0a620002348585858562000372565b60405190815260200160405180910390a150505050565b60005b818110156200036d57620003648383838181106200027057620002706200071f565b905060200281019062000284919062000735565b6200029490602081019062000756565b848484818110620002a957620002a96200071f565b9050602002810190620002bd919062000735565b60200135858585818110620002d657620002d66200071f565b9050602002810190620002ea919062000735565b620002fa9060408101906200077b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508992508891508790508181106200034657620003466200071f565b90506020028101906200035a919062000735565b606001356200017d565b6001016200024e565b505050565b6000848484846040516020016200038d9493929190620006e5565b604051602081830303815290604052805190602001209050949350505050565b6000620003c1620001608686868662000372565b95945050505050565b60405163aa4f265360e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063aa4f265390602401602060405180830381865afa15801562000433573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004599190620007cc565b92915050565b600030858585856040516200047490620004e9565b62000484959493929190620007f0565b604051809103906000f080158015620004a1573d6000803e3d6000fd5b506040516001600160a01b03821681529091507f55ea6c6b31543d8e2ec6a72f71a79c0f4b72ed0d4757172b043d8f4f4cd848489060200160405180910390a1949350505050565b610ca8806200083883390190565b80356001600160a01b03811681146200050f57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156200054157600080fd5b6200054c85620004f7565b935060208501359250604085013567ffffffffffffffff808211156200057157600080fd5b818701915087601f8301126200058657600080fd5b8135818111156200059b576200059b62000514565b604051601f8201601f19908116603f01168101908382118183101715620005c657620005c662000514565b816040528281528a6020848701011115620005e057600080fd5b826020860160208301376000928101602001929092525095989497509495606001359450505050565b600080602083850312156200061d57600080fd5b823567ffffffffffffffff808211156200063657600080fd5b818501915085601f8301126200064b57600080fd5b8135818111156200065b57600080fd5b8660208260051b85010111156200067157600080fd5b60209290920196919550909350505050565b6000602082840312156200069657600080fd5b5035919050565b6000815180845260005b81811015620006c557602081850181015186830182015201620006a7565b506000602082860101526020601f19601f83011685010191505092915050565b60018060a01b03851681528360208201526080604082015260006200070e60808301856200069d565b905082606083015295945050505050565b634e487b7160e01b600052603260045260246000fd5b60008235607e198336030181126200074c57600080fd5b9190910192915050565b6000602082840312156200076957600080fd5b6200077482620004f7565b9392505050565b6000808335601e198436030181126200079357600080fd5b83018035915067ffffffffffffffff821115620007af57600080fd5b602001915036819003821315620007c557600080fd5b9250929050565b600060208284031215620007df57600080fd5b815180151581146200077457600080fd5b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009062000825908301856200069d565b9050826080830152969550505050505056fe610140604052600019610120523480156200001957600080fd5b5060405162000ca838038062000ca88339810160408190526200003c9162000116565b6001600160a01b038516608081905260408051638456cb5960e01b81529051638456cb59916004808201926020929091908290030181865afa15801562000087573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000ad919062000224565b6001600160a01b0390811660a052841660c05260e08390526000620000d38382620002d8565b506101005250620003a492505050565b80516001600160a01b0381168114620000fb57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080600060a086880312156200012f57600080fd5b6200013a86620000e3565b945060206200014b818801620000e3565b6040880151606089015191965094506001600160401b03808211156200017057600080fd5b818901915089601f8301126200018557600080fd5b8151818111156200019a576200019a62000100565b604051601f8201601f19908116603f01168101908382118183101715620001c557620001c562000100565b816040528281528c86848701011115620001de57600080fd5b600093505b82841015620002025784840186015181850187015292850192620001e3565b6000868483010152809750505050505050608086015190509295509295909350565b6000602082840312156200023757600080fd5b6200024282620000e3565b9392505050565b600181811c908216806200025e57607f821691505b6020821081036200027f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002d357600081815260208120601f850160051c81016020861015620002ae5750805b601f850160051c820191505b81811015620002cf57828155600101620002ba565b5050505b505050565b81516001600160401b03811115620002f457620002f462000100565b6200030c8162000305845462000249565b8462000285565b602080601f8311600181146200034457600084156200032b5750858301515b600019600386901b1c1916600185901b178555620002cf565b600085815260208120601f198616915b82811015620003755788860151825594840194600190910190840162000354565b5085821015620003945787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05160c05160e051610100516101205161086062000448600039600061027601526000818161024f015281816103b3015281816104af01526106010152600081816101980152818161038f0152818161048a01526105dc0152600081816101270152818161036d0152818161046801526105ba0152600081816101e7015261058d01526000818161022001528181610340015261043b01526108606000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c80638456cb5911610097578063cbab207011610066578063cbab20701461021b578063f751cd8f14610242578063f7992d851461024a578063fe7d47bb1461027157600080fd5b80638456cb59146101e257806396d373e514610209578063ae8421e11461020b578063b0604a261461021357600080fd5b806351f91066116100d357806351f910661461019357806355610ee3146101ba5780636e832f07146101d25780637284e416146101da57600080fd5b8062a7029b146101045780630a7a1c4d146101225780634665096d1461016157806351973ec914610178575b600080fd5b61010c610298565b60405161011991906106cc565b60405180910390f35b6101497f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610119565b61016a60001981565b604051908152602001610119565b61014973da0ab1e0017debcd72be8599041a2aa3ba7e740f81565b61016a7f000000000000000000000000000000000000000000000000000000000000000081565b6101c2610326565b6040519015158152602001610119565b6101c2600081565b61010c610421565b6101497f000000000000000000000000000000000000000000000000000000000000000081565b005b6101c2610562565b610209610572565b6101497f000000000000000000000000000000000000000000000000000000000000000081565b610209610576565b61016a7f000000000000000000000000000000000000000000000000000000000000000081565b61016a7f000000000000000000000000000000000000000000000000000000000000000081565b600080546102a5906106e6565b80601f01602080910402602001604051908101604052809291908181526020018280546102d1906106e6565b801561031e5780601f106102f35761010080835404028352916020019161031e565b820191906000526020600020905b81548152906001019060200180831161030157829003601f168201915b505050505081565b604051636f582b9360e01b81526000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636f582b93906103db907f0000000000000000000000000000000000000000000000000000000000000000907f00000000000000000000000000000000000000000000000000000000000000009086907f000000000000000000000000000000000000000000000000000000000000000090600401610720565b602060405180830381865afa1580156103f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041c91906107ef565b905090565b604051636b0fe8f360e01b81526060906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636b0fe8f3906104d7907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000906000907f000000000000000000000000000000000000000000000000000000000000000090600401610720565b602060405180830381865afa1580156104f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105189190610811565b6040517f536b792050726f746f636f6c2044726f70205370656c6c3a200000000000000060208201526039810191909152605901604051602081830303815290604052905090565b565b600061056c610326565b15905090565b6105605b60405163162c7de360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063162c7de390610629907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000906000907f000000000000000000000000000000000000000000000000000000000000000090600401610720565b600060405180830381600087803b15801561064357600080fd5b505af1158015610657573d6000803e3d6000fd5b50506040517fe3464b1bfde447df077e433d9784af35a44da4441b454bc2049e20758e227af5925060009150a1565b6000815180845260005b818110156106ac57602081850181015186830182015201610690565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006106df6020830184610686565b9392505050565b600181811c908216806106fa57607f821691505b60208210810361071a57634e487b7160e01b600052602260045260246000fd5b50919050565b6001600160a01b03851681526020808201859052608060408301528354600091908290600181811c908281168061075857607f831692505b858310810361077557634e487b7160e01b85526022600452602485fd5b6080880183905260a0880181801561079457600181146107aa576107d5565b60ff198616825284151560051b820196506107d5565b60008c81526020902060005b868110156107cf578154848201529085019089016107b6565b83019750505b505050505050809250505082606083015295945050505050565b60006020828403121561080157600080fd5b815180151581146106df57600080fd5b60006020828403121561082357600080fd5b505191905056fea2646970667358221220c2b21752f843f019297a9e6f973ea1f51be36e155ee5a302e3183545ad1bfb7e64736f6c63430008100033a264697066735822122057debc900c0d218b64dc32ada8bde04c10a86baa66c78e259a3dd034ded854db64736f6c63430008100033000000000000000000000000be286431454714f511008713973d3b053a2d38f3
Deployed Bytecode
0x60806040523480156200001157600080fd5b5060043610620000875760003560e01c80636f582b9311620000625780636f582b9314620000e65780638456cb59146200010e5780638602b416146200014f578063c62bcdf4146200016657600080fd5b8063162c7de3146200008c57806345a6ec8e14620000a55780636b0fe8f314620000bc575b600080fd5b620000a36200009d3660046200052a565b6200017d565b005b620000a3620000b636600462000609565b6200024b565b620000d3620000cd3660046200052a565b62000372565b6040519081526020015b60405180910390f35b620000fd620000f73660046200052a565b620003ad565b6040519015158152602001620000dd565b620001367f000000000000000000000000be286431454714f511008713973d3b053a2d38f381565b6040516001600160a01b039091168152602001620000dd565b620000fd6200016036600462000683565b620003ca565b62000136620001773660046200052a565b6200045f565b60405163162c7de360e01b81526001600160a01b037f000000000000000000000000be286431454714f511008713973d3b053a2d38f3169063162c7de390620001d1908790879087908790600401620006e5565b600060405180830381600087803b158015620001ec57600080fd5b505af115801562000201573d6000803e3d6000fd5b505050507f10bcdd5949cf454b9fdbaeda48cf6f2850228f0a8d86eb92653fd43822ce5c0a620002348585858562000372565b60405190815260200160405180910390a150505050565b60005b818110156200036d57620003648383838181106200027057620002706200071f565b905060200281019062000284919062000735565b6200029490602081019062000756565b848484818110620002a957620002a96200071f565b9050602002810190620002bd919062000735565b60200135858585818110620002d657620002d66200071f565b9050602002810190620002ea919062000735565b620002fa9060408101906200077b565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508992508891508790508181106200034657620003466200071f565b90506020028101906200035a919062000735565b606001356200017d565b6001016200024e565b505050565b6000848484846040516020016200038d9493929190620006e5565b604051602081830303815290604052805190602001209050949350505050565b6000620003c1620001608686868662000372565b95945050505050565b60405163aa4f265360e01b8152600481018290526000907f000000000000000000000000be286431454714f511008713973d3b053a2d38f36001600160a01b03169063aa4f265390602401602060405180830381865afa15801562000433573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004599190620007cc565b92915050565b600030858585856040516200047490620004e9565b62000484959493929190620007f0565b604051809103906000f080158015620004a1573d6000803e3d6000fd5b506040516001600160a01b03821681529091507f55ea6c6b31543d8e2ec6a72f71a79c0f4b72ed0d4757172b043d8f4f4cd848489060200160405180910390a1949350505050565b610ca8806200083883390190565b80356001600160a01b03811681146200050f57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080608085870312156200054157600080fd5b6200054c85620004f7565b935060208501359250604085013567ffffffffffffffff808211156200057157600080fd5b818701915087601f8301126200058657600080fd5b8135818111156200059b576200059b62000514565b604051601f8201601f19908116603f01168101908382118183101715620005c657620005c662000514565b816040528281528a6020848701011115620005e057600080fd5b826020860160208301376000928101602001929092525095989497509495606001359450505050565b600080602083850312156200061d57600080fd5b823567ffffffffffffffff808211156200063657600080fd5b818501915085601f8301126200064b57600080fd5b8135818111156200065b57600080fd5b8660208260051b85010111156200067157600080fd5b60209290920196919550909350505050565b6000602082840312156200069657600080fd5b5035919050565b6000815180845260005b81811015620006c557602081850181015186830182015201620006a7565b506000602082860101526020601f19601f83011685010191505092915050565b60018060a01b03851681528360208201526080604082015260006200070e60808301856200069d565b905082606083015295945050505050565b634e487b7160e01b600052603260045260246000fd5b60008235607e198336030181126200074c57600080fd5b9190910192915050565b6000602082840312156200076957600080fd5b6200077482620004f7565b9392505050565b6000808335601e198436030181126200079357600080fd5b83018035915067ffffffffffffffff821115620007af57600080fd5b602001915036819003821315620007c557600080fd5b9250929050565b600060208284031215620007df57600080fd5b815180151581146200077457600080fd5b6001600160a01b038681168252851660208201526040810184905260a06060820181905260009062000825908301856200069d565b9050826080830152969550505050505056fe610140604052600019610120523480156200001957600080fd5b5060405162000ca838038062000ca88339810160408190526200003c9162000116565b6001600160a01b038516608081905260408051638456cb5960e01b81529051638456cb59916004808201926020929091908290030181865afa15801562000087573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000ad919062000224565b6001600160a01b0390811660a052841660c05260e08390526000620000d38382620002d8565b506101005250620003a492505050565b80516001600160a01b0381168114620000fb57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600080600080600060a086880312156200012f57600080fd5b6200013a86620000e3565b945060206200014b818801620000e3565b6040880151606089015191965094506001600160401b03808211156200017057600080fd5b818901915089601f8301126200018557600080fd5b8151818111156200019a576200019a62000100565b604051601f8201601f19908116603f01168101908382118183101715620001c557620001c562000100565b816040528281528c86848701011115620001de57600080fd5b600093505b82841015620002025784840186015181850187015292850192620001e3565b6000868483010152809750505050505050608086015190509295509295909350565b6000602082840312156200023757600080fd5b6200024282620000e3565b9392505050565b600181811c908216806200025e57607f821691505b6020821081036200027f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002d357600081815260208120601f850160051c81016020861015620002ae5750805b601f850160051c820191505b81811015620002cf57828155600101620002ba565b5050505b505050565b81516001600160401b03811115620002f457620002f462000100565b6200030c8162000305845462000249565b8462000285565b602080601f8311600181146200034457600084156200032b5750858301515b600019600386901b1c1916600185901b178555620002cf565b600085815260208120601f198616915b82811015620003755788860151825594840194600190910190840162000354565b5085821015620003945787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05160c05160e051610100516101205161086062000448600039600061027601526000818161024f015281816103b3015281816104af01526106010152600081816101980152818161038f0152818161048a01526105dc0152600081816101270152818161036d0152818161046801526105ba0152600081816101e7015261058d01526000818161022001528181610340015261043b01526108606000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c80638456cb5911610097578063cbab207011610066578063cbab20701461021b578063f751cd8f14610242578063f7992d851461024a578063fe7d47bb1461027157600080fd5b80638456cb59146101e257806396d373e514610209578063ae8421e11461020b578063b0604a261461021357600080fd5b806351f91066116100d357806351f910661461019357806355610ee3146101ba5780636e832f07146101d25780637284e416146101da57600080fd5b8062a7029b146101045780630a7a1c4d146101225780634665096d1461016157806351973ec914610178575b600080fd5b61010c610298565b60405161011991906106cc565b60405180910390f35b6101497f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610119565b61016a60001981565b604051908152602001610119565b61014973da0ab1e0017debcd72be8599041a2aa3ba7e740f81565b61016a7f000000000000000000000000000000000000000000000000000000000000000081565b6101c2610326565b6040519015158152602001610119565b6101c2600081565b61010c610421565b6101497f000000000000000000000000000000000000000000000000000000000000000081565b005b6101c2610562565b610209610572565b6101497f000000000000000000000000000000000000000000000000000000000000000081565b610209610576565b61016a7f000000000000000000000000000000000000000000000000000000000000000081565b61016a7f000000000000000000000000000000000000000000000000000000000000000081565b600080546102a5906106e6565b80601f01602080910402602001604051908101604052809291908181526020018280546102d1906106e6565b801561031e5780601f106102f35761010080835404028352916020019161031e565b820191906000526020600020905b81548152906001019060200180831161030157829003601f168201915b505050505081565b604051636f582b9360e01b81526000906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636f582b93906103db907f0000000000000000000000000000000000000000000000000000000000000000907f00000000000000000000000000000000000000000000000000000000000000009086907f000000000000000000000000000000000000000000000000000000000000000090600401610720565b602060405180830381865afa1580156103f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061041c91906107ef565b905090565b604051636b0fe8f360e01b81526060906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690636b0fe8f3906104d7907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000906000907f000000000000000000000000000000000000000000000000000000000000000090600401610720565b602060405180830381865afa1580156104f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105189190610811565b6040517f536b792050726f746f636f6c2044726f70205370656c6c3a200000000000000060208201526039810191909152605901604051602081830303815290604052905090565b565b600061056c610326565b15905090565b6105605b60405163162c7de360e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063162c7de390610629907f0000000000000000000000000000000000000000000000000000000000000000907f0000000000000000000000000000000000000000000000000000000000000000906000907f000000000000000000000000000000000000000000000000000000000000000090600401610720565b600060405180830381600087803b15801561064357600080fd5b505af1158015610657573d6000803e3d6000fd5b50506040517fe3464b1bfde447df077e433d9784af35a44da4441b454bc2049e20758e227af5925060009150a1565b6000815180845260005b818110156106ac57602081850181015186830182015201610690565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006106df6020830184610686565b9392505050565b600181811c908216806106fa57607f821691505b60208210810361071a57634e487b7160e01b600052602260045260246000fd5b50919050565b6001600160a01b03851681526020808201859052608060408301528354600091908290600181811c908281168061075857607f831692505b858310810361077557634e487b7160e01b85526022600452602485fd5b6080880183905260a0880181801561079457600181146107aa576107d5565b60ff198616825284151560051b820196506107d5565b60008c81526020902060005b868110156107cf578154848201529085019089016107b6565b83019750505b505050505050809250505082606083015295945050505050565b60006020828403121561080157600080fd5b815180151581146106df57600080fd5b60006020828403121561082357600080fd5b505191905056fea2646970667358221220c2b21752f843f019297a9e6f973ea1f51be36e155ee5a302e3183545ad1bfb7e64736f6c63430008100033a264697066735822122057debc900c0d218b64dc32ada8bde04c10a86baa66c78e259a3dd034ded854db64736f6c63430008100033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000be286431454714f511008713973d3b053a2d38f3
-----Decoded View---------------
Arg [0] : _pause (address): 0xbE286431454714F511008713973d3B053A2d38f3
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000be286431454714f511008713973d3b053a2d38f3
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.