Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 2,319 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Redeem Mult | 13100403 | 1142 days ago | IN | 0 ETH | 0.00171412 | ||||
Redeem Mult | 13099498 | 1142 days ago | IN | 0 ETH | 0.00146403 | ||||
Redeem Mult | 13063993 | 1147 days ago | IN | 0 ETH | 0.00103319 | ||||
Redeem Mult | 13059082 | 1148 days ago | IN | 0 ETH | 0.00354763 | ||||
Redeem Mult | 13059082 | 1148 days ago | IN | 0 ETH | 0.00354763 | ||||
Redeem Mult | 13052108 | 1149 days ago | IN | 0 ETH | 0.00115295 | ||||
Redeem Mult | 13051758 | 1149 days ago | IN | 0 ETH | 0.00963517 | ||||
Redeem Mult | 13051735 | 1149 days ago | IN | 0 ETH | 0.3930411 | ||||
Redeem Mult | 13051726 | 1149 days ago | IN | 0 ETH | 0.35832362 | ||||
Redeem Mult | 13051715 | 1149 days ago | IN | 0 ETH | 0.00823406 | ||||
Redeem Mult | 13051677 | 1149 days ago | IN | 0 ETH | 0.00921649 | ||||
Redeem Mult | 13051668 | 1149 days ago | IN | 0 ETH | 0.00087216 | ||||
Redeem Mult | 13051650 | 1149 days ago | IN | 0 ETH | 0.00117119 | ||||
Redeem Mult | 13051648 | 1149 days ago | IN | 0 ETH | 0.10949608 | ||||
Redeem Mult | 13051645 | 1149 days ago | IN | 0 ETH | 0.00103473 | ||||
Redeem Mult | 13051619 | 1149 days ago | IN | 0 ETH | 0.01035565 | ||||
Redeem Mult | 13051595 | 1149 days ago | IN | 0 ETH | 0.00113566 | ||||
Redeem Mult | 13051581 | 1149 days ago | IN | 0 ETH | 0.00084724 | ||||
Redeem Mult | 13051574 | 1149 days ago | IN | 0 ETH | 0.00878969 | ||||
Redeem Mult | 13051572 | 1149 days ago | IN | 0 ETH | 0.00099612 | ||||
Redeem Mult | 13051559 | 1149 days ago | IN | 0 ETH | 0.00893541 | ||||
Redeem Mult | 13051549 | 1149 days ago | IN | 0 ETH | 0.01505657 | ||||
Redeem Mult | 13051524 | 1149 days ago | IN | 0 ETH | 0.00870458 | ||||
Redeem Mult | 13051509 | 1149 days ago | IN | 0 ETH | 0.01269808 | ||||
Redeem Mult | 13051499 | 1149 days ago | IN | 0 ETH | 0.0078943 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
TokenRedeemer
Compiler Version
v0.7.6+commit.7338295f
Optimization Enabled:
No with 0 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: GPL-3.0 pragma solidity 0.7.6; pragma abicoder v2; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; import "@openzeppelin/contracts/math/SafeMath.sol"; import "./ISuper1155.sol"; /** @title TokenRedeemer: a contract for redeeming ERC-1155 token claims with optional burns. @author 0xthrpw @author Tim Clancy This contract allows a specific ERC-1155 token of a given group ID to be redeemed or burned in exchange for a new token from a new group in an optionally-new ERC-1155 token contract. */ contract TokenRedeemer is Ownable, ReentrancyGuard { using SafeMath for uint256; /// The smart contract being used in redemptions. ISuper1155 public super1155; /// The address being used as a custom burn address. address public burnAddress; bool public customBurn; /** */ struct RedemptionConfig { uint256 groupIdOut; uint256 amountOut; bool burnOnRedemption; } // groupIdIn => collection out => config mapping (uint256 => mapping(address => RedemptionConfig)) public redemptionConfigs; // collection out => tokenId in => address of redeemer mapping (address => mapping (uint256 => address)) public redeemer; /** */ event TokenRedemption(address indexed user, uint256 indexed tokenIn, address indexed contractOut, uint256[] tokensOut); /** */ event ConfigUpdate(uint256 groupIdIn, uint256 groupIdOut, address tokenOut, uint256 amountOut, bool burnOnRedemption); /** On deployment, set `_super1155` as the collection to redeem, set the burn address as `_burnTarget` and enable use of a custom burn address by setting `_customBurn`. @param _super1155 The item collection for which this contract will allow redemptions. @param _burnTarget The address that will be used for burning tokens. @param _customBurn Whether or not a custom burn address is used. */ constructor(ISuper1155 _super1155, address _burnTarget, bool _customBurn) public { super1155 = _super1155; customBurn = _customBurn; if (customBurn) { require(_burnTarget != address(0), "TokenRedeemer::constructor: Custom burn address cannot be 0 address"); burnAddress = _burnTarget; } } /** Redeem a specific token `_tokenId` for a token from group `_groupIdOut` @param _tokenId The bitpacked 1155 token id @param _tokenOut The address of the token to receive */ function redeem(uint256 _tokenId, address _tokenOut) external nonReentrant { _redeemToken(_tokenId, _tokenOut); } /** Redeem a specific set of tokens `_tokenIds` for a set of token from group `_groupIdOut` @param _tokenIds An array of bitpacked 1155 token ids @param _tokenOut The address of the token to receive */ function redeemMult(uint256[] calldata _tokenIds, address _tokenOut) external nonReentrant { for(uint256 n = 0; n < _tokenIds.length; n++){ _redeemToken(_tokenIds[n], _tokenOut); } } /** Redeem a token for n number of tokens in return. This function parses the tokens group id, determines the appropriate exchange token and amount, if necessary burns the deposited token and mints the receipt token(s) @param _tokenId The bitpacked 1155 token id @param _tokenOut The address of the token being received */ function _redeemToken(uint256 _tokenId, address _tokenOut) internal { uint256 _groupIdIn = _tokenId >> 128; require(redeemer[_tokenOut][_tokenId] == address(0), "TokenRedeemer::redeem: token has already been redeemed for this group" ); RedemptionConfig memory config = redemptionConfigs[_groupIdIn][_tokenOut]; uint256 redemptionAmount = config.amountOut; uint256 groupIdOut = config.groupIdOut; { require(groupIdOut != uint256(0), "TokenRedeemer::redeem: invalid group id from token"); require(redemptionAmount != uint256(0), "TokenRedeemer::redeem: invalid redemption amount"); uint256 balanceOfSender = super1155.balanceOf(_msgSender(), _tokenId); require(balanceOfSender != 0, "TokenRedeemer::redeem: msg sender is not token owner"); } (bool groupInit, , , , , , , , , uint256 mintCount,) = ISuper1155(_tokenOut).itemGroups(groupIdOut); require(groupInit, "TokenRedeemer::redeem: item group not initialized"); uint256[] memory ids = new uint256[](redemptionAmount); uint256[] memory amounts = new uint[](redemptionAmount); uint256 newgroupIdPrep = groupIdOut << 128; for(uint256 i = 0; i < redemptionAmount; i++) { ids[i] = newgroupIdPrep.add(mintCount).add(1).add(i); amounts[i] = uint256(1); } redeemer[_tokenOut][_tokenId] = _msgSender(); if (config.burnOnRedemption) { if (customBurn) { super1155.safeTransferFrom(msg.sender, burnAddress, _tokenId, 1, ""); } else { super1155.burnBatch(msg.sender, _asSingletonArray(_tokenId), _asSingletonArray(1)); } } ISuper1155(_tokenOut).mintBatch(msg.sender, ids, amounts, ""); emit TokenRedemption(msg.sender, _tokenId, _tokenOut, ids); } /** Configure redemption amounts for each group. ONE token of _groupIdin results in _amountOut number of _groupIdOut tokens @param _groupIdIn The group ID of the token being redeemed @param _groupIdIn The group ID of the token being received @param _data The redemption config data input. */ function setRedemptionConfig(uint256 _groupIdIn, uint256 _groupIdOut, address _tokenOut, RedemptionConfig calldata _data) external onlyOwner { redemptionConfigs[_groupIdIn][_tokenOut] = RedemptionConfig({ groupIdOut: _groupIdOut, amountOut: _data.amountOut, burnOnRedemption: _data.burnOnRedemption }); // uint256 groupId; // uint256 amountOut; // bool burnOnRedemption; emit ConfigUpdate(_groupIdIn, _groupIdOut, _tokenOut, _data.amountOut, _data.burnOnRedemption); } /** This private helper function converts a number into a single-element array. @param _element The element to convert to an array. @return The array containing the single `_element`. */ function _asSingletonArray(uint256 _element) private pure returns (uint256[] memory) { uint256[] memory array = new uint256[](1); array[0] = _element; return array; } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; /** * @dev Contract module that helps prevent reentrant calls to a function. * * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier * available, which can be applied to functions to make sure there are no nested * (reentrant) calls to them. * * Note that because there is a single `nonReentrant` guard, functions marked as * `nonReentrant` may not call one another. This can be worked around by making * those functions `private`, and then adding `external` `nonReentrant` entry * points to them. * * TIP: If you would like to learn more about reentrancy and alternative ways * to protect against it, check out our blog post * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul]. */ abstract contract ReentrancyGuard { // Booleans are more expensive than uint256 or any type that takes up a full // word because each write operation emits an extra SLOAD to first read the // slot's contents, replace the bits taken up by the boolean, and then write // back. This is the compiler's defense against contract upgrades and // pointer aliasing, and it cannot be disabled. // The values being non-zero value makes deployment a bit more expensive, // but in exchange the refund on every call to nonReentrant will be lower in // amount. Since refunds are capped to a percentage of the total // transaction's gas, it is best to keep them low in cases like this one, to // increase the likelihood of the full refund coming into effect. uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; uint256 private _status; constructor () internal { _status = _NOT_ENTERED; } /** * @dev Prevents a contract from calling itself, directly or indirectly. * Calling a `nonReentrant` function from another `nonReentrant` * function is not supported. It is possible to prevent this from happening * by making the `nonReentrant` function external, and make it call a * `private` function that does the actual work. */ modifier nonReentrant() { // On the first call to nonReentrant, _notEntered will be true require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to nonReentrant after this point will fail _status = _ENTERED; _; // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) _status = _NOT_ENTERED; } }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } /** * @dev Returns the substraction of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { if (b > a) return (false, 0); return (true, a - b); } /** * @dev Returns the multiplication of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } /** * @dev Returns the division of two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { if (b == 0) return (false, 0); return (true, a / b); } /** * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { if (b == 0) return (false, 0); return (true, a % b); } /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); return a - b; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) return 0; uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers, reverting on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { require(b > 0, "SafeMath: division by zero"); return a / b; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b > 0, "SafeMath: modulo by zero"); return a % b; } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {trySub}. * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); return a - b; } /** * @dev Returns the integer division of two unsigned integers, reverting with custom message on * division by zero. The result is rounded towards zero. * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {tryDiv}. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); return a / b; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting with custom message when dividing by zero. * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {tryMod}. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); return a % b; } }
// SPDX-License-Identifier: GPL-3.0 pragma solidity 0.7.6; interface ISuper1155 { function BURN ( ) external view returns ( bytes32 ); function CONFIGURE_GROUP ( ) external view returns ( bytes32 ); function LOCK_CREATION ( ) external view returns ( bytes32 ); function LOCK_ITEM_URI ( ) external view returns ( bytes32 ); function LOCK_URI ( ) external view returns ( bytes32 ); function MANAGER ( ) external view returns ( bytes32 ); function MINT ( ) external view returns ( bytes32 ); function SET_METADATA ( ) external view returns ( bytes32 ); function SET_PROXY_REGISTRY ( ) external view returns ( bytes32 ); function SET_URI ( ) external view returns ( bytes32 ); function UNIVERSAL ( ) external view returns ( bytes32 ); function ZERO_RIGHT ( ) external view returns ( bytes32 ); function balanceOf ( address _owner, uint256 _id ) external view returns ( uint256 ); function balanceOfBatch ( address[] memory _owners, uint256[] memory _ids ) external view returns ( uint256[] memory ); function burn ( address _burner, uint256 _id, uint256 _amount ) external; function burnBatch ( address _burner, uint256[] memory _ids, uint256[] memory _amounts ) external; function burnCount ( uint256 ) external view returns ( uint256 ); function circulatingSupply ( uint256 ) external view returns ( uint256 ); function configureGroup ( uint256 _groupId, bytes calldata _data ) external; function groupBalances ( uint256, address ) external view returns ( uint256 ); function hasRightUntil ( address _address, bytes32 _circumstance, bytes32 _right ) external view returns ( uint256 ); function isApprovedForAll ( address _owner, address _operator ) external view returns ( bool ); function itemGroups ( uint256 ) external view returns ( bool initialized, string memory _name, uint8 supplyType, uint256 supplyData, uint8 itemType, uint256 itemData, uint8 burnType, uint256 burnData, uint256 _circulatingSupply, uint256 _mintCount, uint256 _burnCount ); function lock ( ) external; function lockURI ( string memory _uri, uint256 _id ) external; function lockURI ( string memory _uri ) external; function locked ( ) external view returns ( bool ); function managerRight ( bytes32 ) external view returns ( bytes32 ); function metadata ( uint256 ) external view returns ( string memory ); function metadataFrozen ( uint256 ) external view returns ( bool ); function metadataUri ( ) external view returns ( string memory ); function mintBatch ( address _recipient, uint256[] memory _ids, uint256[] memory _amounts, bytes memory _data ) external; function mintCount ( uint256 ) external view returns ( uint256 ); function name ( ) external view returns ( string memory ); function owner ( ) external view returns ( address ); function permissions ( address, bytes32, bytes32 ) external view returns ( uint256 ); function proxyRegistryAddress ( ) external view returns ( address ); function renounceOwnership ( ) external; function safeBatchTransferFrom ( address _from, address _to, uint256[] memory _ids, uint256[] memory _amounts, bytes memory _data ) external; function safeTransferFrom ( address _from, address _to, uint256 _id, uint256 _amount, bytes memory _data ) external; function setApprovalForAll ( address _operator, bool _approved ) external; function setManagerRight ( bytes32 _managedRight, bytes32 _managerRight ) external; function setMetadata ( uint256 _id, string memory _metadata ) external; function setPermit ( address _address, bytes32 _circumstance, bytes32 _right, uint256 _expirationTime ) external; function setProxyRegistry ( address _proxyRegistryAddress ) external; function setURI ( string memory _uri ) external; function supportsInterface ( bytes4 interfaceId ) external view returns ( bool ); function totalBalances ( address ) external view returns ( uint256 ); function transferOwnership ( address newOwner ) external; function uri ( uint256 ) external view returns ( string memory ); function uriLocked ( ) external view returns ( bool ); function version ( ) external view returns ( uint256 ); }
// SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with GSN meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } }
{ "optimizer": { "enabled": false, "runs": 0 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract ISuper1155","name":"_super1155","type":"address"},{"internalType":"address","name":"_burnTarget","type":"address"},{"internalType":"bool","name":"_customBurn","type":"bool"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"groupIdIn","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"groupIdOut","type":"uint256"},{"indexed":false,"internalType":"address","name":"tokenOut","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountOut","type":"uint256"},{"indexed":false,"internalType":"bool","name":"burnOnRedemption","type":"bool"}],"name":"ConfigUpdate","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":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenIn","type":"uint256"},{"indexed":true,"internalType":"address","name":"contractOut","type":"address"},{"indexed":false,"internalType":"uint256[]","name":"tokensOut","type":"uint256[]"}],"name":"TokenRedemption","type":"event"},{"inputs":[],"name":"burnAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"customBurn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tokenId","type":"uint256"},{"internalType":"address","name":"_tokenOut","type":"address"}],"name":"redeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"_tokenIds","type":"uint256[]"},{"internalType":"address","name":"_tokenOut","type":"address"}],"name":"redeemMult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"redeemer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"address","name":"","type":"address"}],"name":"redemptionConfigs","outputs":[{"internalType":"uint256","name":"groupIdOut","type":"uint256"},{"internalType":"uint256","name":"amountOut","type":"uint256"},{"internalType":"bool","name":"burnOnRedemption","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_groupIdIn","type":"uint256"},{"internalType":"uint256","name":"_groupIdOut","type":"uint256"},{"internalType":"address","name":"_tokenOut","type":"address"},{"components":[{"internalType":"uint256","name":"groupIdOut","type":"uint256"},{"internalType":"uint256","name":"amountOut","type":"uint256"},{"internalType":"bool","name":"burnOnRedemption","type":"bool"}],"internalType":"struct TokenRedeemer.RedemptionConfig","name":"_data","type":"tuple"}],"name":"setRedemptionConfig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"super1155","outputs":[{"internalType":"contract ISuper1155","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b50604051620023123803806200231283398181016040528101906200003791906200026a565b6000620000496200021d60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506001808190555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600360146101000a81548160ff021916908315150217905550600360149054906101000a900460ff16156200021457600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620001d2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001c9906200034e565b60405180910390fd5b81600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50505062000423565b600033905090565b6000815190506200023681620003d5565b92915050565b6000815190506200024d81620003ef565b92915050565b600081519050620002648162000409565b92915050565b6000806000606084860312156200028057600080fd5b6000620002908682870162000253565b9350506020620002a38682870162000225565b9250506040620002b6868287016200023c565b9150509250925092565b6000620002cf60438362000370565b91507f546f6b656e52656465656d65723a3a636f6e7374727563746f723a204375737460008301527f6f6d206275726e20616464726573732063616e6e6f742062652030206164647260208301527f65737300000000000000000000000000000000000000000000000000000000006040830152606082019050919050565b600060208201905081810360008301526200036981620002c0565b9050919050565b600082825260208201905092915050565b60006200038e82620003b5565b9050919050565b60008115159050919050565b6000620003ae8262000381565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b620003e08162000381565b8114620003ec57600080fd5b50565b620003fa8162000395565b81146200040657600080fd5b50565b6200041481620003a1565b81146200042057600080fd5b50565b611edf80620004336000396000f3fe608060405234801561001057600080fd5b50600436106100995760003560e01c806332e1b2f61461009e57806370d5ae05146100bc578063715018a6146100da5780637bde82f2146100e4578063852c9aad146101005780638da5cb5b14610130578063a874fb3a1461014e578063c4a4cb461461016c578063d445742714610188578063f2fde38b146101a4578063ff763aa3146101c0575b600080fd5b6100a66101f2565b6040516100b39190611b15565b60405180910390f35b6100c4610218565b6040516100d1919061199f565b60405180910390f35b6100e261023e565b005b6100fe60048036038101906100f991906115e3565b6103ab565b005b61011a600480360381019061011591906113f5565b610441565b604051610127919061199f565b60405180910390f35b610138610483565b604051610145919061199f565b60405180910390f35b6101566104ac565b6040516101639190611afa565b60405180910390f35b61018660048036038101906101819190611431565b6104bf565b005b6101a2600480360381019061019d919061161f565b610584565b005b6101be60048036038101906101b991906113cc565b610748565b005b6101da60048036038101906101d591906115e3565b61093a565b6040516101e993929190611c3e565b60405180910390f35b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61024661097e565b73ffffffffffffffffffffffffffffffffffffffff16610264610483565b73ffffffffffffffffffffffffffffffffffffffff16146102ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60026001541415610424576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b60026001819055506104368282610986565b600180819055505050565b60056020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600360149054906101000a900460ff1681565b60026001541415610538576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b600260018190555060005b838390508110156105775761056a84848381811061055d57fe5b9050602002013583610986565b8080600101915050610543565b5060018081905550505050565b61058c61097e565b73ffffffffffffffffffffffffffffffffffffffff166105aa610483565b73ffffffffffffffffffffffffffffffffffffffff1614610633576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6040518060600160405280848152602001826020013581526020018260400160208101906106619190611489565b15158152506004600086815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050507f292652a06bc910d6578da7e2f3aa26521c45f0893566854696f95ed9b2ca291684848484602001358560400160208101906107299190611489565b60405161073a959493929190611beb565b60405180910390a150505050565b61075061097e565b73ffffffffffffffffffffffffffffffffffffffff1661076e610483565b73ffffffffffffffffffffffffffffffffffffffff16146107f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561087d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611e846026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6004602052816000526040600020602052806000526040600020600091509150508060000154908060010154908060020160009054906101000a900460ff16905083565b600033905090565b6000608083901c9050600073ffffffffffffffffffffffffffffffffffffffff16600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6590611b70565b60405180910390fd5b60006004600083815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060405180606001604052908160008201548152602001600182015481526020016002820160009054906101000a900460ff16151515158152505090506000816020015190506000826000015190506000811415610b52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4990611b50565b60405180910390fd5b6000821415610b96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8d90611b30565b60405180910390fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1662fdd58e610bdd61097e565b896040518363ffffffff1660e01b8152600401610bfb929190611aaf565b60206040518083038186803b158015610c1357600080fd5b505afa158015610c27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4b91906115ba565b90506000811415610c91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8890611b90565b60405180910390fd5b506000808673ffffffffffffffffffffffffffffffffffffffff16638c2a4c4f846040518263ffffffff1660e01b8152600401610cce9190611bd0565b60006040518083038186803b158015610ce657600080fd5b505afa158015610cfa573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d2391906114b2565b5099505050505050505050915081610d70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6790611bb0565b60405180910390fd5b60008467ffffffffffffffff81118015610d8957600080fd5b50604051908082528060200260200182016040528015610db85781602001602082028036833780820191505090505b50905060008567ffffffffffffffff81118015610dd457600080fd5b50604051908082528060200260200182016040528015610e035781602001602082028036833780820191505090505b5090506000608086901b905060005b87811015610e9157610e5281610e446001610e36898761118890919063ffffffff16565b61118890919063ffffffff16565b61118890919063ffffffff16565b848281518110610e5e57fe5b6020026020010181815250506001838281518110610e7857fe5b6020026020010181815250508080600101915050610e12565b50610e9a61097e565b600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008d815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508760400151156110a657600360149054906101000a900460ff161561100257600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f242432a33600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168e60016040518563ffffffff1660e01b8152600401610fcb94939291906119ba565b600060405180830381600087803b158015610fe557600080fd5b505af1158015610ff9573d6000803e3d6000fd5b505050506110a5565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636b20c4543361104a8e611210565b6110546001611210565b6040518463ffffffff1660e01b815260040161107293929190611a12565b600060405180830381600087803b15801561108c57600080fd5b505af11580156110a0573d6000803e3d6000fd5b505050505b5b8973ffffffffffffffffffffffffffffffffffffffff16631f7fdffa3385856040518463ffffffff1660e01b81526004016110e393929190611a57565b600060405180830381600087803b1580156110fd57600080fd5b505af1158015611111573d6000803e3d6000fd5b505050508973ffffffffffffffffffffffffffffffffffffffff168b3373ffffffffffffffffffffffffffffffffffffffff167fe45a603aad170ef7660bfbe1d99644866b76bec4b22461b5d7ab6e4960931183866040516111739190611ad8565b60405180910390a45050505050505050505050565b600080828401905083811015611206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60606000600167ffffffffffffffff8111801561122c57600080fd5b5060405190808252806020026020018201604052801561125b5781602001602082028036833780820191505090505b509050828160008151811061126c57fe5b60200260200101818152505080915050919050565b600061129461128f84611ca6565b611c75565b9050828152602081018484840111156112ac57600080fd5b6112b7848285611df2565b509392505050565b6000813590506112ce81611e27565b92915050565b60008083601f8401126112e657600080fd5b8235905067ffffffffffffffff8111156112ff57600080fd5b60208301915083602082028301111561131757600080fd5b9250929050565b60008135905061132d81611e3e565b92915050565b60008151905061134281611e3e565b92915050565b600082601f83011261135957600080fd5b8151611369848260208601611281565b91505092915050565b60006060828403121561138457600080fd5b81905092915050565b60008135905061139c81611e55565b92915050565b6000815190506113b181611e55565b92915050565b6000815190506113c681611e6c565b92915050565b6000602082840312156113de57600080fd5b60006113ec848285016112bf565b91505092915050565b6000806040838503121561140857600080fd5b6000611416858286016112bf565b92505060206114278582860161138d565b9150509250929050565b60008060006040848603121561144657600080fd5b600084013567ffffffffffffffff81111561146057600080fd5b61146c868287016112d4565b9350935050602061147f868287016112bf565b9150509250925092565b60006020828403121561149b57600080fd5b60006114a98482850161131e565b91505092915050565b60008060008060008060008060008060006101608c8e0312156114d457600080fd5b60006114e28e828f01611333565b9b505060208c015167ffffffffffffffff8111156114ff57600080fd5b61150b8e828f01611348565b9a5050604061151c8e828f016113b7565b995050606061152d8e828f016113a2565b985050608061153e8e828f016113b7565b97505060a061154f8e828f016113a2565b96505060c06115608e828f016113b7565b95505060e06115718e828f016113a2565b9450506101006115838e828f016113a2565b9350506101206115958e828f016113a2565b9250506101406115a78e828f016113a2565b9150509295989b509295989b9093969950565b6000602082840312156115cc57600080fd5b60006115da848285016113a2565b91505092915050565b600080604083850312156115f657600080fd5b60006116048582860161138d565b9250506020611615858286016112bf565b9150509250929050565b60008060008060c0858703121561163557600080fd5b60006116438782880161138d565b94505060206116548782880161138d565b9350506040611665878288016112bf565b925050606061167687828801611372565b91505092959194509250565b600061168e8383611981565b60208301905092915050565b6116a381611d86565b82525050565b6116b281611d31565b82525050565b60006116c382611ce6565b6116cd8185611cfe565b93506116d883611cd6565b8060005b838110156117095781516116f08882611682565b97506116fb83611cf1565b9250506001810190506116dc565b5085935050505092915050565b61171f81611d43565b82525050565b61172e81611d98565b82525050565b61173d81611dbc565b82525050565b6000611750603083611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a20696e76616c6964207260008301527f6564656d7074696f6e20616d6f756e74000000000000000000000000000000006020830152604082019050919050565b60006117b6603283611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a20696e76616c6964206760008301527f726f75702069642066726f6d20746f6b656e00000000000000000000000000006020830152604082019050919050565b600061181c604583611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a20746f6b656e2068617360008301527f20616c7265616479206265656e2072656465656d656420666f7220746869732060208301527f67726f75700000000000000000000000000000000000000000000000000000006040830152606082019050919050565b60006118a8603483611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a206d73672073656e646560008301527f72206973206e6f7420746f6b656e206f776e65720000000000000000000000006020830152604082019050919050565b600061190e600083611d0f565b9150600082019050919050565b6000611928603183611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a206974656d2067726f7560008301527f70206e6f7420696e697469616c697a65640000000000000000000000000000006020830152604082019050919050565b61198a81611d6f565b82525050565b61199981611d6f565b82525050565b60006020820190506119b460008301846116a9565b92915050565b600060a0820190506119cf600083018761169a565b6119dc60208301866116a9565b6119e96040830185611990565b6119f66060830184611734565b8181036080830152611a0781611901565b905095945050505050565b6000606082019050611a27600083018661169a565b8181036020830152611a3981856116b8565b90508181036040830152611a4d81846116b8565b9050949350505050565b6000608082019050611a6c600083018661169a565b8181036020830152611a7e81856116b8565b90508181036040830152611a9281846116b8565b90508181036060830152611aa581611901565b9050949350505050565b6000604082019050611ac4600083018561169a565b611ad16020830184611990565b9392505050565b60006020820190508181036000830152611af281846116b8565b905092915050565b6000602082019050611b0f6000830184611716565b92915050565b6000602082019050611b2a6000830184611725565b92915050565b60006020820190508181036000830152611b4981611743565b9050919050565b60006020820190508181036000830152611b69816117a9565b9050919050565b60006020820190508181036000830152611b898161180f565b9050919050565b60006020820190508181036000830152611ba98161189b565b9050919050565b60006020820190508181036000830152611bc98161191b565b9050919050565b6000602082019050611be56000830184611990565b92915050565b600060a082019050611c006000830188611990565b611c0d6020830187611990565b611c1a60408301866116a9565b611c276060830185611990565b611c346080830184611716565b9695505050505050565b6000606082019050611c536000830186611990565b611c606020830185611990565b611c6d6040830184611716565b949350505050565b6000604051905081810181811067ffffffffffffffff82111715611c9c57611c9b611e25565b5b8060405250919050565b600067ffffffffffffffff821115611cc157611cc0611e25565b5b601f19601f8301169050602081019050919050565b6000819050602082019050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611d3c82611d4f565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000611d9182611dce565b9050919050565b6000611da382611daa565b9050919050565b6000611db582611d4f565b9050919050565b6000611dc782611d6f565b9050919050565b6000611dd982611de0565b9050919050565b6000611deb82611d4f565b9050919050565b60005b83811015611e10578082015181840152602081019050611df5565b83811115611e1f576000848401525b50505050565bfe5b611e3081611d31565b8114611e3b57600080fd5b50565b611e4781611d43565b8114611e5257600080fd5b50565b611e5e81611d6f565b8114611e6957600080fd5b50565b611e7581611d79565b8114611e8057600080fd5b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a2646970667358221220c1d9ac8d854374e22f27a26d7f001ab15a47a8bd5c1e3a07d33a13574d23196664736f6c6343000706003300000000000000000000000071b11ac923c967cd5998f23f6dae0d779a6ac8af00000000000000000000000000000000000000000000000000000000deadbeef0000000000000000000000000000000000000000000000000000000000000001
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100995760003560e01c806332e1b2f61461009e57806370d5ae05146100bc578063715018a6146100da5780637bde82f2146100e4578063852c9aad146101005780638da5cb5b14610130578063a874fb3a1461014e578063c4a4cb461461016c578063d445742714610188578063f2fde38b146101a4578063ff763aa3146101c0575b600080fd5b6100a66101f2565b6040516100b39190611b15565b60405180910390f35b6100c4610218565b6040516100d1919061199f565b60405180910390f35b6100e261023e565b005b6100fe60048036038101906100f991906115e3565b6103ab565b005b61011a600480360381019061011591906113f5565b610441565b604051610127919061199f565b60405180910390f35b610138610483565b604051610145919061199f565b60405180910390f35b6101566104ac565b6040516101639190611afa565b60405180910390f35b61018660048036038101906101819190611431565b6104bf565b005b6101a2600480360381019061019d919061161f565b610584565b005b6101be60048036038101906101b991906113cc565b610748565b005b6101da60048036038101906101d591906115e3565b61093a565b6040516101e993929190611c3e565b60405180910390f35b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61024661097e565b73ffffffffffffffffffffffffffffffffffffffff16610264610483565b73ffffffffffffffffffffffffffffffffffffffff16146102ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60026001541415610424576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b60026001819055506104368282610986565b600180819055505050565b60056020528160005260406000206020528060005260406000206000915091509054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600360149054906101000a900460ff1681565b60026001541415610538576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b600260018190555060005b838390508110156105775761056a84848381811061055d57fe5b9050602002013583610986565b8080600101915050610543565b5060018081905550505050565b61058c61097e565b73ffffffffffffffffffffffffffffffffffffffff166105aa610483565b73ffffffffffffffffffffffffffffffffffffffff1614610633576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6040518060600160405280848152602001826020013581526020018260400160208101906106619190611489565b15158152506004600086815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff0219169083151502179055509050507f292652a06bc910d6578da7e2f3aa26521c45f0893566854696f95ed9b2ca291684848484602001358560400160208101906107299190611489565b60405161073a959493929190611beb565b60405180910390a150505050565b61075061097e565b73ffffffffffffffffffffffffffffffffffffffff1661076e610483565b73ffffffffffffffffffffffffffffffffffffffff16146107f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561087d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611e846026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6004602052816000526040600020602052806000526040600020600091509150508060000154908060010154908060020160009054906101000a900460ff16905083565b600033905090565b6000608083901c9050600073ffffffffffffffffffffffffffffffffffffffff16600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6590611b70565b60405180910390fd5b60006004600083815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060405180606001604052908160008201548152602001600182015481526020016002820160009054906101000a900460ff16151515158152505090506000816020015190506000826000015190506000811415610b52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4990611b50565b60405180910390fd5b6000821415610b96576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8d90611b30565b60405180910390fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1662fdd58e610bdd61097e565b896040518363ffffffff1660e01b8152600401610bfb929190611aaf565b60206040518083038186803b158015610c1357600080fd5b505afa158015610c27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4b91906115ba565b90506000811415610c91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8890611b90565b60405180910390fd5b506000808673ffffffffffffffffffffffffffffffffffffffff16638c2a4c4f846040518263ffffffff1660e01b8152600401610cce9190611bd0565b60006040518083038186803b158015610ce657600080fd5b505afa158015610cfa573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610d2391906114b2565b5099505050505050505050915081610d70576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6790611bb0565b60405180910390fd5b60008467ffffffffffffffff81118015610d8957600080fd5b50604051908082528060200260200182016040528015610db85781602001602082028036833780820191505090505b50905060008567ffffffffffffffff81118015610dd457600080fd5b50604051908082528060200260200182016040528015610e035781602001602082028036833780820191505090505b5090506000608086901b905060005b87811015610e9157610e5281610e446001610e36898761118890919063ffffffff16565b61118890919063ffffffff16565b61118890919063ffffffff16565b848281518110610e5e57fe5b6020026020010181815250506001838281518110610e7857fe5b6020026020010181815250508080600101915050610e12565b50610e9a61097e565b600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008d815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508760400151156110a657600360149054906101000a900460ff161561100257600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f242432a33600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168e60016040518563ffffffff1660e01b8152600401610fcb94939291906119ba565b600060405180830381600087803b158015610fe557600080fd5b505af1158015610ff9573d6000803e3d6000fd5b505050506110a5565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636b20c4543361104a8e611210565b6110546001611210565b6040518463ffffffff1660e01b815260040161107293929190611a12565b600060405180830381600087803b15801561108c57600080fd5b505af11580156110a0573d6000803e3d6000fd5b505050505b5b8973ffffffffffffffffffffffffffffffffffffffff16631f7fdffa3385856040518463ffffffff1660e01b81526004016110e393929190611a57565b600060405180830381600087803b1580156110fd57600080fd5b505af1158015611111573d6000803e3d6000fd5b505050508973ffffffffffffffffffffffffffffffffffffffff168b3373ffffffffffffffffffffffffffffffffffffffff167fe45a603aad170ef7660bfbe1d99644866b76bec4b22461b5d7ab6e4960931183866040516111739190611ad8565b60405180910390a45050505050505050505050565b600080828401905083811015611206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60606000600167ffffffffffffffff8111801561122c57600080fd5b5060405190808252806020026020018201604052801561125b5781602001602082028036833780820191505090505b509050828160008151811061126c57fe5b60200260200101818152505080915050919050565b600061129461128f84611ca6565b611c75565b9050828152602081018484840111156112ac57600080fd5b6112b7848285611df2565b509392505050565b6000813590506112ce81611e27565b92915050565b60008083601f8401126112e657600080fd5b8235905067ffffffffffffffff8111156112ff57600080fd5b60208301915083602082028301111561131757600080fd5b9250929050565b60008135905061132d81611e3e565b92915050565b60008151905061134281611e3e565b92915050565b600082601f83011261135957600080fd5b8151611369848260208601611281565b91505092915050565b60006060828403121561138457600080fd5b81905092915050565b60008135905061139c81611e55565b92915050565b6000815190506113b181611e55565b92915050565b6000815190506113c681611e6c565b92915050565b6000602082840312156113de57600080fd5b60006113ec848285016112bf565b91505092915050565b6000806040838503121561140857600080fd5b6000611416858286016112bf565b92505060206114278582860161138d565b9150509250929050565b60008060006040848603121561144657600080fd5b600084013567ffffffffffffffff81111561146057600080fd5b61146c868287016112d4565b9350935050602061147f868287016112bf565b9150509250925092565b60006020828403121561149b57600080fd5b60006114a98482850161131e565b91505092915050565b60008060008060008060008060008060006101608c8e0312156114d457600080fd5b60006114e28e828f01611333565b9b505060208c015167ffffffffffffffff8111156114ff57600080fd5b61150b8e828f01611348565b9a5050604061151c8e828f016113b7565b995050606061152d8e828f016113a2565b985050608061153e8e828f016113b7565b97505060a061154f8e828f016113a2565b96505060c06115608e828f016113b7565b95505060e06115718e828f016113a2565b9450506101006115838e828f016113a2565b9350506101206115958e828f016113a2565b9250506101406115a78e828f016113a2565b9150509295989b509295989b9093969950565b6000602082840312156115cc57600080fd5b60006115da848285016113a2565b91505092915050565b600080604083850312156115f657600080fd5b60006116048582860161138d565b9250506020611615858286016112bf565b9150509250929050565b60008060008060c0858703121561163557600080fd5b60006116438782880161138d565b94505060206116548782880161138d565b9350506040611665878288016112bf565b925050606061167687828801611372565b91505092959194509250565b600061168e8383611981565b60208301905092915050565b6116a381611d86565b82525050565b6116b281611d31565b82525050565b60006116c382611ce6565b6116cd8185611cfe565b93506116d883611cd6565b8060005b838110156117095781516116f08882611682565b97506116fb83611cf1565b9250506001810190506116dc565b5085935050505092915050565b61171f81611d43565b82525050565b61172e81611d98565b82525050565b61173d81611dbc565b82525050565b6000611750603083611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a20696e76616c6964207260008301527f6564656d7074696f6e20616d6f756e74000000000000000000000000000000006020830152604082019050919050565b60006117b6603283611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a20696e76616c6964206760008301527f726f75702069642066726f6d20746f6b656e00000000000000000000000000006020830152604082019050919050565b600061181c604583611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a20746f6b656e2068617360008301527f20616c7265616479206265656e2072656465656d656420666f7220746869732060208301527f67726f75700000000000000000000000000000000000000000000000000000006040830152606082019050919050565b60006118a8603483611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a206d73672073656e646560008301527f72206973206e6f7420746f6b656e206f776e65720000000000000000000000006020830152604082019050919050565b600061190e600083611d0f565b9150600082019050919050565b6000611928603183611d20565b91507f546f6b656e52656465656d65723a3a72656465656d3a206974656d2067726f7560008301527f70206e6f7420696e697469616c697a65640000000000000000000000000000006020830152604082019050919050565b61198a81611d6f565b82525050565b61199981611d6f565b82525050565b60006020820190506119b460008301846116a9565b92915050565b600060a0820190506119cf600083018761169a565b6119dc60208301866116a9565b6119e96040830185611990565b6119f66060830184611734565b8181036080830152611a0781611901565b905095945050505050565b6000606082019050611a27600083018661169a565b8181036020830152611a3981856116b8565b90508181036040830152611a4d81846116b8565b9050949350505050565b6000608082019050611a6c600083018661169a565b8181036020830152611a7e81856116b8565b90508181036040830152611a9281846116b8565b90508181036060830152611aa581611901565b9050949350505050565b6000604082019050611ac4600083018561169a565b611ad16020830184611990565b9392505050565b60006020820190508181036000830152611af281846116b8565b905092915050565b6000602082019050611b0f6000830184611716565b92915050565b6000602082019050611b2a6000830184611725565b92915050565b60006020820190508181036000830152611b4981611743565b9050919050565b60006020820190508181036000830152611b69816117a9565b9050919050565b60006020820190508181036000830152611b898161180f565b9050919050565b60006020820190508181036000830152611ba98161189b565b9050919050565b60006020820190508181036000830152611bc98161191b565b9050919050565b6000602082019050611be56000830184611990565b92915050565b600060a082019050611c006000830188611990565b611c0d6020830187611990565b611c1a60408301866116a9565b611c276060830185611990565b611c346080830184611716565b9695505050505050565b6000606082019050611c536000830186611990565b611c606020830185611990565b611c6d6040830184611716565b949350505050565b6000604051905081810181811067ffffffffffffffff82111715611c9c57611c9b611e25565b5b8060405250919050565b600067ffffffffffffffff821115611cc157611cc0611e25565b5b601f19601f8301169050602081019050919050565b6000819050602082019050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611d3c82611d4f565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000611d9182611dce565b9050919050565b6000611da382611daa565b9050919050565b6000611db582611d4f565b9050919050565b6000611dc782611d6f565b9050919050565b6000611dd982611de0565b9050919050565b6000611deb82611d4f565b9050919050565b60005b83811015611e10578082015181840152602081019050611df5565b83811115611e1f576000848401525b50505050565bfe5b611e3081611d31565b8114611e3b57600080fd5b50565b611e4781611d43565b8114611e5257600080fd5b50565b611e5e81611d6f565b8114611e6957600080fd5b50565b611e7581611d79565b8114611e8057600080fd5b5056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373a2646970667358221220c1d9ac8d854374e22f27a26d7f001ab15a47a8bd5c1e3a07d33a13574d23196664736f6c63430007060033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000071b11ac923c967cd5998f23f6dae0d779a6ac8af00000000000000000000000000000000000000000000000000000000deadbeef0000000000000000000000000000000000000000000000000000000000000001
-----Decoded View---------------
Arg [0] : _super1155 (address): 0x71B11Ac923C967CD5998F23F6dae0d779A6ac8Af
Arg [1] : _burnTarget (address): 0x00000000000000000000000000000000DeaDBeef
Arg [2] : _customBurn (bool): True
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000071b11ac923c967cd5998f23f6dae0d779a6ac8af
Arg [1] : 00000000000000000000000000000000000000000000000000000000deadbeef
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000001
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 27 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ 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.