Overview
S Balance
S Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 8 internal transactions
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
SiloManagerV2
Compiler Version
v0.8.28+commit.7893614a
Optimization Enabled:
Yes with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "@openzeppelin/contracts/token/ERC20/IERC20.sol";import {SafeERC20} from "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";import "./interfaces/ISiloManagerFactory.sol";import "./interfaces/ISiloFactory.sol";import "./interfaces/ISiloSubFactory.sol";import "./interfaces/ISilo.sol";import "./gelato/AutomateTaskCreator.sol";contract SiloManagerV2 is AutomateTaskCreator {bytes32 public taskId;address public owner;address public managerFactory;ISiloManagerFactory ManagerFactory;uint256 public topupThreshold;uint256 public topupAmount;mapping(address => bool) public whitelisted;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/extensions/IERC20Permit.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in* https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].** Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by* presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't* need to send a transaction, and thus is not required to hold Ether at all.** ==== Security Considerations** There are two important considerations concerning the use of `permit`. The first is that a valid permit signature* expresses an allowance, and it should not be assumed to convey additional meaning. In particular, it should not be* considered as an intention to spend the allowance in any specific way. The second is that because permits have* built-in replay protection and can be submitted by anyone, they can be frontrun. A protocol that uses permits should* take this into consideration and allow a `permit` call to fail. Combining these two aspects, a pattern that may be* generally recommended is:** ```solidity* function doThingWithPermit(..., uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) public {* try token.permit(msg.sender, address(this), value, deadline, v, r, s) {} catch {}* doThing(..., value);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/IERC20.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC20 standard as defined in the EIP.*/interface IERC20 {/*** @dev Emitted when `value` tokens are moved from one account (`from`) to* another (`to`).** Note that `value` may be zero.*/event Transfer(address indexed from, address indexed to, uint256 value);/*** @dev Emitted when the allowance of a `spender` for an `owner` is set by* a call to {approve}. `value` is the new allowance.*/event Approval(address indexed owner, address indexed spender, uint256 value);/*** @dev Returns the value of tokens in existence.*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/utils/SafeERC20.sol)pragma solidity ^0.8.20;import {IERC20} from "../IERC20.sol";import {IERC20Permit} from "../extensions/IERC20Permit.sol";import {Address} from "../../../utils/Address.sol";/*** @title SafeERC20* @dev Wrappers around ERC20 operations that throw on failure (when the token* contract returns false). Tokens that return no value (and instead revert or* throw on failure) are also supported, non-reverting calls are assumed to be* successful.* To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract,* which allows you to call the safe operations as `token.safeTransfer(...)`, etc.*/library SafeERC20 {using Address for address;/*** @dev An operation with an ERC20 token failed.*/error SafeERC20FailedOperation(address token);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC721/extensions/IERC721Enumerable.sol)pragma solidity ^0.8.20;import {IERC721} from "../IERC721.sol";/*** @title ERC-721 Non-Fungible Token Standard, optional enumeration extension* @dev See https://eips.ethereum.org/EIPS/eip-721*/interface IERC721Enumerable is IERC721 {/*** @dev Returns the total amount of tokens stored by the contract.*/function totalSupply() external view returns (uint256);/*** @dev Returns a token ID owned by `owner` at a given `index` of its token list.* Use along with {balanceOf} to enumerate all of ``owner``'s tokens.*/function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256);/*** @dev Returns a token ID at a given `index` of all the tokens stored by the contract.* Use along with {totalSupply} to enumerate all tokens.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC721/IERC721.sol)pragma solidity ^0.8.20;import {IERC165} from "../../utils/introspection/IERC165.sol";/*** @dev Required interface of an ERC721 compliant contract.*/interface IERC721 is IERC165 {/*** @dev Emitted when `tokenId` token is transferred from `from` to `to`.*/event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);/*** @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.*/event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);/*** @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.*/event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/Address.sol)pragma solidity ^0.8.20;/*** @dev Collection of functions related to the address type*/library Address {/*** @dev The ETH balance of the account is not enough to perform the operation.*/error AddressInsufficientBalance(address account);/*** @dev There's no code at `target` (it is not a contract).*/error AddressEmptyCode(address target);/*** @dev A call to an address target failed. The target may have reverted.*/error FailedInnerCall();/*** @dev Replacement for Solidity's `transfer`: sends `amount` wei to
12345678910111213141516171819202122232425// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (utils/introspection/IERC165.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC165 standard, as defined in the* https://eips.ethereum.org/EIPS/eip-165[EIP].** Implementers can declare support of contract interfaces, which can then be* queried by others ({ERC165Checker}).** For an implementation, see {ERC165}.*/interface IERC165 {/*** @dev Returns true if this contract implements the interface defined by* `interfaceId`. See the corresponding* https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]* to learn more about how these ids are created.** This function call must use less than 30 000 gas.*/function supportsInterface(bytes4 interfaceId) external view returns (bool);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity ^0.8.14;import "./Types.sol";abstract contract AutomateModuleHelper {function _resolverModuleArg(address _resolverAddress,bytes memory _resolverData) internal pure returns (bytes memory) {return abi.encode(_resolverAddress, _resolverData);}function _proxyModuleArg() internal pure returns (bytes memory) {return bytes("");}function _singleExecModuleArg() internal pure returns (bytes memory) {return bytes("");}function _web3FunctionModuleArg(string memory _web3FunctionHash,bytes memory _web3FunctionArgsHex) internal pure returns (bytes memory) {return abi.encode(_web3FunctionHash, _web3FunctionArgsHex);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity ^0.8.14;import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";import "./Types.sol";/*** @dev Inherit this contract to allow your smart contract to* - Make synchronous fee payments.* - Have call restrictions for functions to be automated.*/// solhint-disable private-vars-leading-underscoreabstract contract AutomateReady {IAutomate public immutable automate;address public immutable dedicatedMsgSender;address private immutable feeCollector;address internal constant ETH = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE;/*** @dev* Only tasks created by _taskCreator defined in constructor can call* the functions with this modifier.*/modifier onlyDedicatedMsgSender() {require(msg.sender == dedicatedMsgSender, "Only dedicated msg.sender");_;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity ^0.8.14;import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";import "./AutomateReady.sol";import {AutomateModuleHelper} from "./AutomateModuleHelper.sol";/*** @dev Inherit this contract to allow your smart contract* to be a task creator and create tasks.*///solhint-disable const-name-snakecase//solhint-disable no-empty-blocksabstract contract AutomateTaskCreator is AutomateModuleHelper, AutomateReady {using SafeERC20 for IERC20;IGelato1Balance public constant gelato1Balance =IGelato1Balance(0x7506C12a824d73D9b08564d5Afc22c949434755e);constructor(address _automate) AutomateReady(_automate, address(this)) {}function _depositFunds1Balance(uint256 _amount,address _token,address _sponsor) internal {if (_token == ETH) {
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity ^0.8.12;enum Module {RESOLVER,DEPRECATED_TIME,PROXY,SINGLE_EXEC,WEB3_FUNCTION,TRIGGER}enum TriggerType {TIME,CRON,EVENT,BLOCK}struct ModuleData {Module[] modules;bytes[] args;}interface IAutomate {function createTask(
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "@openzeppelin/contracts/token/ERC20/IERC20.sol";struct PriceOracle {address oracle;uint256 actionPrice;}enum Statuses {PAUSED,DORMANT,MANAGED,UNWIND}interface ISilo {function deposit() external;function withdraw(uint256 _requestedOut) external;function maintain() external;function exitSilo(address caller) external;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "@openzeppelin/contracts/token/ERC721/extensions/IERC721Enumerable.sol";interface ISiloFactory is IERC721Enumerable{function tokenMinimum(address _token) external view returns(uint _minimum);function balanceOf(address _owner) external view returns(uint);function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256);function managerFactory() external view returns(address);function siloMap(uint _id) external view returns(address);function tierManager() external view returns(address);function ownerOf(uint _id) external view returns(address);function siloToId(address silo) external view returns(uint);// function createSilo(address recipient) external returns(uint);function setActionStack(uint siloID, address[5] memory input, address[] memory _implementations, bytes[] memory _configurationData) external;// function withdraw(uint siloID) external;function getFeeInfo(address _action) external view returns(uint fee, address recipient);function strategyMaxGas() external view returns(uint);function strategyName(string memory _name) external view returns(uint);function getCatalogue(uint _type) external view returns(string[] memory);function getStrategyInputs(uint _id) external view returns(address[5] memory inputs);function getStrategyActions(uint _id) external view returns(address[] memory actions);function getStrategyConfigurationData(uint _id) external view returns(bytes[] memory configurationData);function useCustom(address _action) external view returns(bool);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.0;enum AutoStatus {NOT,PENDING,APPROVED,MANUAL,LOW,NORMAL,HIGH}interface ISiloManager {function owner() external view returns (address);function taskId() external view returns (bytes32);function getBalance() external view returns (uint96);function depositFunds() external payable;function cancelAutomate() external;function withdrawFunds() external;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import "@openzeppelin/contracts/token/ERC20/IERC20.sol";import {AutoStatus} from "./ISiloManager.sol";struct ManagerInfo {address manager;bytes32 taskId;uint256 currentBalance;uint256 topupThreshold;uint256 minFunds;}interface ISiloManagerFactory {function checkManager(address _owner,address _manager) external view returns (bool);function userToManager(address _user) external view returns (address);function isManager(address) external view returns (bool);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.0;interface ISiloSubFactory {function acceptTransfersFrom(address to, address from)externalviewreturns (bool);function skipActionValidTeamCheck(address user)externalviewreturns (bool);function skipActionValidLogicCheck(address user)externalviewreturns (bool);function checkActionsLogicValid(address user,address[] memory _actions,bytes[] memory _configurationData) external view returns (bool);
123456789101112131415161718192021{"optimizer": {"enabled": true,"runs": 200},"viaIR": true,"evmVersion": "paris","outputSelection": {"*": {"*": ["evm.bytecode","evm.deployedBytecode","devdoc","userdoc","metadata","abi"]}},"libraries": {}}
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_mangerFactory","type":"address"},{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_automate","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"AddressInsufficientBalance","type":"error"},{"inputs":[],"name":"FailedInnerCall","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"siloID","type":"uint256"}],"name":"SiloFastBurn","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"siloID","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"SiloTopup","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"SiloUpdateThreshold","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"SiloUpdateTopupAmount","type":"event"},{"inputs":[{"internalType":"uint256","name":"_newThreshold","type":"uint256"}],"name":"adjustThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"adjustTopupAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"caller","type":"address"},{"internalType":"bool","name":"flag","type":"bool"}],"name":"adjustWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"automate","outputs":[{"internalType":"contract IAutomate","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cancelAutomate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"checkAuto","outputs":[{"internalType":"bool","name":"canExec","type":"bool"},{"internalType":"bytes","name":"execPayload","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createTask","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"dedicatedMsgSender","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"depositFunds","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"detected","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableBurnCheck","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fastGap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gelato1Balance","outputs":[{"internalType":"contract IGelato1Balance","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_silo","type":"address"}],"name":"initDetected","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initFastBurn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"lastIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"managerFactory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"ownerWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"actor","type":"address"}],"name":"performAuto","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_flag","type":"bool"}],"name":"setEnableBurnCheck","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_gap","type":"uint256"}],"name":"setFastGap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"taskId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"topupAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"topupThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawSelf","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60e0806040523461025a57606081611ccf803803809161001f82856103f6565b83398101031261025a576100328161042f565b61003e6020830161042f565b916001600160a01b03906100549060400161042f565b16608081905260405163573ea57560e01b8152602081600481855afa908115610267576000916103af575b506040516331056e5760e21b815290602090829060049082906001600160a01b03165afa9081156102675760009161036e575b5060c05260405163cd3d4fb960e01b81526002600482015290602090829060249082905afa9081156102675760009161032f575b50604051632e8743fd60e21b815290602090829060049082906001600160a01b03165afa908115610267576000916102f0575b50604080516337b6269f60e21b815230600482015291829060249082906001600160a01b03165afa908115610267576000916102a6575b5060a052600280546001600160a01b039283166001600160a01b031991821681179092556003805482168317905560018054949093169316929092179055604051631da5f96160e11b8152602081600481855afa90811561026757600091610273575b506004908155604051634fe4e56160e11b815291602091839182905afa90811561026757600091610230575b5060055560405161188b9081610444823960805181818161036b01528181610a8d01528181610f2401526111d8015260a05181818161079301526110ab015260c0518181816103d0015261044e0152f35b90506020813d60201161025f575b8161024b602093836103f6565b8101031261025a5751386101df565b600080fd5b3d915061023e565b6040513d6000823e3d90fd5b90506020813d60201161029e575b8161028e602093836103f6565b8101031261025a575160046101b3565b3d9150610281565b906040823d6040116102e8575b816102c0604093836103f6565b810103126102e55760206102d38361042f565b920151801515036102e5575038610150565b80fd5b3d91506102b3565b90506020813d602011610327575b8161030b602093836103f6565b8101031261025a57604061032060249261042f565b9150610119565b3d91506102fe565b90506020813d602011610366575b8161034a602093836103f6565b8101031261025a57602061035f60049261042f565b91506100e6565b3d915061033d565b90506020813d6020116103a7575b81610389602093836103f6565b8101031261025a5760249161039f60209261042f565b9150916100b2565b3d915061037c565b6020813d6020116103ee575b816103c8602093836103f6565b810103126103ea5751906001600160a01b03821682036102e55750602061007f565b5080fd5b3d91506103bb565b601f909101601f19168101906001600160401b0382119082101761041957604052565b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b038216820361025a5756fe608080604052600436101561001357600080fd5b600090813560e01c908163049aacfe146111c4575080630e4635b51461118057806312065fe01461116457806324600fc3146110da57806328f150eb1461109557806330ef4c8d146110505780633322b23d146110335780633b4bf2c2146110155780633bed2aa714610fc7578063492f999014610ee857806357fb1d6714610eb9578063874adebd14610db85780638da5cb5b14610d8f5780639dcd0b2114610d2b5780639e52b8c614610c275780639fc9cac214610c09578063a351616a14610bcd578063a7476493146108a6578063ad7d7c2114610823578063b7c4f5e714610800578063c40c4ed3146107c1578063d60c8ce81461030d578063d936547e146102ce578063d9398c73146102a5578063d9c88e1414610219578063e2c41dbc1461020a578063e2c4c0351461019e578063f3f6f0d7146101805763f8fa4fe91461016057600080fd5b3461017d578060031936011261017d576020600954604051908152f35b80fd5b503461017d578060031936011261017d576020600c54604051908152f35b503461017d57602036600319011261017d576004356101c860018060a01b0360015416331461125e565b80156101d45760095580f35b60405162461bcd60e51b815260206004820152600e60248201526d3bb937b73390323ab930ba34b7b760911b6044820152606490fd5b508060031936011261017d5780f35b503461017d57604036600319011261017d57610233611207565b6001546001600160a01b031633036102605761025d906024359033906001600160a01b031661174d565b80f35b60405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79206f776e65722063616e2077697468647261772045524332307300006044820152606490fd5b503461017d578060031936011261017d576002546040516001600160a01b039091168152602090f35b503461017d57602036600319011261017d5760209060ff906040906001600160a01b036102f9611207565b168152600684522054166040519015158152f35b503461017d57602036600319011261017d57610327611207565b338252600660205260ff604083205416801561078f575b15610757576001600160a01b03163081036104c1575b5060408051635c08631b60e11b81528291816004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa80156104b65782918391610473575b506001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81036104475750818080927f00000000000000000000000000000000000000000000000000000000000000005af16103f961132e565b50156104025780f35b60405162461bcd60e51b815260206004820152601e60248201527f5f7472616e736665723a20455448207472616e73666572206661696c656400006044820152606490fd5b61025d92507f00000000000000000000000000000000000000000000000000000000000000009061174d565b9150506040813d6040116104ae575b8161048f604093836112f6565b810103126104ab576104a560208251920161136e565b386103a4565b50fd5b3d9150610482565b6040513d84823e3d90fd5b814760ff600b541660001461069c576007546001600160a01b031683148061066c575b156105b85750819052600a60209081526040808420805460ff191660011790555163062785f960e21b81529081600481855afa9081156105ad578391610575575b5060207f8d19a43b3027fa141a42f6efa6d5e51a1c37238d5a6fff246fdf4065cf7ade4691604051908152a15b6bffffffffffffffffffffffff60a01b6007541617600755426008555b38610354565b90506020813d6020116105a5575b81610590602093836112f6565b810103126105a057516020610525565b600080fd5b3d9150610583565b6040513d85823e3d90fd5b6005548091116105ca575b5050610552565b81808092855af1506105da61132e565b5060405163062785f960e21b8152602081600481855afa9081156105ad578391610639575b5060407fe683a8819fb326ca28dee8724164efe778165d3646d230468176187d00b0a37a9160055482519182526020820152a181386105c3565b90506020813d602011610664575b81610654602093836112f6565b810103126105a0575160406105ff565b3d9150610647565b50905060085460095481018091116106885790839142106104e4565b634e487b7160e01b84526011600452602484fd5b90916005548092116106b1575b50505061056f565b828080600495602095855af1506106c661132e565b5060405163062785f960e21b815292839182905afa9081156104b6578291610724575b5060407fe683a8819fb326ca28dee8724164efe778165d3646d230468176187d00b0a37a9160055482519182526020820152a18038806106a9565b90506020813d60201161074f575b8161073f602093836112f6565b810103126105a0575160406106e9565b3d9150610732565b60405162461bcd60e51b815260206004820152601060248201526f13db9b1e481dda1a5d195b1a5cdd195960821b6044820152606490fd5b50337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03161461033e565b503461017d57602036600319011261017d5760209060ff906040906001600160a01b036107ec611207565b168152600a84522054166040519015158152f35b503461017d578060031936011261017d57602060ff600b54166040519015158152f35b503461017d578060031936011261017d5761084960018060a01b0360015416331461125e565b8047806108535750f35b81808092335af161086261132e565b501561086b5780f35b60405162461bcd60e51b815260206004820152601360248201527234b9b9bab2903bb4ba34323930bb9039b2b63360691b6044820152606490fd5b508060031936011261017d578054610b915760606040516108c782826112f6565b60028152601f1982019081366020830137604051916108e684846112f6565b60028352845b818110610b81575050604051906040820182811067ffffffffffffffff821117610b6d5785938461092e610a109488946040528087526020870193845261171a565b52600261093b855161173d565b5261099f61097f61098d6040516351a8b0b560e11b6020820152600481526109646024826112f6565b6040519283913060208401526040808401528783019061121d565b03601f1981018352826112f6565b8251906109998261171a565b5261171a565b5060209384926109ca6040516109b586826112f6565b8881528451906109c48261173d565b5261173d565b5060405192631ac1919d60e31b858501528484526109e96040856112f6565b604051633323b46760e01b815230600482015260806024820152958694608486019061121d565b9260031985850301604486015285604085019151936040865284518093528501930190895b818110610b2c5750505051918481830391015281518082528482019185808360051b83010194019289915b838310610afe57505073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee606486015250505081900381867f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af19182156105ad578392610acc575b5050815580f35b90809250813d8311610af7575b610ae381836112f6565b81010312610af357518280610ac5565b5080fd5b503d610ad9565b929550929580610b1b60019396601f19868203018752895161121d565b970193019301879593879592610a60565b929496509290809550516006811015610b5957888281926001945201950191019086949288969492610a35565b634e487b7160e01b8a52602160045260248afd5b634e487b7160e01b86526041600452602486fd5b80856020809387010152016108ec565b60405162461bcd60e51b8152602060048201526014602482015273416c72656164792073746172746564207461736b60601b6044820152606490fd5b503461017d578060031936011261017d57610be661139a565b90610c056040519283921515835260406020840152604083019061121d565b0390f35b503461017d578060031936011261017d576020600554604051908152f35b503461017d57602036600319011261017d57600435610c5160018060a01b0360015416331461125e565b60035460405163e21a74b960e01b815290602090829060049082906001600160a01b03165afa9081156105ad578391610cf9575b50811115610cbf576020817fb0852bc75063c0547f818944649ba90a6d2be0b28f4888a006689c19fd38d5a792600555604051908152a180f35b60405162461bcd60e51b81526020600482015260126024820152711ddc9bdb99c81d1bdc1d5c08185b5bdd5b9d60721b6044820152606490fd5b90506020813d602011610d23575b81610d14602093836112f6565b810103126105a0575138610c85565b3d9150610d07565b503461017d57604036600319011261017d57610d45611207565b60243590811515809203610d8b57610d6860018060a01b0360015416331461125e565b60018060a01b031682526006602052604082209060ff8019835416911617905580f35b8280fd5b503461017d578060031936011261017d576001546040516001600160a01b039091168152602090f35b503461017d57602036600319011261017d57600435610de260018060a01b0360015416331461125e565b60035460405163e21a74b960e01b815290602090829060049082906001600160a01b03165afa9081156105ad578391610e87575b50811115610e50576020817f2eb81d5778b773ba991f819d4aca790d5e4894bbf423e0c5fa7353618a71dc7c92600455604051908152a180f35b60405162461bcd60e51b815260206004820152600f60248201526e1ddc9bdb99c81d1a1c995cda1bdb19608a1b6044820152606490fd5b90506020813d602011610eb1575b81610ea2602093836112f6565b810103126105a0575138610e16565b3d9150610e95565b503461017d578060031936011261017d576020604051737506c12a824d73d9b08564d5afc22c949434755e8152f35b503461017d578060031936011261017d576002546001600160a01b031633148015610fb3575b8015610f9f575b610f1e906112aa565b805481907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b15610f9b57829160248392604051958693849263ee8ca3b560e01b845260048401525af18015610f8e57610f805780f35b610f89916112f6565b388180f35b50604051903d90823e3d90fd5b5050fd5b506001546001600160a01b03163214610f15565b506001546001600160a01b03163314610f0e565b503461017d57602036600319011261017d57610fe1611207565b610ff660018060a01b0360015416331461125e565b6001600160a01b03168152600a60205260408120805460ff1916905580f35b503461017d578060031936011261017d576020600454604051908152f35b503461017d578060031936011261017d5760209054604051908152f35b503461017d57602036600319011261017d57600435801515809103610af35761108460018060a01b0360015416331461125e565b60ff8019600b5416911617600b5580f35b503461017d578060031936011261017d576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b503461017d578060031936011261017d576002546001600160a01b031633148015611150575b801561113c575b611110906112aa565b80478061111a5750f35b600154829182918291906001600160a01b03165af15061113861132e565b5080f35b506001546001600160a01b03163214611107565b506001546001600160a01b03163314611100565b503461017d578060031936011261017d57602047604051908152f35b503461017d578060031936011261017d576111a660018060a01b0360015416331461125e565b6bffffffffffffffffffffffff60a01b600754166007558060085580f35b905034610af35781600319360112610af3577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b600435906001600160a01b03821682036105a057565b919082519283825260005b848110611249575050826000602080949584010152601f8019910116010190565b80602080928401015182828601015201611228565b1561126557565b60405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f7420746865206f776e65720000000000000000006044820152606490fd5b156112b157565b60405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606490fd5b90601f8019910116810190811067ffffffffffffffff82111761131857604052565b634e487b7160e01b600052604160045260246000fd5b3d15611369573d9067ffffffffffffffff8211611318576040519161135d601f8201601f1916602001846112f6565b82523d6000602084013e565b606090565b51906001600160a01b03821682036105a057565b908160209103126105a0575180151581036105a05790565b6003546040516342456f3560e01b815290602090829060049082906001600160a01b03165afa9081156115e6576000916116e0575b506001546040516370a0823160e01b81526001600160a01b03918216600482018190529092909116602083602481845afa9283156115e6576000936116ac575b50600c5460045493924792915b84811061145a57505050505050604051906114386040836112f6565b600f82526e139bc81cda5b1bc81d1bc818d85b1b608a1b602083015260009190565b604051632f745c5960e01b81526001600160a01b038316600482015260248101829052602081604481875afa9081156115e65760009161167b575b506040519063281af86f60e21b82526004820152602081602481875afa9081156115e657600091611642575b506040516302734eab60e51b81526001600160a01b039190911690602081600481855afa9081156115e657600091611608575b5060048110156115f25715801561158b575b8015611573575b61156957868131108061155e575b61152b5750600101935b9361141c565b969550505050505060405191631ac1919d60e31b60208401526024830152602482526115586044836112f6565b60019190565b50600554851161151b565b5060010193611525565b5080600052600a60205260ff6040600020541661150d565b5060405163eef49ee360e01b8152602081600481855afa9081156115e6576000916115b8575b5015611506565b6115d9915060203d81116115df575b6115d181836112f6565b810190611382565b386115b1565b503d6115c7565b6040513d6000823e3d90fd5b634e487b7160e01b600052602160045260246000fd5b6020813d821161163a575b81611620602093836112f6565b81010312610af3575190600482101561017d5750386114f4565b3d9150611613565b906020823d8211611673575b8161165b602093836112f6565b8101031261017d575061166d9061136e565b386114c1565b3d915061164e565b906020823d82116116a4575b81611694602093836112f6565b8101031261017d57505138611495565b3d9150611687565b9092506020813d6020116116d8575b816116c8602093836112f6565b810103126105a05751913861140f565b3d91506116bb565b90506020813d602011611712575b816116fb602093836112f6565b810103126105a05761170c9061136e565b386113cf565b3d91506116ee565b8051156117275760200190565b634e487b7160e01b600052603260045260246000fd5b8051600110156117275760400190565b60405163a9059cbb60e01b602082019081526001600160a01b039390931660248201526044808201949094529283526117af916000918291906117916064876112f6565b60018060a01b031694519082865af16117a861132e565b90836117f4565b80519081151591826117d9575b50506117c55750565b635274afe760e01b60005260045260246000fd5b6117ec9250602080918301019101611382565b1538806117bc565b9061181a575080511561180957805190602001fd5b630a12f52160e11b60005260046000fd5b8151158061184c575b61182b575090565b639996b31560e01b60009081526001600160a01b0391909116600452602490fd5b50803b1561182356fea264697066735822122023bcfc97ee0bd7661de13ed162c530915e03f907e59cc058db079ad6f42413a164736f6c634300081c0033000000000000000000000000d0cb3f6f341b92dfd4447fbd0db498434afc332e000000000000000000000000ee58cff202546728ce0e9af7b041e803c9bc4d80000000000000000000000000afd37d0558255aa687167560cd3aaeea75c2841e
Deployed Bytecode
0x608080604052600436101561001357600080fd5b600090813560e01c908163049aacfe146111c4575080630e4635b51461118057806312065fe01461116457806324600fc3146110da57806328f150eb1461109557806330ef4c8d146110505780633322b23d146110335780633b4bf2c2146110155780633bed2aa714610fc7578063492f999014610ee857806357fb1d6714610eb9578063874adebd14610db85780638da5cb5b14610d8f5780639dcd0b2114610d2b5780639e52b8c614610c275780639fc9cac214610c09578063a351616a14610bcd578063a7476493146108a6578063ad7d7c2114610823578063b7c4f5e714610800578063c40c4ed3146107c1578063d60c8ce81461030d578063d936547e146102ce578063d9398c73146102a5578063d9c88e1414610219578063e2c41dbc1461020a578063e2c4c0351461019e578063f3f6f0d7146101805763f8fa4fe91461016057600080fd5b3461017d578060031936011261017d576020600954604051908152f35b80fd5b503461017d578060031936011261017d576020600c54604051908152f35b503461017d57602036600319011261017d576004356101c860018060a01b0360015416331461125e565b80156101d45760095580f35b60405162461bcd60e51b815260206004820152600e60248201526d3bb937b73390323ab930ba34b7b760911b6044820152606490fd5b508060031936011261017d5780f35b503461017d57604036600319011261017d57610233611207565b6001546001600160a01b031633036102605761025d906024359033906001600160a01b031661174d565b80f35b60405162461bcd60e51b815260206004820152601e60248201527f4f6e6c79206f776e65722063616e2077697468647261772045524332307300006044820152606490fd5b503461017d578060031936011261017d576002546040516001600160a01b039091168152602090f35b503461017d57602036600319011261017d5760209060ff906040906001600160a01b036102f9611207565b168152600684522054166040519015158152f35b503461017d57602036600319011261017d57610327611207565b338252600660205260ff604083205416801561078f575b15610757576001600160a01b03163081036104c1575b5060408051635c08631b60e11b81528291816004817f000000000000000000000000afd37d0558255aa687167560cd3aaeea75c2841e6001600160a01b03165afa80156104b65782918391610473575b506001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81036104475750818080927f00000000000000000000000092478c7eccb3c7a3932263712c1555dbaea7d56c5af16103f961132e565b50156104025780f35b60405162461bcd60e51b815260206004820152601e60248201527f5f7472616e736665723a20455448207472616e73666572206661696c656400006044820152606490fd5b61025d92507f00000000000000000000000092478c7eccb3c7a3932263712c1555dbaea7d56c9061174d565b9150506040813d6040116104ae575b8161048f604093836112f6565b810103126104ab576104a560208251920161136e565b386103a4565b50fd5b3d9150610482565b6040513d84823e3d90fd5b814760ff600b541660001461069c576007546001600160a01b031683148061066c575b156105b85750819052600a60209081526040808420805460ff191660011790555163062785f960e21b81529081600481855afa9081156105ad578391610575575b5060207f8d19a43b3027fa141a42f6efa6d5e51a1c37238d5a6fff246fdf4065cf7ade4691604051908152a15b6bffffffffffffffffffffffff60a01b6007541617600755426008555b38610354565b90506020813d6020116105a5575b81610590602093836112f6565b810103126105a057516020610525565b600080fd5b3d9150610583565b6040513d85823e3d90fd5b6005548091116105ca575b5050610552565b81808092855af1506105da61132e565b5060405163062785f960e21b8152602081600481855afa9081156105ad578391610639575b5060407fe683a8819fb326ca28dee8724164efe778165d3646d230468176187d00b0a37a9160055482519182526020820152a181386105c3565b90506020813d602011610664575b81610654602093836112f6565b810103126105a0575160406105ff565b3d9150610647565b50905060085460095481018091116106885790839142106104e4565b634e487b7160e01b84526011600452602484fd5b90916005548092116106b1575b50505061056f565b828080600495602095855af1506106c661132e565b5060405163062785f960e21b815292839182905afa9081156104b6578291610724575b5060407fe683a8819fb326ca28dee8724164efe778165d3646d230468176187d00b0a37a9160055482519182526020820152a18038806106a9565b90506020813d60201161074f575b8161073f602093836112f6565b810103126105a0575160406106e9565b3d9150610732565b60405162461bcd60e51b815260206004820152601060248201526f13db9b1e481dda1a5d195b1a5cdd195960821b6044820152606490fd5b50337f00000000000000000000000037e7a3fadb9050a4f6002e23ac31fe5eca5320706001600160a01b03161461033e565b503461017d57602036600319011261017d5760209060ff906040906001600160a01b036107ec611207565b168152600a84522054166040519015158152f35b503461017d578060031936011261017d57602060ff600b54166040519015158152f35b503461017d578060031936011261017d5761084960018060a01b0360015416331461125e565b8047806108535750f35b81808092335af161086261132e565b501561086b5780f35b60405162461bcd60e51b815260206004820152601360248201527234b9b9bab2903bb4ba34323930bb9039b2b63360691b6044820152606490fd5b508060031936011261017d578054610b915760606040516108c782826112f6565b60028152601f1982019081366020830137604051916108e684846112f6565b60028352845b818110610b81575050604051906040820182811067ffffffffffffffff821117610b6d5785938461092e610a109488946040528087526020870193845261171a565b52600261093b855161173d565b5261099f61097f61098d6040516351a8b0b560e11b6020820152600481526109646024826112f6565b6040519283913060208401526040808401528783019061121d565b03601f1981018352826112f6565b8251906109998261171a565b5261171a565b5060209384926109ca6040516109b586826112f6565b8881528451906109c48261173d565b5261173d565b5060405192631ac1919d60e31b858501528484526109e96040856112f6565b604051633323b46760e01b815230600482015260806024820152958694608486019061121d565b9260031985850301604486015285604085019151936040865284518093528501930190895b818110610b2c5750505051918481830391015281518082528482019185808360051b83010194019289915b838310610afe57505073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee606486015250505081900381867f000000000000000000000000afd37d0558255aa687167560cd3aaeea75c2841e6001600160a01b03165af19182156105ad578392610acc575b5050815580f35b90809250813d8311610af7575b610ae381836112f6565b81010312610af357518280610ac5565b5080fd5b503d610ad9565b929550929580610b1b60019396601f19868203018752895161121d565b970193019301879593879592610a60565b929496509290809550516006811015610b5957888281926001945201950191019086949288969492610a35565b634e487b7160e01b8a52602160045260248afd5b634e487b7160e01b86526041600452602486fd5b80856020809387010152016108ec565b60405162461bcd60e51b8152602060048201526014602482015273416c72656164792073746172746564207461736b60601b6044820152606490fd5b503461017d578060031936011261017d57610be661139a565b90610c056040519283921515835260406020840152604083019061121d565b0390f35b503461017d578060031936011261017d576020600554604051908152f35b503461017d57602036600319011261017d57600435610c5160018060a01b0360015416331461125e565b60035460405163e21a74b960e01b815290602090829060049082906001600160a01b03165afa9081156105ad578391610cf9575b50811115610cbf576020817fb0852bc75063c0547f818944649ba90a6d2be0b28f4888a006689c19fd38d5a792600555604051908152a180f35b60405162461bcd60e51b81526020600482015260126024820152711ddc9bdb99c81d1bdc1d5c08185b5bdd5b9d60721b6044820152606490fd5b90506020813d602011610d23575b81610d14602093836112f6565b810103126105a0575138610c85565b3d9150610d07565b503461017d57604036600319011261017d57610d45611207565b60243590811515809203610d8b57610d6860018060a01b0360015416331461125e565b60018060a01b031682526006602052604082209060ff8019835416911617905580f35b8280fd5b503461017d578060031936011261017d576001546040516001600160a01b039091168152602090f35b503461017d57602036600319011261017d57600435610de260018060a01b0360015416331461125e565b60035460405163e21a74b960e01b815290602090829060049082906001600160a01b03165afa9081156105ad578391610e87575b50811115610e50576020817f2eb81d5778b773ba991f819d4aca790d5e4894bbf423e0c5fa7353618a71dc7c92600455604051908152a180f35b60405162461bcd60e51b815260206004820152600f60248201526e1ddc9bdb99c81d1a1c995cda1bdb19608a1b6044820152606490fd5b90506020813d602011610eb1575b81610ea2602093836112f6565b810103126105a0575138610e16565b3d9150610e95565b503461017d578060031936011261017d576020604051737506c12a824d73d9b08564d5afc22c949434755e8152f35b503461017d578060031936011261017d576002546001600160a01b031633148015610fb3575b8015610f9f575b610f1e906112aa565b805481907f000000000000000000000000afd37d0558255aa687167560cd3aaeea75c2841e6001600160a01b031690813b15610f9b57829160248392604051958693849263ee8ca3b560e01b845260048401525af18015610f8e57610f805780f35b610f89916112f6565b388180f35b50604051903d90823e3d90fd5b5050fd5b506001546001600160a01b03163214610f15565b506001546001600160a01b03163314610f0e565b503461017d57602036600319011261017d57610fe1611207565b610ff660018060a01b0360015416331461125e565b6001600160a01b03168152600a60205260408120805460ff1916905580f35b503461017d578060031936011261017d576020600454604051908152f35b503461017d578060031936011261017d5760209054604051908152f35b503461017d57602036600319011261017d57600435801515809103610af35761108460018060a01b0360015416331461125e565b60ff8019600b5416911617600b5580f35b503461017d578060031936011261017d576040517f00000000000000000000000037e7a3fadb9050a4f6002e23ac31fe5eca5320706001600160a01b03168152602090f35b503461017d578060031936011261017d576002546001600160a01b031633148015611150575b801561113c575b611110906112aa565b80478061111a5750f35b600154829182918291906001600160a01b03165af15061113861132e565b5080f35b506001546001600160a01b03163214611107565b506001546001600160a01b03163314611100565b503461017d578060031936011261017d57602047604051908152f35b503461017d578060031936011261017d576111a660018060a01b0360015416331461125e565b6bffffffffffffffffffffffff60a01b600754166007558060085580f35b905034610af35781600319360112610af3577f000000000000000000000000afd37d0558255aa687167560cd3aaeea75c2841e6001600160a01b03168152602090f35b600435906001600160a01b03821682036105a057565b919082519283825260005b848110611249575050826000602080949584010152601f8019910116010190565b80602080928401015182828601015201611228565b1561126557565b60405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f7420746865206f776e65720000000000000000006044820152606490fd5b156112b157565b60405162461bcd60e51b815260206004820152601760248201527f43616c6c6572206973206e6f74207468652061646d696e0000000000000000006044820152606490fd5b90601f8019910116810190811067ffffffffffffffff82111761131857604052565b634e487b7160e01b600052604160045260246000fd5b3d15611369573d9067ffffffffffffffff8211611318576040519161135d601f8201601f1916602001846112f6565b82523d6000602084013e565b606090565b51906001600160a01b03821682036105a057565b908160209103126105a0575180151581036105a05790565b6003546040516342456f3560e01b815290602090829060049082906001600160a01b03165afa9081156115e6576000916116e0575b506001546040516370a0823160e01b81526001600160a01b03918216600482018190529092909116602083602481845afa9283156115e6576000936116ac575b50600c5460045493924792915b84811061145a57505050505050604051906114386040836112f6565b600f82526e139bc81cda5b1bc81d1bc818d85b1b608a1b602083015260009190565b604051632f745c5960e01b81526001600160a01b038316600482015260248101829052602081604481875afa9081156115e65760009161167b575b506040519063281af86f60e21b82526004820152602081602481875afa9081156115e657600091611642575b506040516302734eab60e51b81526001600160a01b039190911690602081600481855afa9081156115e657600091611608575b5060048110156115f25715801561158b575b8015611573575b61156957868131108061155e575b61152b5750600101935b9361141c565b969550505050505060405191631ac1919d60e31b60208401526024830152602482526115586044836112f6565b60019190565b50600554851161151b565b5060010193611525565b5080600052600a60205260ff6040600020541661150d565b5060405163eef49ee360e01b8152602081600481855afa9081156115e6576000916115b8575b5015611506565b6115d9915060203d81116115df575b6115d181836112f6565b810190611382565b386115b1565b503d6115c7565b6040513d6000823e3d90fd5b634e487b7160e01b600052602160045260246000fd5b6020813d821161163a575b81611620602093836112f6565b81010312610af3575190600482101561017d5750386114f4565b3d9150611613565b906020823d8211611673575b8161165b602093836112f6565b8101031261017d575061166d9061136e565b386114c1565b3d915061164e565b906020823d82116116a4575b81611694602093836112f6565b8101031261017d57505138611495565b3d9150611687565b9092506020813d6020116116d8575b816116c8602093836112f6565b810103126105a05751913861140f565b3d91506116bb565b90506020813d602011611712575b816116fb602093836112f6565b810103126105a05761170c9061136e565b386113cf565b3d91506116ee565b8051156117275760200190565b634e487b7160e01b600052603260045260246000fd5b8051600110156117275760400190565b60405163a9059cbb60e01b602082019081526001600160a01b039390931660248201526044808201949094529283526117af916000918291906117916064876112f6565b60018060a01b031694519082865af16117a861132e565b90836117f4565b80519081151591826117d9575b50506117c55750565b635274afe760e01b60005260045260246000fd5b6117ec9250602080918301019101611382565b1538806117bc565b9061181a575080511561180957805190602001fd5b630a12f52160e11b60005260046000fd5b8151158061184c575b61182b575090565b639996b31560e01b60009081526001600160a01b0391909116600452602490fd5b50803b1561182356fea264697066735822122023bcfc97ee0bd7661de13ed162c530915e03f907e59cc058db079ad6f42413a164736f6c634300081c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000d0cb3f6f341b92dfd4447fbd0db498434afc332e000000000000000000000000ee58cff202546728ce0e9af7b041e803c9bc4d80000000000000000000000000afd37d0558255aa687167560cd3aaeea75c2841e
-----Decoded View---------------
Arg [0] : _mangerFactory (address): 0xd0cB3f6f341b92dFD4447fBD0db498434AFc332e
Arg [1] : _owner (address): 0xEe58Cff202546728ce0e9AF7b041E803c9BC4d80
Arg [2] : _automate (address): 0xafd37d0558255aA687167560cd3AaeEa75c2841E
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000d0cb3f6f341b92dfd4447fbd0db498434afc332e
Arg [1] : 000000000000000000000000ee58cff202546728ce0e9af7b041e803c9bc4d80
Arg [2] : 000000000000000000000000afd37d0558255aa687167560cd3aaeea75c2841e
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.