Overview
FTM Balance
0 FTM
FTM Value
$0.00More Info
Private Name Tags
ContractCreator
Sponsored
Latest 1 internal transaction
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
41085573 | 836 days ago | Contract Creation | 0 FTM |
Loading...
Loading
Contract Name:
CashBackManager
Compiler Version
v0.7.6+commit.7338295f
Optimization Enabled:
Yes with 100 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
//SPDX-License-Identifier: LICENSED // Solidity files have to start with this pragma. // It will be used by the Solidity compiler to validate its version. pragma solidity ^0.7.0; pragma abicoder v2; import "./interfaces/ERC20Interface.sol"; import "./interfaces/ICard.sol"; import "./MultiSigOwner.sol"; import "./Manager.sol"; contract CashBackManager is MultiSigOwner, Manager { uint256 public constant MAX_LEVEL = 5; // Setting for cashback enable or disable bool public cashBackEnable; // cashback percent for each level uint256[] public CashBackPercents; event CashBackEnableChanged(bool cashBackEnable); event CashBackPercentChanged(uint256 index, uint256 _amount); constructor(address _cardContract) Manager(_cardContract) { CashBackPercents = [10, 200, 300, 400, 500, 600]; cashBackEnable = true; } ////////////////////////// Read functions ///////////////////////////////////////////////////////////// //verified function getCashBackPercent(uint256 level) public view returns (uint256) { require(level <= 5, "level > 5"); return CashBackPercents[level]; } //////////////////// Owner functions //////////////////////////////////////////////////////////////// // verified function setCashBackPercent(bytes calldata signData, bytes calldata keys) public validSignOfOwner(signData, keys, "setCashBackPercent") { (, , , bytes memory params) = abi.decode( signData, (bytes4, uint256, uint256, bytes) ); (uint256 index, uint256 _amount) = abi.decode( params, (uint256, uint256) ); require(index <= MAX_LEVEL, "level<=5"); CashBackPercents[index] = _amount; emit CashBackPercentChanged(index, _amount); } function setCashBackEnable(bytes calldata signData, bytes calldata keys) public validSignOfOwner(signData, keys, "setCashBackEnable") { (, , , bytes memory params) = abi.decode( signData, (bytes4, uint256, uint256, bytes) ); bool newEnabled = abi.decode(params, (bool)); cashBackEnable = newEnabled; emit CashBackEnableChanged(cashBackEnable); } }
//SPDX-License-Identifier: UNLICENSED pragma solidity ^0.7.0; interface ERC20Interface { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the token decimals. */ function decimals() external view returns (uint8); /** * @dev Returns the token symbol. */ function symbol() external view returns (string memory); /** * @dev Returns the token name. */ function name() external view returns (string memory); /** * @dev Returns the bep token owner. */ function getOwner() external view returns (address); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address _owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @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); }
// SPDX-License-Identifier: LICENSED pragma solidity ^0.7.0; interface ICard { function getUserOkseBalance(address userAddr) external view returns (uint256); function getUserAssetAmount(address userAddr, address market) external view returns (uint256); function usersBalances(address userAddr, address market) external view returns (uint256); function priceOracle() external view returns (address); }
// SPDX-License-Identifier: LICENSED pragma solidity ^0.7.0; pragma abicoder v2; // 2/3 Multi Sig Owner contract MultiSigOwner { address[] public owners; mapping(uint256 => bool) public signatureId; bool private initialized; // events event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); event SignValidTimeChanged(uint256 newValue); modifier validSignOfOwner( bytes calldata signData, bytes calldata keys, string memory functionName ) { require(isOwner(msg.sender), "on"); address signer = getSigner(signData, keys); require( signer != msg.sender && isOwner(signer) && signer != address(0), "is" ); (bytes4 method, uint256 id, uint256 validTime, ) = abi.decode( signData, (bytes4, uint256, uint256, bytes) ); require( signatureId[id] == false && method == bytes4(keccak256(bytes(functionName))), "sru" ); require(validTime > block.timestamp, "ep"); signatureId[id] = true; _; } function isOwner(address addr) public view returns (bool) { bool _isOwner = false; for (uint256 i = 0; i < owners.length; i++) { if (owners[i] == addr) { _isOwner = true; } } return _isOwner; } constructor() {} function initializeOwners(address[3] memory _owners) public { require( !initialized && _owners[0] != address(0) && _owners[1] != address(0) && _owners[2] != address(0), "ai" ); owners = [_owners[0], _owners[1], _owners[2]]; initialized = true; } function getSigner(bytes calldata _data, bytes calldata keys) public view returns (address) { uint256 chainId; assembly { chainId := chainid() } (uint8 v, bytes32 r, bytes32 s) = abi.decode( keys, (uint8, bytes32, bytes32) ); return ecrecover( toEthSignedMessageHash( keccak256(abi.encodePacked(this, chainId, _data)) ), v, r, s ); } function encodePackedData(bytes calldata _data) public view returns (bytes32) { uint256 chainId; assembly { chainId := chainid() } return keccak256(abi.encodePacked(this, chainId, _data)); } function toEthSignedMessageHash(bytes32 hash) internal pure returns (bytes32) { return keccak256( abi.encodePacked("\x19Ethereum Signed Message:\n32", hash) ); } // Set functions // verified function transferOwnership(bytes calldata signData, bytes calldata keys) public validSignOfOwner(signData, keys, "transferOwnership") { (, , , bytes memory params) = abi.decode( signData, (bytes4, uint256, uint256, bytes) ); address newOwner = abi.decode(params, (address)); uint256 index; for (uint256 i = 0; i < owners.length; i++) { if (owners[i] == msg.sender) { index = i; } } address oldOwner = owners[index]; owners[index] = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
//SPDX-License-Identifier: LICENSED // Solidity files have to start with this pragma. // It will be used by the Solidity compiler to validate its version. pragma solidity ^0.7.0; contract Manager { address public immutable cardContract; constructor(address _cardContract) { cardContract = _cardContract; } /// modifier functions modifier onlyFromCardContract() { require(msg.sender == cardContract, "oc"); _; } }
{ "optimizer": { "enabled": true, "runs": 100 }, "metadata": { "bytecodeHash": "none", "useLiteralContent": true }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_cardContract","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"cashBackEnable","type":"bool"}],"name":"CashBackEnableChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"index","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"CashBackPercentChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"SignValidTimeChanged","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"CashBackPercents","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_LEVEL","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cardContract","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cashBackEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"encodePackedData","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"level","type":"uint256"}],"name":"getCashBackPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"bytes","name":"keys","type":"bytes"}],"name":"getSigner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[3]","name":"_owners","type":"address[3]"}],"name":"initializeOwners","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"owners","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"signData","type":"bytes"},{"internalType":"bytes","name":"keys","type":"bytes"}],"name":"setCashBackEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"signData","type":"bytes"},{"internalType":"bytes","name":"keys","type":"bytes"}],"name":"setCashBackPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"signatureId","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"signData","type":"bytes"},{"internalType":"bytes","name":"keys","type":"bytes"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60a06040523480156200001157600080fd5b50604051620011e6380380620011e6833981016040819052620000349162000114565b606081811b6001600160601b03191660809081526040805160c081018252600a815260c8602082015261012c91810191909152610190928101929092526101f49082015261025860a082015262000090906003906006620000a7565b50506002805461ff00191661010017905562000144565b828054828255906000526020600020908101928215620000eb579160200282015b82811115620000eb578251829061ffff16905591602001919060010190620000c8565b50620000f9929150620000fd565b5090565b5b80821115620000f95760008155600101620000fe565b60006020828403121562000126578081fd5b81516001600160a01b03811681146200013d578182fd5b9392505050565b60805160601c61108462000162600039806104f652506110846000f3fe608060405234801561001057600080fd5b50600436106100ca5760003560e01c806375e16b171161007c57806375e16b171461017b57806388b430061461018e578063a49062d4146101a1578063b2b9f0ed146101a9578063d1f21f4f146101bc578063e15dbe4d146101cf578063f130af69146101e2576100ca565b8063025e7c27146100cf57806318d885c2146100f85780632f54bf6e1461011857806339c472c01461013857806368af81e61461014d578063693bd2d0146101605780636f9e4f0b14610168575b600080fd5b6100e26100dd366004610e3d565b6101ea565b6040516100ef9190610f15565b60405180910390f35b61010b610106366004610e3d565b610214565b6040516100ef9190610f34565b61012b610126366004610bf6565b61025f565b6040516100ef9190610f29565b61014b610146366004610dd4565b6102b4565b005b61010b61015b366004610d94565b6104b9565b6100e26104f4565b61014b610176366004610c35565b610518565b6100e2610189366004610dd4565b6105d0565b61010b61019c366004610e3d565b610679565b61010b61069a565b61012b6101b7366004610e3d565b61069f565b61014b6101ca366004610dd4565b6106b4565b61014b6101dd366004610dd4565b610913565b61012b610af7565b600081815481106101fa57600080fd5b6000918252602090912001546001600160a01b0316905081565b600060058211156102405760405162461bcd60e51b815260040161023790610f5b565b60405180910390fd5b6003828154811061024d57fe5b90600052602060002001549050919050565b600080805b6000548110156102ad57836001600160a01b03166000828154811061028557fe5b6000918252602090912001546001600160a01b031614156102a557600191505b600101610264565b5092915050565b83838383604051806040016040528060128152602001711cd95d10d85cda109858dad4195c98d95b9d60721b8152506102ec3361025f565b6103085760405162461bcd60e51b815260040161023790610f7e565b6000610316868686866105d0565b90506001600160a01b038116331480159061033557506103358161025f565b801561034957506001600160a01b03811615155b6103655760405162461bcd60e51b815260040161023790610fb6565b60008080610375888a018a610cdb565b50600082815260016020526040902054929550909350915060ff161580156103af5750845160208601206001600160e01b03198481169116145b6103cb5760405162461bcd60e51b815260040161023790611010565b4281116103ea5760405162461bcd60e51b815260040161023790610f9a565b60008281526001602081905260408220805460ff191690911790556104118d8f018f610cdb565b93505050506000808280602001905181019061042d9190610e55565b9150915060058211156104525760405162461bcd60e51b815260040161023790610fd2565b806003838154811061046057fe5b90600052602060002001819055507f3eb835ae37294b56bdca26cb97b097bd586f0529fa709383f630dd22d3d6a985828260405161049f92919061102d565b60405180910390a150505050505050505050505050505050565b60405160009046906104d5903090839087908790602001610eb1565b6040516020818303038152906040528051906020012091505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60025460ff16158015610534575080516001600160a01b031615155b801561054c575060208101516001600160a01b031615155b8015610564575060408101516001600160a01b031615155b6105805760405162461bcd60e51b815260040161023790610ff4565b6040805160608101825282516001600160a01b0390811682526020808501518216908301528383015116918101919091526105bf906000906003610b35565b50506002805460ff19166001179055565b6000468180806105e286880188610e78565b925092509250600161061f30868c8c6040516020016106049493929190610eb1565b60405160208183030381529060405280519060200120610b05565b8484846040516000815260200160405260405161063f9493929190610f3d565b6020604051602081039080840390855afa158015610661573d6000803e3d6000fd5b5050604051601f1901519a9950505050505050505050565b6003818154811061068957600080fd5b600091825260209091200154905081565b600581565b60016020526000908152604090205460ff1681565b838383836040518060400160405280601181526020017007472616e736665724f776e65727368697607c1b8152506106eb3361025f565b6107075760405162461bcd60e51b815260040161023790610f7e565b6000610715868686866105d0565b90506001600160a01b038116331480159061073457506107348161025f565b801561074857506001600160a01b03811615155b6107645760405162461bcd60e51b815260040161023790610fb6565b60008080610774888a018a610cdb565b50600082815260016020526040902054929550909350915060ff161580156107ae5750845160208601206001600160e01b03198481169116145b6107ca5760405162461bcd60e51b815260040161023790611010565b4281116107e95760405162461bcd60e51b815260040161023790610f9a565b60008281526001602081905260408220805460ff191690911790556108108d8f018f610cdb565b935050505060008180602001905181019061082b9190610c19565b90506000805b60005481101561087957336001600160a01b03166000828154811061085257fe5b6000918252602090912001546001600160a01b03161415610871578091505b600101610831565b50600080828154811061088857fe5b600091825260208220015481546001600160a01b039091169250849190849081106108af57fe5b6000918252602082200180546001600160a01b0319166001600160a01b03938416179055604051858316928416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050505050505050505050505050505050565b8383838360405180604001604052806011815260200170736574436173684261636b456e61626c6560781b81525061094a3361025f565b6109665760405162461bcd60e51b815260040161023790610f7e565b6000610974868686866105d0565b90506001600160a01b038116331480159061099357506109938161025f565b80156109a757506001600160a01b03811615155b6109c35760405162461bcd60e51b815260040161023790610fb6565b600080806109d3888a018a610cdb565b50600082815260016020526040902054929550909350915060ff16158015610a0d5750845160208601206001600160e01b03198481169116145b610a295760405162461bcd60e51b815260040161023790611010565b428111610a485760405162461bcd60e51b815260040161023790610f9a565b60008281526001602081905260408220805460ff19169091179055610a6f8d8f018f610cdb565b9350505050600081806020019051810190610a8a9190610cbb565b6002805461ff001916610100831515810291909117918290556040519293507f214d02c1b861e9a89ac8c743416df18ebd2388e6c9da90721d995cfecf3970e592610ade9260ff9290049190911690610f29565b60405180910390a1505050505050505050505050505050565b600254610100900460ff1681565b600081604051602001610b189190610ee4565b604051602081830303815290604052805190602001209050919050565b828054828255906000526020600020908101928215610b8a579160200282015b82811115610b8a57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190610b55565b50610b96929150610b9a565b5090565b5b80821115610b965760008155600101610b9b565b60008083601f840112610bc0578182fd5b50813567ffffffffffffffff811115610bd7578182fd5b602083019150836020828501011115610bef57600080fd5b9250929050565b600060208284031215610c07578081fd5b8135610c128161105f565b9392505050565b600060208284031215610c2a578081fd5b8151610c128161105f565b600060608284031215610c46578081fd5b82601f830112610c54578081fd5b6040516060810181811067ffffffffffffffff82111715610c7157fe5b604052808360608101861015610c85578384fd5b835b6003811015610cb0578135610c9b8161105f565b83526020928301929190910190600101610c87565b509195945050505050565b600060208284031215610ccc578081fd5b81518015158114610c12578182fd5b60008060008060808587031215610cf0578283fd5b84356001600160e01b031981168114610d07578384fd5b9350602085810135935060408601359250606086013567ffffffffffffffff80821115610d32578384fd5b818801915088601f830112610d45578384fd5b813581811115610d5157fe5b610d63601f8201601f1916850161103b565b91508082528984828501011115610d78578485fd5b8084840185840137810190920192909252939692955090935050565b60008060208385031215610da6578182fd5b823567ffffffffffffffff811115610dbc578283fd5b610dc885828601610baf565b90969095509350505050565b60008060008060408587031215610de9578384fd5b843567ffffffffffffffff80821115610e00578586fd5b610e0c88838901610baf565b90965094506020870135915080821115610e24578384fd5b50610e3187828801610baf565b95989497509550505050565b600060208284031215610e4e578081fd5b5035919050565b60008060408385031215610e67578182fd5b505080516020909101519092909150565b600080600060608486031215610e8c578283fd5b833560ff81168114610e9c578384fd5b95602085013595506040909401359392505050565b60006bffffffffffffffffffffffff198660601b1682528460148301528284603484013791016034019081529392505050565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c810191909152603c0190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b93845260ff9290921660208401526040830152606082015260800190565b6020808252600990820152686c6576656c203e203560b81b604082015260600190565b60208082526002908201526137b760f11b604082015260600190565b602080825260029082015261065760f41b604082015260600190565b602080825260029082015261697360f01b604082015260600190565b6020808252600890820152676c6576656c3c3d3560c01b604082015260600190565b602080825260029082015261616960f01b604082015260600190565b60208082526003908201526273727560e81b604082015260600190565b918252602082015260400190565b60405181810167ffffffffffffffff8111828210171561105757fe5b604052919050565b6001600160a01b038116811461107457600080fd5b5056fea164736f6c6343000706000a00000000000000000000000008b1fc2b48e5871354af138b7909e9d1a04a89dd
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100ca5760003560e01c806375e16b171161007c57806375e16b171461017b57806388b430061461018e578063a49062d4146101a1578063b2b9f0ed146101a9578063d1f21f4f146101bc578063e15dbe4d146101cf578063f130af69146101e2576100ca565b8063025e7c27146100cf57806318d885c2146100f85780632f54bf6e1461011857806339c472c01461013857806368af81e61461014d578063693bd2d0146101605780636f9e4f0b14610168575b600080fd5b6100e26100dd366004610e3d565b6101ea565b6040516100ef9190610f15565b60405180910390f35b61010b610106366004610e3d565b610214565b6040516100ef9190610f34565b61012b610126366004610bf6565b61025f565b6040516100ef9190610f29565b61014b610146366004610dd4565b6102b4565b005b61010b61015b366004610d94565b6104b9565b6100e26104f4565b61014b610176366004610c35565b610518565b6100e2610189366004610dd4565b6105d0565b61010b61019c366004610e3d565b610679565b61010b61069a565b61012b6101b7366004610e3d565b61069f565b61014b6101ca366004610dd4565b6106b4565b61014b6101dd366004610dd4565b610913565b61012b610af7565b600081815481106101fa57600080fd5b6000918252602090912001546001600160a01b0316905081565b600060058211156102405760405162461bcd60e51b815260040161023790610f5b565b60405180910390fd5b6003828154811061024d57fe5b90600052602060002001549050919050565b600080805b6000548110156102ad57836001600160a01b03166000828154811061028557fe5b6000918252602090912001546001600160a01b031614156102a557600191505b600101610264565b5092915050565b83838383604051806040016040528060128152602001711cd95d10d85cda109858dad4195c98d95b9d60721b8152506102ec3361025f565b6103085760405162461bcd60e51b815260040161023790610f7e565b6000610316868686866105d0565b90506001600160a01b038116331480159061033557506103358161025f565b801561034957506001600160a01b03811615155b6103655760405162461bcd60e51b815260040161023790610fb6565b60008080610375888a018a610cdb565b50600082815260016020526040902054929550909350915060ff161580156103af5750845160208601206001600160e01b03198481169116145b6103cb5760405162461bcd60e51b815260040161023790611010565b4281116103ea5760405162461bcd60e51b815260040161023790610f9a565b60008281526001602081905260408220805460ff191690911790556104118d8f018f610cdb565b93505050506000808280602001905181019061042d9190610e55565b9150915060058211156104525760405162461bcd60e51b815260040161023790610fd2565b806003838154811061046057fe5b90600052602060002001819055507f3eb835ae37294b56bdca26cb97b097bd586f0529fa709383f630dd22d3d6a985828260405161049f92919061102d565b60405180910390a150505050505050505050505050505050565b60405160009046906104d5903090839087908790602001610eb1565b6040516020818303038152906040528051906020012091505092915050565b7f00000000000000000000000008b1fc2b48e5871354af138b7909e9d1a04a89dd81565b60025460ff16158015610534575080516001600160a01b031615155b801561054c575060208101516001600160a01b031615155b8015610564575060408101516001600160a01b031615155b6105805760405162461bcd60e51b815260040161023790610ff4565b6040805160608101825282516001600160a01b0390811682526020808501518216908301528383015116918101919091526105bf906000906003610b35565b50506002805460ff19166001179055565b6000468180806105e286880188610e78565b925092509250600161061f30868c8c6040516020016106049493929190610eb1565b60405160208183030381529060405280519060200120610b05565b8484846040516000815260200160405260405161063f9493929190610f3d565b6020604051602081039080840390855afa158015610661573d6000803e3d6000fd5b5050604051601f1901519a9950505050505050505050565b6003818154811061068957600080fd5b600091825260209091200154905081565b600581565b60016020526000908152604090205460ff1681565b838383836040518060400160405280601181526020017007472616e736665724f776e65727368697607c1b8152506106eb3361025f565b6107075760405162461bcd60e51b815260040161023790610f7e565b6000610715868686866105d0565b90506001600160a01b038116331480159061073457506107348161025f565b801561074857506001600160a01b03811615155b6107645760405162461bcd60e51b815260040161023790610fb6565b60008080610774888a018a610cdb565b50600082815260016020526040902054929550909350915060ff161580156107ae5750845160208601206001600160e01b03198481169116145b6107ca5760405162461bcd60e51b815260040161023790611010565b4281116107e95760405162461bcd60e51b815260040161023790610f9a565b60008281526001602081905260408220805460ff191690911790556108108d8f018f610cdb565b935050505060008180602001905181019061082b9190610c19565b90506000805b60005481101561087957336001600160a01b03166000828154811061085257fe5b6000918252602090912001546001600160a01b03161415610871578091505b600101610831565b50600080828154811061088857fe5b600091825260208220015481546001600160a01b039091169250849190849081106108af57fe5b6000918252602082200180546001600160a01b0319166001600160a01b03938416179055604051858316928416917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35050505050505050505050505050505050565b8383838360405180604001604052806011815260200170736574436173684261636b456e61626c6560781b81525061094a3361025f565b6109665760405162461bcd60e51b815260040161023790610f7e565b6000610974868686866105d0565b90506001600160a01b038116331480159061099357506109938161025f565b80156109a757506001600160a01b03811615155b6109c35760405162461bcd60e51b815260040161023790610fb6565b600080806109d3888a018a610cdb565b50600082815260016020526040902054929550909350915060ff16158015610a0d5750845160208601206001600160e01b03198481169116145b610a295760405162461bcd60e51b815260040161023790611010565b428111610a485760405162461bcd60e51b815260040161023790610f9a565b60008281526001602081905260408220805460ff19169091179055610a6f8d8f018f610cdb565b9350505050600081806020019051810190610a8a9190610cbb565b6002805461ff001916610100831515810291909117918290556040519293507f214d02c1b861e9a89ac8c743416df18ebd2388e6c9da90721d995cfecf3970e592610ade9260ff9290049190911690610f29565b60405180910390a1505050505050505050505050505050565b600254610100900460ff1681565b600081604051602001610b189190610ee4565b604051602081830303815290604052805190602001209050919050565b828054828255906000526020600020908101928215610b8a579160200282015b82811115610b8a57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190610b55565b50610b96929150610b9a565b5090565b5b80821115610b965760008155600101610b9b565b60008083601f840112610bc0578182fd5b50813567ffffffffffffffff811115610bd7578182fd5b602083019150836020828501011115610bef57600080fd5b9250929050565b600060208284031215610c07578081fd5b8135610c128161105f565b9392505050565b600060208284031215610c2a578081fd5b8151610c128161105f565b600060608284031215610c46578081fd5b82601f830112610c54578081fd5b6040516060810181811067ffffffffffffffff82111715610c7157fe5b604052808360608101861015610c85578384fd5b835b6003811015610cb0578135610c9b8161105f565b83526020928301929190910190600101610c87565b509195945050505050565b600060208284031215610ccc578081fd5b81518015158114610c12578182fd5b60008060008060808587031215610cf0578283fd5b84356001600160e01b031981168114610d07578384fd5b9350602085810135935060408601359250606086013567ffffffffffffffff80821115610d32578384fd5b818801915088601f830112610d45578384fd5b813581811115610d5157fe5b610d63601f8201601f1916850161103b565b91508082528984828501011115610d78578485fd5b8084840185840137810190920192909252939692955090935050565b60008060208385031215610da6578182fd5b823567ffffffffffffffff811115610dbc578283fd5b610dc885828601610baf565b90969095509350505050565b60008060008060408587031215610de9578384fd5b843567ffffffffffffffff80821115610e00578586fd5b610e0c88838901610baf565b90965094506020870135915080821115610e24578384fd5b50610e3187828801610baf565b95989497509550505050565b600060208284031215610e4e578081fd5b5035919050565b60008060408385031215610e67578182fd5b505080516020909101519092909150565b600080600060608486031215610e8c578283fd5b833560ff81168114610e9c578384fd5b95602085013595506040909401359392505050565b60006bffffffffffffffffffffffff198660601b1682528460148301528284603484013791016034019081529392505050565b7f19457468657265756d205369676e6564204d6573736167653a0a3332000000008152601c810191909152603c0190565b6001600160a01b0391909116815260200190565b901515815260200190565b90815260200190565b93845260ff9290921660208401526040830152606082015260800190565b6020808252600990820152686c6576656c203e203560b81b604082015260600190565b60208082526002908201526137b760f11b604082015260600190565b602080825260029082015261065760f41b604082015260600190565b602080825260029082015261697360f01b604082015260600190565b6020808252600890820152676c6576656c3c3d3560c01b604082015260600190565b602080825260029082015261616960f01b604082015260600190565b60208082526003908201526273727560e81b604082015260600190565b918252602082015260400190565b60405181810167ffffffffffffffff8111828210171561105757fe5b604052919050565b6001600160a01b038116811461107457600080fd5b5056fea164736f6c6343000706000a
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000008b1fc2b48e5871354af138b7909e9d1a04a89dd
-----Decoded View---------------
Arg [0] : _cardContract (address): 0x08B1fC2B48e5871354AF138B7909E9d1a04A89DD
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000008b1fc2b48e5871354af138b7909e9d1a04a89dd
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.